的parsim
命令允许您对您的模型(设计)运行并行(同时)的Simulink®仿真。万博1manbetx在这种情况下,并行运行意味着在不同的工作人员上同时进行多个模拟。parsim
在蒙特卡洛分析、参数扫描、模型测试、实验设计和模型优化等场景中,使用不同的输入或不同的参数设置运行相同的模型很容易。目前不支持通过将模型分解为更小的组件并在多个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(模型);为numSims simIn(idx) = simIn(idx).setBlockParameter([model . numSims . numblockparameter]/ 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上建立模型时,模型直接从worker库继承属性。使用SetUpFcn
与parsim
将模型库块更改传递给工作人员。
applyToModel
|ExternalInput
|setBlockParameter
|setInitialState
|setModelParameter
|setPostSimFcn
|setPreSimFcn
|setVariable
|仿真管理器
|万博1manbetx仿真软件。SimulationInput
|验证