主要内容

sim卡

模拟万博1manbetx模型

描述

万博1manbetx仿真软件。SimulationInput对象语法

例子

simOut= sim卡(思敏运行Simulink的一个或多个模拟万博1manbetx®根据在一个或多个上定义的属性进行建模万博1manbetx仿真软件。SimulationInput对象。

  • 如果思敏是标量万博1manbetx仿真软件。SimulationInput对象,然后simOut是标量万博1manbetx仿真软件。SimulationOutput对象。

  • 如果思敏的数组。万博1manbetx仿真软件。SimulationInput对象,那么simOut的数组。万博1manbetx仿真软件。SimulationOutput对象。

你可以使用SimulationInput对象配置模拟的选项和输入,包括:

  • 要模拟的模型

  • 外部输入数据的源变量或文件

  • 块参数值用于模拟

  • 用于模拟的模型配置参数值

的属性时SimulationInput对象修改模型或块参数值,该值在模拟期间被修改,并在模拟结束时恢复。

配置编程模拟时使用SimulationInput对象,您可以轻松地从使用sim卡函数来使用其他函数,例如parsim而且batchsim

simOut= sim卡(思敏名称,值属性上定义的属性模拟模型万博1manbetx仿真软件。SimulationInput对象思敏使用一个或多个名称-值参数指定的其他选项。

控件支持的名称-值参数列表万博1manbetx万博1manbetx仿真软件。SimulationInput语法,看万博1manbetx仿真软件。SimulationInput对象语法

模型名称语法

例子

simOut= sim卡(modelName所指定的模型modelName使用模型的当前配置参数和块参数值。

  • 如果模型有单次仿真输出参数启用,simOut是一个万博1manbetx仿真软件。SimulationOutput对象。

  • 如果模型没有单次仿真输出参数启用,simOut是一个包含模拟时间的向量。有关更多信息,请参见不建议返回多个输出参数

simOut= sim卡(modelName名称,值所指定的模型modelName使用一个或多个名称-值参数指定选项。例如,您可以通过将参数名称和值指定为名称-值参数来修改模拟的模型配置参数值。

控件的输入来修改模型配置参数时sim卡函数,则在模拟期间应用更改,并在模拟结束时恢复更改。

有关模型名称语法支持的名称-值参数列表,请参见万博1manbetx模型名称语法

例子

simOut= sim卡(modelNameparamStruct所指定的模型modelName使用结构指定的模型配置参数值paramStruct

例子

simOut= sim卡(modelNameconfigSet所指定的模型modelName使用配置集中的模型配置参数值configSet

例子

全部折叠

属性修改模型中块的参数值SimulationInput对象。

打开模型。

openExample (“万博1manbetxsimulink_general / sldemo_househeatExample”

创建一个SimulationInput对象用于此模型。

mdl =“sldemo_househeat”;simIn = 万博1manbetxSimulink.SimulationInput(mdl);

将恒温器的设定点更改为300通过修改价值参数为Set Point块。

simIn = setBlockParameter(simIn,“sldemo_househeat /设定值”...“价值”“300”);

模拟模型。

out = sim(simIn);

模拟模型vdp在其当前状态下,模型是尚未加载还是已加载未保存的更改。

simOut = sim(“vdp”);

模拟模型vdp使用结构中指定的模型配置参数值。

创建结构paramStruct.配置模型以使用变量名记录状态xoutNew

paramStruct。SaveState =“上”;paramStruct。StateSaveName =“xoutNew”

向结构中添加更多字段,以配置模型使用变量名记录输出youtNew

paramStruct。SaveOutput =“上”;paramStruct。输出SaveName =“youtNew”

使用结构中指定的选项模拟模型。

simOut = sim(“vdp”paramStruct)
simOut = 万博1manbetxSimulink。SimulationOutput:xoutNew:[64x2 double] youtNew: [64x2 double] SimulationMetadata: [1x1 Simulink.SimulationMetadata] ErrorMessage: [0x0 char]

打开模型vdp然后得到万博1manbetx仿真软件。ConfigSet对象用于活动配置。

mdl =“vdp”;open_system(mdl) cs = getActiveConfigSet(mdl);

的副本万博1manbetx仿真软件。ConfigSet对象。然后,使用set_param命令用于修改配置集中的参数值。配置ConfigSet对象:

  • 使用的绝对公差1 e-5

  • 使用变量名记录状态xoutNew

  • 使用变量名的日志输出youtNew

csNew = copy(cs);set_param (csNew“AbsTol”“1 e-5”...“SaveState”“上”“StateSaveName”“xoutNew”...“SaveOutput”“上”“OutputSaveName”“youtNew”

利用修正后的模型进行仿真万博1manbetx仿真软件。ConfigSet对象。

simOut = sim(mdl,csNew)
simOut = 万博1manbetxSimulink。SimulationOutput:xoutNew:[65x2 double] youtNew: [65x2 double] SimulationMetadata: [1x1 Simulink.SimulationMetadata] ErrorMessage: [0x0 char]

输入参数

全部折叠

模拟配置,指定为万博1manbetx仿真软件。SimulationInput对象。的性质SimulationInput对象指定要在模拟中使用的选项和参数值,包括:

  • 要模拟的模型

  • 外部输入数据的源变量或文件

  • 块参数值用于模拟

  • 用于模拟的模型配置参数值

属性中定义的值SimulationInput对象应用于模型进行仿真,并在仿真结束时返回。

要模拟的模型,指定为字符串或字符向量。

例子:simOut = sim("vdp")模拟指定的模型vdp使用模型中当前配置的参数值。

数据类型:字符|字符串

要模拟的模型配置,指定为结构。结构的字段是模型配置参数的名称。每个字段的值表示在模拟中使用的参数值。例如,模拟一个模型的起始时间5到一个停止时间的时候10,创建这样的结构:

paramStruct。开始时间=“5”;paramStruct。StopTime =“10”

数据类型:结构体

要模拟的模型配置,指定为万博1manbetx仿真软件。ConfigSet对象。

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:simOut = sim(simIn,"UseFastRestart","on")的数组配置的一组模拟万博1manbetx仿真软件。SimulationInput启用快速重启的对象。

例子:simOut = sim(modelName,"Solver","ode15s","StopTime","30")属性所指定的模型的仿真modelName使用ode15s求解器时,停止时间为30.

sim卡函数支持不同的名称万博1manbetx-值参数,这取决于是否将第一个输入指定为万博1manbetx仿真软件。SimulationInput对象或作为要模拟的模型的名称。属性的输入为模型配置参数指定值sim卡函数。

  • 当第一个输入参数是万博1manbetx仿真软件。SimulationInput对象,为输入对象上的模拟配置模型参数值setModelParameter函数。

  • 当第一个输入参数是模型名称时,指定任何模型配置参数作为名称-值参数。

万博1manbetx仿真软件。SimulationInput对象语法

全部折叠

选项以启用快速重启,指定为“关闭”“上”.快速重新启动可以在适当的时候跳过编译和终止阶段,从而减少运行一组模拟所需的时间。当您运行同一个模型的多个模拟时,考虑使用快速重启。

有关更多信息,请参见快速重启如何改进迭代模拟

类的第一个输入参数时才支持此参数万博1manbetxsim卡作为万博1manbetx仿真软件。SimulationInput对象。

例子:sim(思敏,“UseFastRestart”,“上”)

数据类型:字符|字符串

选项,用于在发生错误时停止启动模拟的进程,指定为“关闭”“上”

  • “关闭”—当模拟发生错误时,模拟将停止,启动模拟的进程将继续。的数组运行一组模拟时万博1manbetx仿真软件。SimulationInput对象,如果第一个模拟遇到错误,该模拟将停止,后续模拟仍将运行。

  • “上”—当模拟发生错误时,该模拟和启动模拟的进程都将停止。的数组运行一组模拟时万博1manbetx仿真软件。SimulationInput对象,如果第一个模拟遇到错误,该模拟将停止,后续的模拟也不会运行。

类的第一个输入参数时才支持此参数万博1manbetxsim卡作为万博1manbetx仿真软件。SimulationInput对象。

例子:sim(思敏,“StopOnError”,“上”)

提示

  • 类的第一个输入参数时,将模型名称指定为sim卡函数配置此行为CaptureErrors名称-值参数。

  • 当错误没有停止启动模拟的进程时,错误消息信息将在万博1manbetx仿真软件。SimulationOutput对象和万博1manbetx仿真软件。SimulationMetadata对象。

    • 要查看消息,请使用ErrorMessage的属性SimulationOutput对象。

    • 有关错误的详细信息,请使用ExecutionInfo的属性万博1manbetx仿真软件。SimulationMetadata对象。的ErrorDiagnostic字段包含有关错误的信息,包括发生错误的模拟阶段。

数据类型:字符|字符串

选项,指示模拟进度,指定为“关闭”“上”

  • “关闭”-模拟运行时不显示进度消息。

  • “上”—进度更新显示为模拟进度。

    的数组运行多个模拟时,此选项非常有用万博1manbetx仿真软件。SimulationInput对象。

    类的第一个输入参数时才支持此参数万博1manbetxsim卡作为万博1manbetx仿真软件。SimulationInput对象。

例子:sim(思敏,“ShowProgress”,“上”)

选项以打开模拟管理器,指定为“关闭”“上”.使用仿真管理器监视所运行的模拟的进度。的数组运行多个模拟时,请考虑使用模拟管理器万博1manbetx仿真软件。SimulationInput对象。

类的第一个输入参数时才支持此参数万博1manbetxsim卡作为万博1manbetx仿真软件。SimulationInput对象。

例子:sim(思敏,“ShowSimulationManager”,“上”)

模型名称语法

全部折叠

选项,在发生错误时继续启动模拟的进程,指定为“关闭”“上”.类运行模拟时,默认情况下sim卡函数,并指定模型的名称作为第一个输入:

  • 在MATLAB中报告错误®命令窗口。

  • 当错误发生时,模拟和调用模拟的流程都将停止。

  • 方法中没有捕获错误消息万博1manbetx仿真软件。SimulationOutput对象或万博1manbetx仿真软件。SimulationMetadata对象。

当你指定CaptureErrors作为“上”时,仅在模拟输出中报告错误。带有错误的模拟将停止执行,但如果模拟是由另一个流程调用的,则该流程将继续执行。例如,在循环中运行多个模拟时,如果指定CaptureErrors作为“上”,在出现错误的模拟之后,后续模拟将继续运行。

类的第一个输入参数时才支持此参数万博1manbetxsim卡函数作为要模拟的模型的名称。

例子:sim(“myModel”、“CaptureErrors”,“上”)

提示

  • 软件在环(SIL)和处理器在环(PIL万博1manbetx)模拟不支持此选项。

  • 当指定一个或多个时万博1manbetx仿真软件。SimulationInput对象的输入sim卡函数配置此行为StopOnError名称-值参数。

  • 当你指定CaptureErrors作为“上”时,错误消息信息被捕获万博1manbetx仿真软件。SimulationOutput对象和万博1manbetx仿真软件。SimulationMetadata对象。

    • 要查看消息,请使用ErrorMessage的属性SimulationOutput对象。

    • 有关错误的详细信息,请使用ExecutionInfo的属性万博1manbetx仿真软件。SimulationMetadata对象。的ErrorDiagnostic字段包含有关错误的信息,包括发生错误的模拟阶段。

数据类型:字符|字符串

选项,以调试模式启动模拟,指定为“关闭”“上”

类的第一个输入参数时才支持此参数万博1manbetxsim卡函数作为要模拟的模型的名称。

例子:sim(“modelName”、“调试”,“上”)

数据类型:字符|字符串

选项禁用重建快速加速器目标,指定为“上”“关闭”.当您将此参数指定为“上”,需要重建快速加速器目标的更改被忽略。使用此选项时,只修改不需要重新构建快速加速器目标的选项。

类的第一个输入参数时才支持此参数万博1manbetxsim卡函数作为要模拟的模型的名称。

例子:sim(“modelName”、“RapidAcceleratorUpToDateCheck”,“关闭”)

提示

属性配置的模拟指定此选项万博1manbetx仿真软件。SimulationInput对象时,使用setModelParameter函数。

simIn = 万博1manbetxSimulink。SimulationInput (“myModel”);simIn = setModelParameter(simIn,“RapidAcceleratorUpToDateCheck”“关闭”);

数据类型:字符|字符串

最大模拟运行时间,指定为正标量。指定允许模拟运行的时间(以秒为单位)。如果模拟运行的时间超过您指定的值,软件将发出警告并停止模拟。例如,如果您指定超时作为30.时,如果计算模拟结果的时间超过30秒,软件将停止模拟,并发出警告。

超时参数指定模拟运行的时钟时间量的限制。要指定要模拟的最大时间值,请使用停止时间参数。

类的第一个输入参数时才支持此参数万博1manbetxsim卡函数作为要模拟的模型的名称。

例子:sim(“modelName”、“超时”,60)配置模拟运行的最大持续时间为60秒。

提示

属性配置的模拟指定此选项万博1manbetx仿真软件。SimulationInput对象时,使用setModelParameter函数。

simIn = 万博1manbetxSimulink。SimulationInput (“modelName”);simIn = setModelParameter(simIn,“超时”、60);

选项,在模拟之前显示参数摘要,指定为“siminfo”

类的第一个输入参数时才支持此参数万博1manbetxsim卡函数作为要模拟的模型的名称。

例子:sim(“modelName”、“跟踪”、“siminfo”)

数据类型:字符|字符串

输出参数

全部折叠

模拟输出,返回为万博1manbetx仿真软件。SimulationOutput对象的数组万博1manbetx仿真软件。SimulationOutput对象,或者向量。的万博1manbetx仿真软件。SimulationOutput对象包含从模拟中记录的所有数据以及关于模拟的元数据,包括定时信息和诊断。

当您仅指定模型名作为输入参数,并且所模拟的模型具有单次仿真输出参数禁用后,从sim卡函数是模拟时间的矢量。为sim卡函数以任何语法的一致格式返回结果,请使用单次仿真输出参数启用。

提示

  • 以确保sim卡函数以相同的格式返回结果,无论您指定哪个输入参数单次仿真输出参数启用。启用此选项后,模拟结果将作为万博1manbetx仿真软件。SimulationOutput其中包含所有日志数据以及模拟元数据,包括定时信息和诊断。当所有模拟数据和元数据都存储在一个对象中时,分析多个模拟的结果会更容易。

  • 若要获取模型配置参数列表,请使用getActiveConfigSet功能和get_param函数。例如,查看模型的配置参数vdp,在MATLAB命令窗口中输入这些命令。

    configSet = getActiveConfigSet(“vdp”);configSetNames = get_param(configSet,“ObjectParameters”

    get_param函数列出模型配置参数,如StopTimeSaveTimeSaveStateSaveOutput,SignalLogging

  • 类的输入参数时指定的模型配置参数sim卡功能适用于顶模。

  • 运行模拟时使用sim卡函数,则模拟将一直运行,直到发生错误或模拟达到指定的停止时间为止。要以编程方式运行可以以编程方式暂停和继续的交互式模拟,请使用set_param函数与SimulationCommand输入参数。有关更多信息,请参见以编程方式运行模拟

  • 当您模拟具有无限停止时间的模型时,请从MATLAB命令窗口通过按下停止模拟Ctrl + C.仿真停止,仿真结果不会保存在MATLAB工作空间中。

  • 使用“配置参数”对话框配置时间、状态和输出的日志记录。在建模选项卡,在设置,点击模型设置.然后在“配置参数”对话框中选择数据导入/导出

  • 要在整个模型中记录信号,请使用信号日志或日志记录块,例如到工作空间块或记录,XY图块。有关信号记录的详细信息,请参见使用信号日志导出信号数据

版本历史

R2006a之前介绍

全部展开