set a parameter in a contantblock during external simulation with a parfor loop.
1 回表示 (過去 30 日間)
古いコメントを表示
Hi, I want to use sim to simulate an external model 200 times. This should go fast so I'm using parfor. The problem is that the number of the current simulation has to be implied in the model called MPC_model (in a constant block named iteration) every time the sim function is used. I tried several thinks like this:
matlabpool;
parfor i=1:200
iteration=int2str(i);
set_param('MPC_model/iteration','Value',iteration);
[t,x,y1,y2]=sim('MPC_model',[Main_Time; Main_Time+12*48]);
all_gatelevels=[all_gatelevels,y1];
schade=[schade,y2];
end
I usually get problems that the submodel can't find variables that are defined in the workspace of the main model. When I try slightly different things like adding 'SimulationMode', 'rapid' I get other errors (f.e. that there might only be 1 output).
Does anyone know how I can get this to work?
0 件のコメント
採用された回答
Kaustubha Govind
2012 年 12 月 26 日
Please read Run Parallel Simulations. In particular, the sections titled sim in parfor with Rapid Accelerator Mode and Resolving Workspace Access Issues may be of interest to you.
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Multicore Processor Targets についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!