运行并行模拟
的parsim
命令允许你并行运行Simulink万博1manbetx®你的模型(设计)的模拟。在这种情况下,并行运行意味着在不同的工作人员上同时进行多个模拟。parsim
在Monte Carlo分析、参数扫描、模型测试、实验设计和模型优化等场景中,您可以轻松地使用不同的输入或不同的参数设置运行相同的模型。目前不支持通过将模型分解为更小的组件并在多个worker上同时运行这些单个组件来并行运行单个模拟。万博1manbetx
来并行运行模拟parsim
,您需要一个用于本地工作者的并行计算工具箱™。此外,您还可以使用MATLAB®并行服务器™用于多个计算机集群、云和网格。在没有并行计算工具箱和MATLAB并行服务器,parsim
以串行方式运行模拟。有关详细信息,请参见并行计算工具箱和MATLAB并行服务器.
如果不存在并行池,parsim
从默认集群配置文件创建池。要使用默认值以外的集群,请在调用之前使用该集群配置文件创建一个池parsim
.
此示例为一组扫描参数并行运行多个模拟。
% 1)加载模型模型=“sldemo_suspn_3dof”;load_system(模型);% 2)设置扫描参数Cf_sweep = 2500 * (0.05:0.1:0.95);numSims =元素个数(Cf_sweep);% 3)创建一个SimulationInput对象数组,并为每个模拟指定扫描值思敏(1:numSims) = Sim万博1manbetxulink.SimulationInput(模型);为idx = 1:numSims simIn(idx) = simIn(idx).setBlockParameter([模型/ Road-Suspension交互的),Cf的num2str (Cf_sweep (idx)))结束% 4)模拟模型simOut = parsim(思)
如何parsim
作品
parsim
的不同参数和值运行模拟万博1manbetx仿真软件。SimulationInput
对象。每一个SimulationInput
对象指定模型的一个模拟。可以为多个模拟创建这些对象的数组。有关详细信息,请参见运行多个模拟.
可以在上使用以下方法和属性万博1manbetx仿真软件。SimulationInput
对象:
setVariables
-修改基本工作空间、数据字典或模型工作空间中的变量setBlockParameters
-更改块参数setModelParameters
-更改模型参数setPreSimFcn
—指定MATLAB函数在每次仿真前运行,以便在集群上进行定制和后期处理结果setPostSimFcn
—指定每次仿真后运行的MATLAB函数,用于集群定制和后期处理结果InitialState
—修改“初始状态”ExternalInput
-指定数字数组、时间序列或数据集对象作为模型的外部输入
此流程图显示了发生事件的一般顺序parsim
执行
在使用时,可以覆盖对模型库块的更改parsim
.当模型建立在新的worker上时,model直接从worker库继承属性。使用SetUpFcn
与parsim
为了将模型库块的更改传递给工人。
另请参阅
对象
功能
applyToModel
|setBlockParameter
|setModelParameter
|setInitialState
|setExternalInput
|setVariable
|验证
|setPreSimFcn
|setPostSimFcn