Main Content

open_system

Open model, library, subsystem, or block dialog box

Description

example

open_system(obj) opens the specified model, library, subsystem, or block. This is equivalent to double-clicking the model or library in the Current Folder Browser, or the subsystem or block in the Simulink® Editor.

A model or library opens in a new window. For a subsystem or block within a model, the behavior depends on the type of block and its properties.

  • Any OpenFcn callback parameter is evaluated.

  • If there is no OpenFcn callback, and a mask is defined, the mask parameter dialog box opens.

  • Without an OpenFcn callback or a mask parameter, Simulink opens the object.

    • A referenced model opens in a new window.

    • A subsystem opens in a new tab in the same window.

    • For blocks, the parameters dialog box for the block opens.

To open a specific subsystem or block, you must load the model or library containing it. Otherwise Simulink returns an error.

You can override the default behavior by supplying a second input argument.

example

open_system(sys,'loadonly') loads the specified model or library without opening the Simulink Editor. This is equivalent to using load_system.

example

open_system(sbsys,'window') opens the subsystem sbsys in a new Simulink Editor window. Before opening a specific subsystem or block, load the model or library containing it. Otherwise Simulink returns an error.

open_system(sbsys,'tab') opens the subsystem in a new Simulink Editor tab in the same window. Before opening a specific subsystem or block, load the model or library containing it. Otherwise Simulink returns an error.

example

open_system(blk,'mask') opens the mask dialog box of the block or subsystem specified by blk. Load the model or library containing blk before opening it.

open_system(blk,'force') looks under the mask of a masked block or subsystem. It opens the dialog box of the block under the mask or opens a masked subsystems in a new Simulink Editor tab. This is equivalent to the Look Under Mask menu item. Before opening a specific subsystem or block, load the model or library containing it. Otherwise Simulink returns an error.

open_system(blk,'parameter') opens the block parameter dialog box.

open_system(blk,'OpenFcn') runs the block callback OpenFcn.

Examples

collapse all

Suppose you have a model named myModel.

Open the model.

open_system('myModel')

Suppose you have a model named myModel.

Load the model without opening it.

load_system('myModel')

Suppose you have a model named myModel. The model contains a subsystem named mySubsystem.

Open the subsystem.

load_system('myModel')
open_system('myModel/mySubsystem')

Suppose you have a model named myModel. The model contains a subsystem named mySubsystem.

Open the subsystem in a new tab.

load_system('myModel')
open_system('myModel/mySubsystem','tab')

Suppose you have a model named myModel. The model contains a subsystem named mySubsystem.

Open the subsystem in its own Simulink Editor window.

load_system('myModel')
open_system('myModel/mySubsystem','window')

Suppose you have a model named myModel that uses a Model block named myRefModelBlock to reference another model.

Open the referenced model.

load_system('myModel')
open_system('myModel/myRefModelBlock')

The referenced model opens in its own Simulink Editor window as a top model.

Tip

To open the referenced model in the context of a model hierarchy, use the open function with a Simulink.BlockPath object.

Suppose you have a model named myModel. The model contains a subsystem named mySubsystem that has multiple Gain blocks.

Open the Block Parameters dialog box for the first Gain block in the subsystem.

load_system('myModel')
open_system('myModel/mySubsystem/Gain')

Suppose you have a model named myModel that contains a Constant block named K.

Define an OpenFcn callback for the Constant block.

load_system('myModel')
set_param('myModel/K','OpenFcn','disp(''Hello World!'')')

Execute the block callback.

open_system('myModel/K','OpenFcn')

The words Hello World appear in the MATLAB® Command Window.

Suppose you have a model named myModel. The model contains a masked subsystem named myMaskedSubsystem.

Open the contents of the masked subsystem.

load_system('myModel')
open_system('myModel/myMaskedSubsystem', 'force')

Suppose you have two models, myModel1 and myModel2. You can open both models with a single command.

Create a cell array of the model names.

models = {'myModel1','myModel2'}

Open the models.

open_system(models)

Input Arguments

collapse all

Model, referenced model, library, subsystem, or block path, specified as a character vector. If the model is not on the MATLAB path, specify the full path to the model file. Specify the block or subsystem using its full name, e.g., f14/Controller/Gain, on an opened or loaded model. On UNIX® systems, the fully qualified path name of a model can start with a tilde (~), signifying your home directory.

Data Types: char

The full name or path of a model or library, specified as a character vector.

Data Types: char

The full name or path of a subsystem in an open or loaded model, specified as a character vector.

Data Types: char

The full name or path of a block or subsystem in an open or loaded model, specified as a character vector.

Data Types: char

Tips

To open a referenced model in the context of a model hierarchy, use the open function with a Simulink.BlockPath object.

Version History

Introduced before R2006a