MATLAB Answers

0

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

Asked by Mona Faraji Niri on 4 Sep 2019
Latest activity Commented on by Nicolas Broch 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
Mona

  0 Comments

Sign in to comment.

1 Answer

Answer by Nicolas Broch 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.
Regards

  6 Comments

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
configureSimB(simA);
% 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.
Regards
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?
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.