本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

setVariable

通过 SimulationInput 对象 in 设置仿真的变量

说明

示例

in = in.setVariable('Name', 'Value')Value 赋给变量 Name。您可以使用同一 SimulationInput 对象将多个变量添加到模型中。

in = in.setVariable('Name', 'Value','Workspace', 'ModelName')Value 赋给变量 Name。默认情况下,将通过 SimulationInput 对象定义的变量放置在全局工作区作用域内。术语全局工作区特定于 Simulink.SimulationInput 对象及其方法。相对于基础工作区或数据字典中的同名变量,全局工作区作用域中的变量优先。模型工作区中的变量优先于全局工作区作用域。要更改模型工作区变量的值,请在将变量添加到 SimulationInput 对象时通过指定模型名称来设置作用域。

在使用 setVariable 方法时,一次只能指定一个变量。

您可以使用 getVariable('VariableName') 方法获取变量的值,使用 removeVariable('VariableName') 方法从 Simulink.SimulationInput 对象中删除变量

有关使用非标量变量、结构体变量和参数对象的信息,请参阅扫描非标量、结构体和参数对象

示例

全部折叠

此示例通过 SimulationInput 对象修改模型参数。

打开模型。

mdl = 'sldemo_househeat';
open_system(mdl);

为此模型创建 SimulationInput 对象。

in = Simulink.SimulationInput(mdl);

将变量值设置为 50。

in = in.setVariable('cost',50);

默认情况下,此变量位于全局工作区作用域中。

对模型进行仿真。

out = sim(in)

此示例通过 SimulationInput 对象修改 sldemo_househeat 的模型参数。

设置路径并打开模型。

mdl = 'sldemo_househeat';
open_system(mdl);

为此模型创建 SimulationInput 对象。

in = Simulink.SimulationInput(mdl);

将变量设置为 50 并将作用域设置为模型工作区。

in = in.setVariable('cost',50,'Workspace','sldemo_househeat');

对模型进行仿真。

out = sim(in)

输入参数

全部折叠

指定可选的、以逗号分隔的 Name,Value 对组参数。Name 是参数名称,Value 是变量的字面值。Name 必须出现在单引号内 (' ')。

示例: 'StartTime','1'

通过指定模型名称来设置已定义变量的作用域

示例: 'Workspace', 'sldemo_househeat'

在 R2017a 中推出