Main Content

Build and Edit a Model Interactively

Learn the basics of how to create a model, add blocks to a model, connect blocks, and simulate a model. You also learn how to organize your model with subsystems, name parts of a model, and modify a model.

For a summary of how to connect blocks and add ports interactively, see Keyboard Shortcuts and Mouse Actions for Simulink Modeling.

Create a Model

  1. On the Simulink® Start Page, choose a template or search the templates.

    Model templates are starting points that you can use to apply common modeling approaches. They help you reuse settings and block configurations. Use model and project templates to ensure your designs are applying best practices and to take advantage of previous modeling solutions.

    Click the title of a template to read the description.

    Simulink start page with the Digital Filter template title selected, and the description of the template showing

    Search for templates by entering text in the search box. You can enter flexible search options, including OR, AND, NOT, use wildcards, do a fuzzy search (~), and more. Use the Lucene search engine query parser syntax.

    To locate templates that are not on the MATLAB search path, click Open. Model templates have the extension .sltx.

  2. After selecting the template you want, click Create Model.

    To use a template without reading the description, click the template image. Alternatively, press Ctrl+N to use your default template.

    A new model using the template settings and contents opens in the Simulink Editor.

If the built-in templates do not meet your needs, try searching on the Examples tab or creating your own templates. See Create Template from Model. On the Examples tab, enter search terms to search the titles and descriptions of the examples, or open examples on the web by clicking View All next to a product name.

Set Default Template for New Models

You can specify a model template to use for all new models.

  1. Create a model with the configuration settings and blocks you want, then export the model to a template. See Create Template from Model.

  2. To reuse these settings in every new model, make the new template your default model template by using the Simulink Start Page or the Simulink.defaultModelTemplate function.

    On the Start Page, click the title of a template to expand the description, then click the down arrow next to Create Model and select Set As Default.

    Simulink start page with the Digital Filter template title selected, and the Create Model menu of the template expanded to show the Set as Default option

After you set a default model template, every new model uses that template, for example, when you press Ctrl+N, when you use new model buttons, or when you use new_system. In the Simulink Editor, your default template appears at the top of the list when, on the Simulation tab, you select New.

The default template shows a check mark on the Start Page.

Simulink start page template box with a check mark above the template title

Open a Model

Opening a model loads the model into memory and displays it in the Simulink Editor. Use any of these techniques:

  • On the MATLAB Toolstrip, on the Home tab, click Simulink. On the Simulink Start Page, select a recent model or project from the list, or click Open.

  • In the Simulink Toolstrip, on the Simulation tab, select Open and click Recent Files to open recent files or Open to search for a model.

  • At the MATLAB Command Window, enter the name of the model without a file extension, for example, vdp. The model must be in the current folder or on the MATLAB search path.

  • In the Simulink Library Browser, click the Open button .

  • Open the model using the Current Folder browser or your operating system file browser.


To open a model created in a later version of Simulink software in an earlier version, first export the model to the earlier version. See Export Model to Previous Simulink Version.

Set Favorite Files

Set favorites to easily find your favorite models and projects on the Simulink Start Page.

In the Recent list, you can add files to favorites. The Favorites list then appears above recent files on the Start Page, so you can easily reopen your favorite models and projects.

Simulink start page showing a model name in the Recent list, and the cursor hovering to the right of the name over a star symbol with the tooltip text Add to favorites

Clear Recent Files

To edit or clear the list of recent files on the Start Page, right-click a recent file and click Remove from List or Clear List.

Alternatively, use Simulink.history.clear to clear the Simulink history programmatically.

Load Variables When Opening a Model

As you build models, you sometimes define variables for a model. For example, suppose that you have a model that contains a Gain block. You can specify the variable K as the gain rather than setting the value on the block. When you use this approach, you must define the variable K for the model to simulate.

You can use a model callback to load variables when you open a model.

  1. In a model that uses the Gain block, set the block Gain value to K.

  2. Define the variable in a MATLAB script. In MATLAB, select New > Script. In the script, enter your variable definitions:


  3. Save the script as loadvar.m.

  4. In the model, open the Property Inspector. On the Modeling tab, under Design, click Property Inspector.

  5. At the top level of a model, click an empty space in the Simulink Editor canvas to ensure nothing is selected.

  6. On the Properties tab, in the Callbacks section, select PreLoadFcn, then enter loadvar.

  7. Save the model.

    The next time that you open the model, the PreloadFcn callback loads the variables into the MATLAB workspace.

You can also use the Model Properties dialog box instead of the Property Inspector. On the Modeling tab, click Model Settings > Model Properties.

To learn about callbacks, see Customize Model Behavior with Callbacks. To define a callback for loading variables programmatically, see Programmatically Load Variables When Opening a Model.

Open a Model That Has Different Character Encoding

If you open an MDL file created in a release prior to R2021b in a MATLAB session that uses different encoding, you receive a warning. For example, suppose you create an MDL file in a MATLAB session configured for Shift_JIS and open it in a session configured for windows-1252. The warning message displays the encoding of the current session and the encoding used to create the model. Starting in R2021b, MDL files, similar to SLX files, can store characters from any encoding. Resave your model files as MDL or SLX files.

Simulink Model File Types

New models have the .slx extension by default. Models created before R2012b have the extension .mdl. You can edit models with either the .slx or .mdl extension, depending on when they were created and whether you converted them. See Save Models in the SLX File Format.

.slxp and .mdlp extensions denote protected models that you cannot open or edit. See Reference Protected Models from Third Parties. Model templates have the extension .sltx.

Simulink libraries and subsystems can also use the .slx extension. To learn more, see Choose Among Types of Model Components.

See Also

| | | |

Related Topics