主要内容

运行并行模拟

parsim命令允许您并行(同时)运行Simulink金宝app®模型(设计)的模拟。在这种情况下,并行运行意味着在不同的工作人员上同时进行多个模拟。parsim在蒙特卡罗分析、参数扫描、模型测试、实验设计和模型优化等场景中,使用不同的输入或不同的参数设置可以轻松运行相同的模型。通过将模型分解为更小的组件来并行运行单个模拟,并在多个worker上同时运行这些单独的部分,目前还不支持。金宝app

同时进行模拟parsim,您需要为本地工作者提供并行计算工具箱™。另外,可以使用MATLAB®并行服务器™适用于多个计算机集群、云和网格。在没有并行计算工具箱的情况下MATLAB并行服务器parsim串行运行模拟。有关更多信息,请参见并行计算工具箱而且MATLAB并行服务器

如果不存在并行池,则parsim从默认集群概要文件创建一个池。若要使用默认以外的集群,请在调用之前使用该集群概要创建一个池parsim

这个示例为一组扫描参数并行运行多个模拟。

% 1)负载模型模型=“sldemo_suspn_3dof”;load_system(模型);% 2)设置扫描参数Cf_sweep = 2500*(0.05:0.1:0.95);numSims = nummel (Cf_sweep);% 3)创建一个SimulationInput对象数组,并为每个模拟指定扫描值simIn(1:numSims) = 金宝appSimulink.SimulationInput(model);idx = 1:numSims simIn(idx) = simIn(idx).setBlockParameter([model . idx]/ Road-Suspension交互的],Cf的num2str (Cf_sweep (idx)))结束% 4)模拟模型simOut = simIn

如何parsim作品

parsim运行基于不同参数和值的模拟金宝app仿真软件。SimulationInput对象。每一个SimulationInput对象指定模型的一个模拟。可以为多个模拟创建这些对象的数组。有关更多信息,请参见运行多个模拟

上可以使用以下方法和属性金宝app仿真软件。SimulationInput对象:

  • setVariables-修改基本工作区、数据字典或模型工作区中的变量

  • setBlockParameters-更改块参数

  • setModelParameters-改变模型参数

  • setPreSimFcn-指定MATLAB函数在每次仿真前运行,用于在集群上定制和后处理结果

  • setPostSimFcn-指定MATLAB函数在每次仿真后运行,用于在集群上定制和后处理结果

  • InitialState—修改初始状态

  • ExternalInput-指定数值数组、时间序列或数据集对象作为模型的外部输入

此流程图显示发生的事件的一般顺序parsim执行

使用时可以覆盖对模型库块的更改parsim.当在新的工作者上建立模型时,模型直接从工作者库继承属性。使用SetUpFcnparsim将模型库块更改传递给工作人员。

另请参阅

对象

功能

工具

相关的话题