Main Content

Programmatic Model Editing

Create models, add and connect blocks in models, set parameters and properties, and perform other modeling basics programmatically

Learn the basics of programmatic model management in Simulink®.


expand all

simulinkOpen Simulink Start Page
start_simulinkStart Simulink without opening any windows
slLibraryBrowserOpen, load, and close Simulink Library Browser, create and get handle of Library Browser object
open_systemOpen model, library, subsystem, or block dialog box
load_systemLoad Simulink model into memory
save_systemSave Simulink model
close_systemClose Simulink model window or block dialog box
bdcloseClose any or all Simulink model windows unconditionally
learning.simulink.launchOnrampOpen self-paced, interactive trainings
add_blockAdd block to model
add_lineAdd line to Simulink model
delete_blockDelete blocks from Simulink system
delete_lineDelete line from Simulink model
add_paramAdd parameter to Simulink model
delete_paramDelete model parameter added with add_param function
Simulink.BlockDiagram.deleteContentsDelete graphical contents of model
Simulink.SubSystem.deleteContentsDelete contents of subsystem
Simulink.history.clearClear the Simulink start page and editor history (Since R2020b)
new_systemCreate Simulink model or library in memory
Simulink.createFromTemplateCreate model or project from template
Simulink.BlockDiagram.createSubsystemCreate subsystem containing specified set of blocks
Simulink.AnnotationCreate and specify properties of text, image, and area annotations
docblockGet or set editor invoked by Simulink DocBlock block
gcsGet path name of current system
getfullnameGet path that identifies block or line
gcbGet path name of current block
gcbhGet handle of current block
gcbpGet Simulink.BlockPath object for current block
getSimulinkBlockHandleGet block handle from block path
get_paramGet parameter names and values
set_paramSet Simulink parameter value
Simulink.defaultModelTemplateSet or get default model template
getCurrentAnnotationGet current annotation object
getCallbackAnnotationGet annotation executing callback
edittime.getDisplayIssuesCheck whether model design warnings and errors are on
edittime.setDisplayIssuesDetect model design errors and warnings
hilite_systemHighlight block, signal line, port, or annotation
find_systemFind models, blocks, lines, ports, and annotations
Simulink.FindOptionsSpecify options for finding blocks in models and subsystems
Simulink.findTemplatesFind model or project templates with specified properties
Simulink.allBlockDiagramsFind loaded Simulink models and libraries
Simulink.findBlocksFind blocks in Simulink models
Simulink.findBlocksOfTypeFind specified type of block in Simulink models
replace_blockReplace blocks in Simulink model
modelfinderSearch and open examples, models, and projects (Since R2022a)
modelfinder.setDefaultDatabaseSet default database to index models (Since R2023b)
modelfinder.createDatabaseCreate new database to index models (Since R2023b)
modelfinder.importDatabaseImport database to Model Finder (Since R2023b)
modelfinder.registerFolderIndex models in Model Finder (Since R2022a)
modelfinder.unregisterFolderRemove models from Model Finder (Since R2022a)
modelfinder.deleteDatabaseRemove database from Model Finder (Since R2023b)
modelfinder.setSearchDatabaseSet search scope to find models (Since R2023b)
isSimulinkStartedCheck whether Simulink is started (Since R2020b)
bdrootTop-level model of current system
bdIsLoadedDetermine whether model, subsystem, or library is loaded
bdIsLibraryDetermine whether model is library
bdIsDirtyDetermine whether model, subsystem, or library has unsaved changes
slIsFileChangedOnDiskDetermine whether model has changed since it was loaded
Simulink.SubSystem.copyContentsToBlockDiagramCopy graphical contents from subsystem to another model
Simulink.exportToTemplateCreate template from model or project
Simulink.exportToVersionExport model, library, or project for use in previous version of Simulink
Simulink.MDLInfoExtract SLX, SLXP, or MDL file information without loading file
Simulink.MDLInfo.getDescriptionExtract SLX, SLXP, or MDL file description without loading file
Simulink.MDLInfo.getMetadataExtract SLX, SLXP, or MDL file metadata without loading file
Simulink.BlockDiagram.expandSubsystemReplace subsystem with subsystem contents
Simulink.BlockDiagram.arrangeSystemImprove layout of block diagram
Simulink.BlockDiagram.routeLineRoute existing lines of model
slCharacterEncodingSpecify encoding to use in code generated from Simulink models
frameeditOpen PrintFrame Editor to edit print frames for Simulink and Stateflow block diagrams
orientPaper orientation for printing or saving
printPrint figure or save to specific file format