Supress simulink from evaluating initialisation commands while editing

1 visualizzazione (ultimi 30 giorni)
Hello Community,
I have a problem while editing my rather complex simulink model. I have some masked subsystems which read indexed parameters in their initialisation commands. In the mask I define the index with an edit field. Furthermore all parameters are definded in an initialisation script and the simulation is also started by a script where all variables are assigned directly to the model workspace with assignin.
The very annoying problem is, that if I change the index in the mask of the subsystem I get the error
Initialization commands cannot be evaluated.
Caused by:
Index exceeds array bounds.
When I start my initialisation script and set a debug point after the assignin command I can change the index variable without any errors.
Now I am wondering whether there is a way to supress simulink from evaluating my initialisation commands while I am editing my model and do this only on simulation start instead.

Risposta accettata

TAB
TAB il 31 Ago 2018
You can check model simulation status on mask initialization to decide whether to run your command or not.
if ~strcmpi(get_param(bdroot(gcbh), 'SimulationStatus'), 'stopped')
...
...
end
Possible values of Simulation Status are:
{'stopped'} | 'updating' | 'initializing' | 'running' | 'paused' | 'terminating' | 'external'

Più risposte (0)

Categorie

Scopri di più su Modeling in Help Center e File Exchange

Prodotti


Release

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by