在Matlab中启动给定步骤的模拟

时间:2014-03-11 06:55:57

标签: matlab simulink matlab-engine

我正在使用simulink模型,我必须在特定时间段内启动模拟。目前我正在使用

set_param('model_name','StartTime','0','StopTime','5');  
set_param('model_name','SimulationCommand','start');

这种方法的问题是当模拟结束并且我再次启动它时,它从头开始并且所有模拟进度都将丢失。在这里,我想从最后一个状态运行模拟。如何做到这一点?

1 个答案:

答案 0 :(得分:5)

您可以保存模型的状态,以便从上一个状态再次重新启动它 在开始模拟之前使用此命令保存模型的状态

set_param('yourModelName','SaveFinalState','on','FinalStateName','myFinalStateVar','SaveCompleteFinalSimState','on')

在再次启动模拟之前,使用命令

设置模型的初始状态
set_param('yourModelName','LoadinitialState','on','InitialState','mySimState')

这样你就可以从你离开的最后一个状态开始模拟。