主要内容

Parsim

在并行或串行中多次模拟动态系统

描述

例子

sim= Parsim(使用指定的输入模拟模型模拟算法对象,在。该Parsim命令使用数组模拟算法对象运行多个模拟。

sim= Parsim('showsimulationManager''在'使用指定的输入并行模拟模型模拟算法对象并打开模拟管理器UI。有关更多信息,请参阅仿真经理

sim= Parsim(名称,价值使用指定的输入并行模拟模型模拟算法对象和指定的选项名称,价值一对。

Parsim命令使用并行计算工具箱™许可证并行运行模拟。Parsim如果无法创建并行池,或者如果未使用并行计算工具箱,则在串行运行模拟。

例子

全部收缩

模拟模型,VDP.,快速加速器模式。

加载模型。

模型='vdp';load_system(型号)

此步骤构建快速加速器目标

万博1manbetxsimulink.blockdiagram.buildRapidaccelEratortarget(型号);

创建一个模拟算法对象和使用setmodelparameter.设置的方法Rapidacceleratoruptodatecheck.'离开'

在= si万博1manbetxmulink.simulationInput(Model);在= in.setmodelparameter('simulationmode''快速加速器');在= in.setmodelparameter('Rapidacceleratoruptodatecheck''离开');

模拟模型。

OUT = Parsim(in)

通过扫过变量,模拟模型CSTR,CSTR,并行。一系列仿真对象用于执行扫描。

指定扫描值。

FeedTempsweep = 250:10:3​​00;

创建一系列仿真量对象。

为了i = length(feedtempsweep): -  1:1在(i)= 万博1manbetxsimulink.simulationInput('cstr');在(i)=(i).setvariable('feedtemp0',feedtempsweep(i));结尾

并行模拟模型。

出局= Parsim(在,'showprogress''在'
[11-DEC-2020 09:14:55]检查并行池的可用性......使用“本地”配置文件启动并行池(PARPOOL)...连接到并行池(工人数量:6)。[11-Dec-2020 09:15:43]在并行工人上启动Si万博1manbetxmulink ... [11-Dec-2020 09:16:16]配置并行工人的模拟缓存文件夹... [11-Dec-2020 09:16:17]在平行工人上加载模型... [11-DEC-2020 09:16:25]运行模拟... [11-DEC-2020 09:16:58]完成了6个模拟运行中的1个[11-12月20日09:16:58]完成了6个模拟运行中的2个[11-dec-2020 09:16:58]完成了6个模拟运行中的3个[11-dec-2020 09:17:00]的6个模拟中的4个跑步[11-DEC-2020 09:17:01]完成了5个仿真运行中的5个[11-10-2020 09:17:01] 6个仿真运行中的6个[11-dec-2020 09:17:02]清洁平行工人... OUT = 1x6 Simulink.simula万博1manbetxtionOutput数组

输入参数

全部收缩

一种万博1manbetxsimulink.simulationInpul.对象或一系列万博1manbetxsimulink.simulationInpul.用于指定模拟模型更改的对象。

例子:在= si万博1manbetxmulink.simulationInput('VDP')

名称值对参数

例子:'showprogress''在'

笔记

所有参数传递给Parsim命令与与之使用的参数无关SIM命令。传递给Parsim命令,使用以下输入参数列表

指定可选的逗号分离对名称,价值论点。姓名是参数名称和价值是相应的价值。姓名价值必须出现在单引号内('')。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen

指定为其他文件的单元数组,以附加到并行池。

设置'在',查看命令窗口中模拟的进度。设置时的进度是隐藏的'离开'

笔记

当显示进度时,一条消息'清理平行工人..'可以在完成最后几个模拟之前显示。此消息不依赖于模拟的完成。当从中获取输出时,仿真完成未来。有关更多信息,请参阅万博1manbetxsimulink.simulation.future.

设置'在'异步运行模拟,保持matlab®命令提示符可供使用。

指定A.功能手柄'setupfcn'在仿真开始之前每个工作人员运行一次。

例子:'setupfcn',@()currentproject('modellex / model_example.prj')

笔记

什么时候BuildRapidaccelEratorTarget.用于setupfcn,模型具有指定的外部输入,无论是设置'loadexternalinput''离开'或确保在工人上使用指定的外部输入以防止编译错误。

指定A.功能手柄'cleanupfcn'仿真完成后,每个工作人员运行一次。

什么时候管理竞争被设定为如果需要,模型依赖项将自动发送到并行工人。如果管理竞争被设定为离开,将模型依赖性显式附加到并行池。

什么时候usefastrestart.被设定为,使用快速重启,模拟在工人上运行。

在执行Simscape™组件的参数扫描变化属性(例如Simscape Multibody中的固体块的质量和惯性)时,请将Simscapt块参数指定为运行时可配置。有关更多信息,请参阅关于Simscape Run-Time参数(Simscape)

笔记

使用时Parsim, 使用usefastrestart.选择而不是fastrestart.选项。看快速重启开始想要查询更多的信息。

什么时候TransferBaseWorkspaceVariables.被设定为,模型中使用的变量和基础工作区中定义的所有内容被传输到并行工人。

什么时候'showsimulationManager'被设定为'在',您可以使用Simulation Manager应用来监视模拟。

环境'stoponerror''在'如果遇到错误,请停止执行模拟。

输出参数

全部收缩

数组万博1manbetxsimulink.simulationOutput.包含所有记录的模拟结果的对象。阵列的大小等于数组的大小万博1manbetxsimulink.simulationInpul.对象。

所有仿真输出(记录的时间,状态和信号)都在单个中返回万博1manbetxsimulink.simulationOutput.目的。您定义了使用使用的模型时间,状态和输出数据导入/导出模型配置参数对话框的窗格。您可以使用块(如)记录信号到工作区范围块。这信号与范围管理器可以直接记录信号。

扩展能力

在R2017A介绍