MATLAB Answers

how to do Serial and Parrarell computing, multiple simulink models in a loop?

1 view (last 30 days)
Mona Faraji Niri
Mona Faraji Niri on 4 Sep 2019
Commented: Nicolas B. on 6 Sep 2019
Hi all,
I have two simulink files that need to run in a loop.
I have the first file sim1.slx that should run for some time and provide an output which is the input for sim2.slx. Then sim2.slx runs and afterwards it should get back to the first file sim1.slx and do this untill a counter reaches a limit.
I know that this is easy in codes and Matlab scripts, but my platform is only based on simulink.
has anyone any clues how to do this?
best regards


Sign in to comment.

Answers (1)

Nicolas B.
Nicolas B. on 5 Sep 2019
Hi Mona,
I would recommend you to take a look at the parsim command. Its documentation is very well done and give multiple examples.
Hope it helps.


Show 3 older comments
Nicolas B.
Nicolas B. on 5 Sep 2019
Then, for your case, I would recommand to use a MATLAB script to synchronize your simulations. Your code could look like:
% run 1st simulation
simA = sim('my first model');
% configure simulation B
% run sim B
simB = sim('my second model');
... % so on so forth
I know it will require some work, but there is no automatic solution to do what you want.
Mona Faraji Niri
Mona Faraji Niri on 5 Sep 2019
if I put the first model in the Simulation> model Properties> callbacks > startFnc of the simulation configuration, this may run the first model and provide output to the second model. but how I can get back from model B to A again?
Nicolas B.
Nicolas B. on 6 Sep 2019
The risk with what you are trying to do is that you will end up in an infinite loop because model A call model B and model B call model A.
However, if you really want to go that way, I would simply do the same thing in model B to call model A.

Sign in to comment.