主要内容

getStateIndex

得到指数状态元素的操作规范

描述

财产的操作规范是一个数组,其中包含削减规范为每个模型的状态。当定义一个映射函数仿真软件的定制的削减金宝app®模型,您可以使用getStateIndex获得国家规范的指数基于相应的块路径或国家名称。

削减仿真软件模型使用文中针对金宝app搜索时,一些应用程序需要额外的灵活性定义优化搜索参数。对于这样的系统,您可以指定定义的约束条件和目标函数。对于复杂的模型,您可以定义一个映射,选择模型的一个子集,输入和输出通过自定义约束条件和目标函数。有关更多信息,请参见使用自定义约束条件和目标函数计算操作点

例子

指数= getStateIndex (人事处,的名字)返回索引对应国家的规范的名字财产的操作规范人事处

例子

指数= getStateIndex (人事处,的名字,元素)返回指定的索引元素在国家规范与多个州一个街区。

例子

全部折叠

打开仿真软金宝app件模型。

mdl =“scdindex1”;open_system (mdl)

创建一个操作点规范模型。

opspec = operspec (mdl);

opspec包含一组状态的模型。

opspec.States
已知稳态ans = x分钟马克斯dxMin dxMax……………………………………(1) scdindex1 /系统化0假真负无穷到正无穷负无穷到正无穷0假真负无穷到正无穷正0错误真的负无穷到正无穷负无穷到正无穷(2)scdindex1 /系统2 0假真负无穷到正无穷负无穷到正无穷

得到国家规范对应的索引系统2块。

index2 = getStateIndex (opspec,“scdindex1 /系统2”)
index2 1 = 2

index2 (1)是国家规范对象的索引系统2opspec.States。因为这个街区有一个状态,index2只有一个行吗index2 (2)1

如果一块有多个州,你可以获得所有的州的指数在相应的国家规范。

index1 = getStateIndex (opspec,“scdindex1 /系统化”)
index1 = 1 1 1 2 1 3

每一行的index1包含索引系统2块的一种状态。对于每一行,第一列包含国家规范的索引opspec.States。第二列包含规范中的每个状态元素的索引。

打开仿真软金宝app件模型。

mdl =“scdindex1”;open_system (mdl)

创建一个操作点规范的模型。

opspec = operspec (mdl);

如果一块有多个状态,您可以获得一个特定国家的指数在相应的国家规范通过指定元素索引。例如,有指数第二国家规范的系统化的块。

index1 = getStateIndex (opspec,“scdindex1 /系统化”,2)
index1 = 1 2

你也可以获得的一个子集的索引块州通过指定元素索引作为一个向量。例如,第一和第三个州得到指标的规范系统化的块。

index2 = getStateIndex (opspec,“scdindex1 /系统化”1,[3])
index2 = 1 1 1 3

打开仿真软金宝app件模型。

mdl =“scdindex2”;open_system (mdl)

系统化的块是一个状态方程的系统有三个名字:位置,速度,加速度

创建一个操作点规范的模型。

opspec = operspec (mdl);

财产的操作点指定为每个对象包含一个条目在系统化。

opspec.States
已知稳态ans = x分钟马克斯dxMin dxMax……………………………………(1)位置0错误真的负无穷到正无穷负无穷到正无穷(2)速度0错误真的负无穷到正无穷负无穷到正无穷(3)加速0错误真负无穷到正无穷负无穷到正无穷

获得国家规范的索引块对应于一个名叫状态,指定国家名称。

index1 = getStateIndex (opspec,“速度”)
index1 1 = 2

第一列的index1包含相应的国家规范的索引opspec.States财产。第二列是1为一个命名的状态。

开放模式。

mdl =“scdTanks_simscape”;open_system (mdl)

创建一个操作点规范的模型。

opspec = operspec (mdl);

属性操作点规范的对象包含一个国家规范模型中的每个Simscape状态。

获得的指标规范,对应于一个Simscape状态,指定国家名称。例如,Tank3的指数的压力状态。

idx = getStateIndex (opspec,“scdTanks_simscape.Tank3.pressure”)
idx = 18 1

第一列的idx包含相应的国家规范的索引opspec.States。第二列是1Simscape状态。

视图的规范opspec.States这种状态。

opspec.States (idx (1))
已知稳态ans = x分钟马克斯dxMin dxMax……………………………………(1) scdTanks_simscape.Tank3。0错误真的负无穷到正无穷负无穷到正无穷压力

输入参数

全部折叠

操作规范或操作点仿真软件模型,指定为一个金宝appOperatingSpec,OperatingPoint,或OperatingReport对象。

块路径或国家名称对应于规范的状态的属性人事处指定为一个特征向量或字符串,包含下列之一:

  • 块一块的路径模型模型,该模型包含匿名状态。金宝app

  • 名字命名的状态模型或Simscape™块。金宝app

看到所有的州,国家规范,查看的属性人事处

op.States

指数状态元素,指定为一个正整数的数量小于或等于指定元素块或状态的名字,或一个向量的整数。默认情况下,如果不指定元素,getStateIndex返回所有元素的指标在选定的国家规范。例如,看到的得到国家指定元素的索引的操作规范

输出参数

全部折叠

状态指数,作为2-element行向量时返回元素是一个整数,或第二列数组元素是一个向量。每一行的指数包含单个模型状态的指标。

第一列的指数包含相应的国家规范的索引的属性人事处。第二列包含元素的索引在国家规范。

使用指数,您可以指定自定义的状态部分映射定制仿真软件模型的调整。金宝app有关更多信息,请参见CustomMappingFcn的属性operspec

版本历史

介绍了R2017a