主要内容gydF4y2Ba

idgreygydF4y2Ba

具有可识别参数的线性ode(灰度盒模型)gydF4y2Ba

语法gydF4y2Ba

sys = idgrey(odefun,参数,fcn_type)gydF4y2Ba
sys = idgrey(odefun,参数,fcn_type,可选_args)gydF4y2Ba
sys = idgrey(odefun,parameters,fcn_type,可选_args,ts)gydF4y2Ba
sys = idgrey(odefun,参数,fcn_type,可选_args,ts,名称,值)gydF4y2Ba

描述gydF4y2Ba

sysgydF4y2Ba= idgrey(gydF4y2BaOdefun.gydF4y2Ba,gydF4y2Ba参数gydF4y2Ba,gydF4y2Bafcn_typegydF4y2Ba)gydF4y2Ba创建具有可识别参数的线性灰度框模型,gydF4y2BasysgydF4y2Ba.gydF4y2BaOdefun.gydF4y2Ba指定与模型参数相关的用户定义函数,gydF4y2Ba参数gydF4y2Ba,其国有空间表示。gydF4y2Ba

sysgydF4y2Ba= idgrey(gydF4y2BaOdefun.gydF4y2Ba,gydF4y2Ba参数gydF4y2Ba,gydF4y2Bafcn_typegydF4y2Ba,gydF4y2Ba可选_ arting_args.gydF4y2Ba)gydF4y2Ba使用可选参数使用所需的参数创建线性灰度框模型gydF4y2BaOdefun.gydF4y2Ba.gydF4y2Ba

sysgydF4y2Ba= idgrey(gydF4y2BaOdefun.gydF4y2Ba,gydF4y2Ba参数gydF4y2Ba,gydF4y2Bafcn_typegydF4y2Ba,gydF4y2Ba可选_ arting_args.gydF4y2Ba,gydF4y2BaTsgydF4y2Ba)gydF4y2Ba在指定的采样时间内,创建具有可识别参数的线性灰箱模型,gydF4y2BaTsgydF4y2Ba.gydF4y2Ba

sysgydF4y2Ba= idgrey(gydF4y2BaOdefun.gydF4y2Ba,gydF4y2Ba参数gydF4y2Ba,gydF4y2Bafcn_typegydF4y2Ba,gydF4y2Ba可选_ arting_args.gydF4y2Ba,gydF4y2BaTsgydF4y2Ba,gydF4y2Ba名称,价值gydF4y2Ba)gydF4y2Ba创建具有可识别参数的线性灰度框模型,具有一个或多个指定的附加选项gydF4y2Ba名称,价值gydF4y2Ba对论点。gydF4y2Ba

对象描述gydF4y2Ba

一个gydF4y2BaidgreygydF4y2Ba模型表示作为连续时间或离散时间的状态空间模型的系统,具有可识别(可估计)系数。gydF4y2Ba

具有输入向量的系统的状态模型,gydF4y2BaugydF4y2Ba,输出矢量,gydF4y2BaygydF4y2Ba和干扰,gydF4y2BaegydF4y2Ba,在连续时间下为:gydF4y2Ba

xgydF4y2Ba ˙gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba 一个gydF4y2Ba xgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba +gydF4y2Ba BgydF4y2Ba ugydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba +gydF4y2Ba KgydF4y2Ba egydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba ygydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba CgydF4y2Ba xgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba +gydF4y2Ba DgydF4y2Ba ugydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba +gydF4y2Ba egydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba

在离散时间内,状态空间模型采用表格:gydF4y2Ba

xgydF4y2Ba [gydF4y2Ba kgydF4y2Ba +gydF4y2Ba 1gydF4y2Ba ]gydF4y2Ba =gydF4y2Ba 一个gydF4y2Ba xgydF4y2Ba [gydF4y2Ba kgydF4y2Ba ]gydF4y2Ba +gydF4y2Ba BgydF4y2Ba ugydF4y2Ba [gydF4y2Ba kgydF4y2Ba ]gydF4y2Ba +gydF4y2Ba KgydF4y2Ba egydF4y2Ba [gydF4y2Ba kgydF4y2Ba ]gydF4y2Ba ygydF4y2Ba [gydF4y2Ba kgydF4y2Ba ]gydF4y2Ba =gydF4y2Ba CgydF4y2Ba xgydF4y2Ba [gydF4y2Ba kgydF4y2Ba ]gydF4y2Ba +gydF4y2Ba DgydF4y2Ba ugydF4y2Ba [gydF4y2Ba kgydF4y2Ba ]gydF4y2Ba +gydF4y2Ba egydF4y2Ba [gydF4y2Ba kgydF4y2Ba ]gydF4y2Ba

为gydF4y2BaidgreygydF4y2Ba模型,状态空间矩阵gydF4y2Ba一个gydF4y2Ba,gydF4y2BaBgydF4y2Ba,gydF4y2BaCgydF4y2Ba, 和gydF4y2BaDgydF4y2Ba用matlab表示为用户定义参数的函数gydF4y2Ba®gydF4y2Ba功能。使用使用估计参数gydF4y2Basys.Structures.ParametersgydF4y2Ba,在那里gydF4y2BasysgydF4y2Ba是一个gydF4y2BaidgreygydF4y2Ba模型。gydF4y2Ba

用A.gydF4y2BaidgreygydF4y2Ba模型当您明确了解系统动态的方程式。您应该能够以常规或差分方程的形式表达这些动态。您可以通过结构化状态空间模型指定无法完成的参数之间的复杂关系和约束(gydF4y2Ba中的难点gydF4y2Ba).gydF4y2Ba

你可以创建一个gydF4y2BaidgreygydF4y2Ba模型使用gydF4y2BaidgreygydF4y2Ba命令。为此,请写出返回的matlab函数gydF4y2Ba一个gydF4y2Ba,gydF4y2BaBgydF4y2Ba,gydF4y2BaCgydF4y2Ba, 和gydF4y2BaDgydF4y2Ba矩阵给定可估计参数和采样时间的值。Matlab功能也可以返回gydF4y2BaKgydF4y2Ba矩阵并接受可选的输入参数。返回的矩阵可以表示连续时间或离散时间模型,由样本时间表示。gydF4y2Ba

使用估算函数gydF4y2BaPEM.gydF4y2Ba要么gydF4y2Ba感动的gydF4y2Ba的未知参数的估计值gydF4y2BaidgreygydF4y2Ba模型。gydF4y2Ba

您可以将gydF4y2BaidgreygydF4y2Ba模型进入其他动态系统,如gydF4y2BaIdpoly.gydF4y2Ba,gydF4y2Ba中的难点gydF4y2Ba,gydF4y2Ba特遣部队gydF4y2Ba,gydF4y2Ba党卫军gydF4y2Ba等等。您无法将动态系统转换为gydF4y2BaidgreygydF4y2Ba模型。gydF4y2Ba

例子gydF4y2Ba

全部收缩gydF4y2Ba

创建一个gydF4y2BaidgreygydF4y2Ba模型代表直流电机。将电机时间常数指定为可估计参数,并且ode函数可以返回连续或离散时间空间矩阵。gydF4y2Ba

创造gydF4y2BaidgreygydF4y2Ba模型。gydF4y2Ba

odefun =gydF4y2Ba'motordynamics'gydF4y2Ba;参数= 1;fcn_type =gydF4y2Ba“cd”gydF4y2Ba;可选_args = 0.25;ts = 0;sys = idgrey(odefun,参数,fcn_type,optional_args,ts);gydF4y2Ba

sysgydF4y2Ba是一个gydF4y2BaidgreygydF4y2Ba配置为使用已发货文件的模型gydF4y2Bamotordynamics.mgydF4y2Ba返回gydF4y2Ba 一个gydF4y2Ba ,gydF4y2Ba BgydF4y2Ba ,gydF4y2Ba CgydF4y2Ba ,gydF4y2Ba DgydF4y2Ba , 和gydF4y2Ba KgydF4y2Ba 矩阵。gydF4y2Bamotordynamics.mgydF4y2Ba还返回初始条件,gydF4y2Ba XgydF4y2Ba 0gydF4y2Ba .电机常数,gydF4y2Ba τ.gydF4y2Ba ,定义在gydF4y2Bamotordynamics.mgydF4y2Ba作为一个可估计的参数gydF4y2Ba参数= 1gydF4y2Ba指定初始值为1。gydF4y2Ba

您可以使用gydF4y2BaPEM.gydF4y2Ba要么gydF4y2Ba感动的gydF4y2Ba来精确估计gydF4y2Ba τ.gydF4y2Ba .gydF4y2Ba

为估计指定灰度框模型的已知参数。还指定可估计参数的最小绑定。gydF4y2Ba

创建一个ode文件,该ode文件将摆模型系数与其状态空间表示相关。保存此功能gydF4y2Balinearpendulum.m.gydF4y2Ba使其在MATLAB®中搜索路径。gydF4y2Ba

功能gydF4y2Ba[A,B,C,D] =线性摆(m,g,l, B, Ts)- g / l - b / m / l ^ 2);B = 0 (2,0);C = [1 0];D = 0 (1,0);gydF4y2Ba结尾gydF4y2Ba

在此功能中:gydF4y2Ba

  • 米gydF4y2Ba为摆质量。gydF4y2Ba

  • ggydF4y2Ba是引力加速度。gydF4y2Ba

  • lgydF4y2Ba为摆长。gydF4y2Ba

  • bgydF4y2Ba是粘性摩擦系数。gydF4y2Ba

  • TsgydF4y2Ba是模型采样时间。gydF4y2Ba

创建一个与ODE函数相关联的线性灰盒模型。gydF4y2Ba

odefun =gydF4y2Ba“LinearPendulum”gydF4y2Ba;m = 1;g = 9.81;l = 1;B = 0.2;参数= {gydF4y2Ba'大量的'gydF4y2Bam;gydF4y2Ba“重力”gydF4y2Ba,G;gydF4y2Ba'长度'gydF4y2Bal;gydF4y2Ba“摩擦”gydF4y2Bab};fcn_type =gydF4y2Ba“c”gydF4y2Ba;sys = idgrey (odefun、参数fcn_type);gydF4y2Ba

sysgydF4y2Ba有四个参数。gydF4y2Ba

指定已知参数,gydF4y2Ba米gydF4y2Ba,gydF4y2BaggydF4y2Ba, 和gydF4y2BalgydF4y2Ba,正如估计所固定的那样。gydF4y2Ba

sys.Structure.Parameters(1)。自由= false;sys.Structure.Parameters(2)。自由= false;sys.Structure.Parameters(3)。自由= false;gydF4y2Ba

米gydF4y2Ba,gydF4y2BaggydF4y2Ba, 和gydF4y2BalgydF4y2Ba的前三个参数是gydF4y2BasysgydF4y2Ba.gydF4y2Ba

指定零个小界限gydF4y2BabgydF4y2Ba,第四个参数gydF4y2BasysgydF4y2Ba.gydF4y2Ba

sys.Structure.Parameters(4)。最小值= 0;gydF4y2Ba

类似地,要指定可估计参数的上界,使用gydF4y2Ba最大gydF4y2Ba参数的字段。gydF4y2Ba

使用可识别参数创建灰度盒模型。命名模型的输入和输出通道,并指定模型时间单位的秒数。gydF4y2Ba

采用gydF4y2Ba名称,价值gydF4y2Ba对参数进行配对,以在模型创建时指定附加的模型属性。gydF4y2Ba

odefun =gydF4y2Ba'motordynamics'gydF4y2Ba;参数= 1;fcn_type =gydF4y2Ba“cd”gydF4y2Ba;可选_args = 0.25;ts = 0;sys = idgrey(odefun,parameters,fcn_type,可选_args,ts,gydF4y2Ba'InputName'gydF4y2Ba,gydF4y2Ba“电压”gydF4y2Ba,gydF4y2Ba...gydF4y2Ba“OutputName”gydF4y2Ba,{gydF4y2Ba角位置的gydF4y2Ba,gydF4y2Ba'角速度'gydF4y2Ba});gydF4y2Ba

要更改或指定现有模型的更多属性,可以使用点表示法。例如:gydF4y2Ba

sys。TimeUnit =“秒”;gydF4y2Ba

使用gydF4y2Ba堆栈gydF4y2Ba命令创建一个线性灰度框模型数组。gydF4y2Ba

odefun1 = @motorDynamics;Parameters1 = [1 2];fcn_type =gydF4y2Ba“cd”gydF4y2Ba;可选_args1= 1;sys1 = idgrey(odefun1,parameters1,fcn_type,optional_args1);odefun2 =gydF4y2Ba'motordynamics'gydF4y2Ba;Parameters2 = {[1 2]};optional_args2 = 0.5;sys2 = idgrey (odefun2 parameters2、fcn_type optional_args2);sysarr =堆栈(1 sys1 sys2);gydF4y2Ba

堆栈gydF4y2Ba创建一个2×1阵列gydF4y2BaidgreygydF4y2Ba楷模,gydF4y2BaSYSARR.gydF4y2Ba.gydF4y2Ba

输入参数gydF4y2Ba

Odefun.gydF4y2Ba

将模型参数与其状态空间表示联系起来的MATLAB函数。gydF4y2Ba

Odefun.gydF4y2Ba指定MATLAB函数的名称(。M, .p,函数句柄或.mex*文件)。该函数建立模型参数之间的关系,gydF4y2Ba参数gydF4y2Ba,及其国家空间表示。该功能可以可选地将模型参数与干扰矩阵和初始状态相关联。gydF4y2Ba

如果函数不在MATLAB路径上,则指定完整的文件名,包括路径。gydF4y2Ba

的语法gydF4y2BaOdefun.gydF4y2Ba必须如下:gydF4y2Ba

[A,B,C,D] = ODEFUN(PAR1,PAR2,...,PARN,TS,Optional_arg1,Optional_arg2,...)gydF4y2Ba

函数输出描述了以下线性状态空间创新的模型:gydF4y2Ba

xgydF4y2Ba ngydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba 一个gydF4y2Ba xgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba +gydF4y2Ba BgydF4y2Ba ugydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba +gydF4y2Ba KgydF4y2Ba egydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba ;gydF4y2Ba xgydF4y2Ba (gydF4y2Ba 0gydF4y2Ba )gydF4y2Ba =gydF4y2Ba xgydF4y2Ba 0gydF4y2Ba ygydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba CgydF4y2Ba xgydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba +gydF4y2Ba DgydF4y2Ba ugydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba +gydF4y2Ba egydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba

在离散时间gydF4y2BaxngydF4y2Ba(gydF4y2BatgydF4y2Ba)=gydF4y2BaxgydF4y2Ba(gydF4y2BatgydF4y2Ba+gydF4y2BaTsgydF4y2Ba),在连续时间内,gydF4y2Ba xgydF4y2Ba ngydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba =gydF4y2Ba xgydF4y2Ba ˙gydF4y2Ba (gydF4y2Ba tgydF4y2Ba )gydF4y2Ba .gydF4y2Ba

Par1,Par2,...,ParngydF4y2Ba是模型参数。每个条目可以是标量,矢量或矩阵。gydF4y2Ba

TsgydF4y2Ba是采样时间。gydF4y2Ba

optional_arg1, optional_arg2,…gydF4y2Ba是可选的输入gydF4y2BaOdefun.gydF4y2Ba可能需要。可选输入参数的值在估计过程中不会发生变化。然而,价值gydF4y2BaPar1,Par2,...,ParngydF4y2Ba在估计期间更新以适合数据。使用可选的输入参数可以在不编辑的情况下改变模型使用的常量和系数gydF4y2BaOdefun.gydF4y2Ba.gydF4y2Ba

干扰矩阵,gydF4y2BaKgydF4y2Ba,和初始状态值,gydF4y2Bax0gydF4y2Ba,不是参数化的。这些值是单独确定的,使用gydF4y2BaDisturbanceModelgydF4y2Ba和gydF4y2BaInitimstate.gydF4y2Ba分别估算选项。有关估算选项的更多信息,请参阅gydF4y2BagreyestOptionsgydF4y2Ba.gydF4y2Ba

实现最佳模拟结果的一个很好的选择是设置gydF4y2BaDisturbanceModelgydF4y2Ba选择gydF4y2Ba'没有任何'gydF4y2Ba,它修复了gydF4y2BaKgydF4y2Ba零。gydF4y2Ba

(可选)参数化干扰:gydF4y2BaOdefun.gydF4y2Ba还可以返回干扰组件,gydF4y2BaKgydF4y2Ba,使用语法:gydF4y2Ba

[a,b,c,d,k] = odefun(par1,par2,...,parn,ts,optional_arg1,optional_arg2,...)gydF4y2Ba

如果gydF4y2BaOdefun.gydF4y2Ba返回gydF4y2BaKgydF4y2Ba包含gydF4y2Ba南gydF4y2Ba值,然后估计函数假定gydF4y2BaKgydF4y2Ba不是参数化。在这种情况下,值的值gydF4y2BaDisturbanceModelgydF4y2Ba评估选项决定了gydF4y2BaKgydF4y2Ba被处理。gydF4y2Ba

(可选)参数化初始状态值:使模型初始状态,gydF4y2BaX0gydF4y2Ba,依赖于模型参数,使用以下语法gydF4y2BaOdefun.gydF4y2Ba:gydF4y2Ba

[a,b,c,d,k,x0] = odefun(par1,par2,...,parn,ts,optional_arg1,optional_arg2,...)gydF4y2Ba

如果gydF4y2BaOdefun.gydF4y2Ba返回gydF4y2BaX0gydF4y2Ba包含gydF4y2Ba南gydF4y2Ba值,然后估计函数假定gydF4y2BaX0gydF4y2Ba不是参数化。在这种情况下,gydF4y2BaX0gydF4y2Ba可以使用该可以固定为零或估计gydF4y2BaInitialStatesgydF4y2Ba估计的选择。gydF4y2Ba

参数gydF4y2Ba

所需参数的初值gydF4y2BaOdefun.gydF4y2Ba.gydF4y2Ba

指定gydF4y2Ba参数gydF4y2Ba作为包含参数初始值的单元格数组。如果您的模型只需要一个参数,它本身可能是一个向量或矩阵,您可以指定gydF4y2Ba参数gydF4y2Ba作为一个矩阵。gydF4y2Ba

也可以使用gydF4y2BaNgydF4y2Ba-by-2 cell arraygydF4y2BaNgydF4y2Ba为参数个数。第一列指定名称,第二列指定参数的值。gydF4y2Ba

例如:gydF4y2Ba

参数={‘质量’,par1;刚度,par2;“阻尼”,par3}gydF4y2Ba

fcn_typegydF4y2Ba

指示模型是否在连续时间,离散时间或两者中参数化。gydF4y2Ba

fcn_typegydF4y2Ba需要以下值之一:gydF4y2Ba

  • “c”gydF4y2Ba- - - - - -gydF4y2BaOdefun.gydF4y2Ba无论值如何,返回与连续时间系统相对应的矩阵gydF4y2BaTsgydF4y2Ba.gydF4y2Ba

  • ' d 'gydF4y2Ba- - - - - -gydF4y2BaOdefun.gydF4y2Ba返回对应于离散时间系统的矩阵,其值可以依赖于,也可以不依赖于gydF4y2BaTsgydF4y2Ba.gydF4y2Ba

  • “cd”gydF4y2Ba- - - - - -gydF4y2BaOdefun.gydF4y2Ba返回与连续时间系统相对应的矩阵,如果gydF4y2Bat = 0gydF4y2Ba.gydF4y2Ba

    否则,如果gydF4y2Bat > 0gydF4y2Ba,gydF4y2BaOdefun.gydF4y2Ba返回对应于离散时间系统的矩阵。选择此选项以使用返回的值来对模型进行采样gydF4y2BaOdefun.gydF4y2Ba,而不是使用软件内部的示例时间转换例程。gydF4y2Ba

可选_ arting_args.gydF4y2Ba

所需的可选输入参数gydF4y2BaOdefun.gydF4y2Ba.gydF4y2Ba

指定gydF4y2Ba可选_ arting_args.gydF4y2Ba作为单元阵列。gydF4y2Ba

如果gydF4y2BaOdefun.gydF4y2Ba不需要可选的输入参数,请指定gydF4y2Ba可选_ arting_args.gydF4y2Ba作为gydF4y2Ba{}gydF4y2Ba.gydF4y2Ba

TsgydF4y2Ba

模型采样时间。gydF4y2Ba

如果gydF4y2BaTsgydF4y2Ba未指定,假设是:gydF4y2Ba

  • -1gydF4y2Ba——如果gydF4y2Bafcn_typegydF4y2Ba是gydF4y2Ba' d 'gydF4y2Ba要么gydF4y2Ba“cd”gydF4y2Ba.gydF4y2Ba

    ts = -1gydF4y2Ba表示采样时间未知的离散时间模型。gydF4y2Ba

  • 0gydF4y2Ba——如果gydF4y2Bafcn_typegydF4y2Ba是gydF4y2Ba“c”gydF4y2Ba.gydF4y2Ba

    TS = 0.gydF4y2Ba连续时间模型。gydF4y2Ba

名称,价值gydF4y2Ba

指定可选的逗号分离对gydF4y2Ba名称,价值gydF4y2Ba参数,在哪里gydF4y2Ba的名字gydF4y2Ba是参数名称和gydF4y2Ba价值gydF4y2Ba是相应的价值。gydF4y2Ba的名字gydF4y2Ba必须出现在单引号内(gydF4y2Ba' 'gydF4y2Ba).可以以任意顺序指定多个名称和值对参数gydF4y2Baname1,value1,...,namen,valuengydF4y2Ba.gydF4y2Ba

采用gydF4y2Ba名称,价值gydF4y2Ba指定其他属性的参数gydF4y2BaidgreygydF4y2Ba模型创建期间的模型。例如,gydF4y2Baidgrey (odefun参数、fcn_type“InputName”、“电压”)gydF4y2Ba创建一个gydF4y2BaidgreygydF4y2Ba模型与gydF4y2BaInputNamegydF4y2Ba物业设为gydF4y2Ba电压gydF4y2Ba.gydF4y2Ba

属性gydF4y2Ba

idgreygydF4y2Ba对象属性包括:gydF4y2Ba

A, B, C, DgydF4y2Ba

状态空间矩阵的值。gydF4y2Ba

  • 一个gydF4y2Ba——状态矩阵gydF4y2Ba一个gydF4y2Ba,一个gydF4y2BaNX.gydF4y2Ba-经过-gydF4y2BaNX.gydF4y2Ba矩阵,由与之相关的颂歌函数返回gydF4y2BaidgreygydF4y2Ba模型。gydF4y2BaNX.gydF4y2Ba是州的数量。gydF4y2Ba

  • BgydF4y2Ba- 输入到状态矩阵gydF4y2BaBgydF4y2Ba,一个gydF4y2BaNX.gydF4y2Ba-经过-gydF4y2Banu.gydF4y2Ba矩阵,由与之相关的颂歌函数返回gydF4y2BaidgreygydF4y2Ba模型。gydF4y2Banu.gydF4y2Ba输入和的数量是多少gydF4y2BaNX.gydF4y2Ba是州的数量。gydF4y2Ba

  • CgydF4y2Ba- 状态为输出矩阵gydF4y2BaCgydF4y2Ba,一个gydF4y2Ba纽约gydF4y2Ba-经过-gydF4y2BaNX.gydF4y2Ba矩阵,由与之相关的颂歌函数返回gydF4y2BaidgreygydF4y2Ba模型。gydF4y2BaNX.gydF4y2Ba状态数是和吗gydF4y2Ba纽约gydF4y2Ba为输出数。gydF4y2Ba

  • DgydF4y2Ba——直通的矩阵gydF4y2BaDgydF4y2Ba,一个gydF4y2Ba纽约gydF4y2Ba-经过-gydF4y2Banu.gydF4y2Ba矩阵,由与之相关的颂歌函数返回gydF4y2BaidgreygydF4y2Ba模型。gydF4y2Ba纽约gydF4y2Ba输出的数量是和吗gydF4y2Banu.gydF4y2Ba为输入的个数。gydF4y2Ba

的值gydF4y2BaA, B, C, DgydF4y2Ba由与之相关的ode函数返回gydF4y2BaidgreygydF4y2Ba模型。因此,您只能读取这些矩阵;您不能设置它们的值。gydF4y2Ba

KgydF4y2Ba

状态扰动矩阵的价值,gydF4y2BaKgydF4y2Ba

KgydF4y2Ba是gydF4y2BaNX.gydF4y2Ba-经过-gydF4y2Ba纽约gydF4y2Ba矩阵,其中gydF4y2BaNX.gydF4y2Ba状态数是和吗gydF4y2Ba纽约gydF4y2Ba为输出数。gydF4y2Ba

  • 如果gydF4y2BaOdefun.gydF4y2Ba参数化的gydF4y2BaKgydF4y2Ba矩阵,然后gydF4y2BaKgydF4y2Ba是否返回值为gydF4y2BaOdefun.gydF4y2Ba.gydF4y2BaOdefun.gydF4y2Ba参数化的gydF4y2BaKgydF4y2Ba如果返回至少5个输出且第5个输出的值不包含,则返回矩阵gydF4y2Ba南gydF4y2Ba值。gydF4y2Ba

  • 如果gydF4y2BaOdefun.gydF4y2Ba不参数化gydF4y2BaKgydF4y2Ba矩阵,然后gydF4y2BaKgydF4y2Ba零矩阵的大小是多少gydF4y2BaNX.gydF4y2Ba-经过-gydF4y2Ba纽约gydF4y2Ba.gydF4y2BaNX.gydF4y2Ba状态数是和吗gydF4y2Ba纽约gydF4y2Ba为输出数。该值被视为固定值gydF4y2BaKgydF4y2Ba估计期间的矩阵。要使值估计,请使用gydF4y2BaDisturbanceModelgydF4y2Ba估计的选择。gydF4y2Ba

  • 无论是否gydF4y2BaKgydF4y2Ba矩阵由参数化gydF4y2BaOdefun.gydF4y2Ba与否,您可以设置值的值gydF4y2BaKgydF4y2Ba财产明确为gydF4y2BaNX.gydF4y2Ba-经过-gydF4y2Ba纽约gydF4y2Ba矩阵。gydF4y2BaNX.gydF4y2Ba状态数是和吗gydF4y2Ba纽约gydF4y2Ba为输出数。属性的指定值被视为固定值gydF4y2BaKgydF4y2Ba估计期间的矩阵。要使值估计,请使用gydF4y2BaDisturbanceModelgydF4y2Ba估计的选择。gydF4y2Ba

创建评估选项集gydF4y2BaidgreygydF4y2Ba模型,使用gydF4y2BagreyestOptionsgydF4y2Ba.gydF4y2Ba

attnename.gydF4y2Ba

状态名称,指定为以下之一:gydF4y2Ba

  • 字符向量 - 对于一阶模型,例如,gydF4y2Ba“速度”gydF4y2Ba.gydF4y2Ba

  • 字符向量单元阵列-用于具有两个或多个状态的模型gydF4y2Ba

  • ''gydF4y2Ba-无名州。gydF4y2Ba

默认值:gydF4y2Ba''gydF4y2Ba对于所有国家gydF4y2Ba

StateUnitgydF4y2Ba

状态单位,指定为以下之一:gydF4y2Ba

  • 字符向量 - 对于一阶模型,例如,gydF4y2Ba“速度”gydF4y2Ba

  • 字符向量单元阵列-用于具有两个或多个状态的模型gydF4y2Ba

  • ''gydF4y2Ba—不指定单位的状态gydF4y2Ba

采用gydF4y2BaStateUnitgydF4y2Ba为了跟踪每个状态的单位。gydF4y2BaStateUnitgydF4y2Ba对系统行为没有影响。gydF4y2Ba

默认值:gydF4y2Ba''gydF4y2Ba对于所有国家gydF4y2Ba

结构gydF4y2Ba

有关估计参数的信息gydF4y2BaidgreygydF4y2Ba模型。gydF4y2Ba

结构gydF4y2Ba存储关于参数化的MATLAB函数的信息gydF4y2BaidgreygydF4y2Ba模型。gydF4y2Ba

  • 结构。函数gydF4y2Ba- 用于创建的MATLAB函数的名称或函数句柄gydF4y2BaidgreygydF4y2Ba模型。gydF4y2Ba

  • 结构。功能gydF4y2Ba—表示模型是在连续时间、离散时间或两者中参数化。gydF4y2Ba

  • 结构。参数gydF4y2Ba- 有关估计参数的信息。gydF4y2Ba结构。参数gydF4y2Ba包含以下字段:gydF4y2Ba

    • 价值gydF4y2Ba- 参数值。例如,gydF4y2Basys.structure.Parameters(2).ValuegydF4y2Ba包含第二个参数的初始或估计值。gydF4y2Ba

      南gydF4y2Ba表示未知的参数值。gydF4y2Ba

    • 最低限度gydF4y2Ba- 参数在估计期间可以假设的最小值。例如,gydF4y2Basys.Structure.Parameters(1)。最小值= 0gydF4y2Ba将第一个参数约束为大于或等于零。gydF4y2Ba

    • 最大gydF4y2Ba- 参数在估计期间可以假设的最大值。gydF4y2Ba

    • 免费的gydF4y2Ba-布尔值,指定参数是否可估计。如果您想在估计期间固定参数的值,请设置gydF4y2Ba免费=假gydF4y2Ba对于相应的条目。gydF4y2Ba

    • 规模gydF4y2Ba—参数值的大小。gydF4y2Ba规模gydF4y2Ba不用于估计。gydF4y2Ba

    • 信息gydF4y2Ba—结构数组,用于存储参数单元和标签。的结构gydF4y2Ba标签gydF4y2Ba和gydF4y2Ba单元gydF4y2Ba字段。gydF4y2Ba

      将参数单位指定为字符向量。例如,gydF4y2Ba“时间”gydF4y2Ba.gydF4y2Ba

  • structure.extraguments.gydF4y2Ba- ode函数所需的可选输入参数。gydF4y2Ba

  • structs.statename.gydF4y2Ba—模型状态的名称。gydF4y2Ba

  • structure.stateunit.gydF4y2Ba-模型状态的单位。gydF4y2Ba

NoiseVariancegydF4y2Ba

模型创新的方差(协方差矩阵),gydF4y2BaegydF4y2Ba.gydF4y2Ba

一个识别的模型包括一个白色的高斯噪声成分,gydF4y2BaegydF4y2Ba(gydF4y2BatgydF4y2Ba).gydF4y2BaNoiseVariancegydF4y2Ba是这个噪声分量的方差。通常,模型估计函数(如greyest或pem)决定了这个方差。gydF4y2Ba

对于SISO模型,gydF4y2BaNoiseVariancegydF4y2Ba是一个标量。对MIMO模型,gydF4y2BaNoiseVariancegydF4y2Ba是一个gydF4y2Ba纽约gydF4y2Ba-经过-gydF4y2Ba纽约gydF4y2Ba矩阵,其中gydF4y2Ba纽约gydF4y2Ba是系统中的输出数。gydF4y2Ba

报告gydF4y2Ba

摘要报告包含有关估计选项的信息和使用灰度框模型获取使用的结果gydF4y2Ba感动的gydF4y2Ba估计命令。采用gydF4y2Ba报告gydF4y2Ba查询估计的型号,包括其:gydF4y2Ba

  • 估算方法gydF4y2Ba

  • 估计选项gydF4y2Ba

  • 搜索终止条件gydF4y2Ba

  • 评估数据匹配和其他质量度量gydF4y2Ba

内容gydF4y2Ba报告gydF4y2Ba如果模型是由施工创造的,则是无关紧要的。gydF4y2Ba

odefun =gydF4y2Ba'motordynamics'gydF4y2Ba;m = idgrey (odefun 1gydF4y2Ba“cd”gydF4y2Ba, 0.25, 0);m.Report.OptionsUsedgydF4y2Ba
ans = []gydF4y2Ba

如果使用估计命令获得灰度框模型,则gydF4y2Ba报告gydF4y2Ba包含关于估计数据、选项和结果的信息。gydF4y2Ba

加载(全氟(MatlaBroot,gydF4y2Ba'工具箱'gydF4y2Ba,gydF4y2Ba'ident'gydF4y2Ba,gydF4y2Ba'Iddemos'gydF4y2Ba,gydF4y2Ba'数据'gydF4y2Ba,gydF4y2Ba“dcmotordata”gydF4y2Ba));数据= IDDATA(Y,U,0.1,gydF4y2Ba“名字”gydF4y2Ba,gydF4y2Ba'直流电机'gydF4y2Ba);odefun =gydF4y2Ba'motordynamics'gydF4y2Ba;init_sys = idgrey (gydF4y2Ba'motordynamics'gydF4y2Ba,1,gydF4y2Ba“cd”gydF4y2Ba, 0.25, 0);m =老龄化最严重的(数据,init_sys);m.Report.OptionsUsedgydF4y2Ba
InitialState:'auto'diskancemodel:'auto'焦点:'预测'extentecovariance:1显示:'关闭'informoffset:[]输出Offoffset:[]正规化:[1x1 struct]输出量:[] searchmethod:'auto'searchOptions:[1x1iDoptions.Search.Identsolver]高级:[1x1 struct]gydF4y2Ba

报告gydF4y2Ba是只读属性。gydF4y2Ba

有关此属性的更多信息以及如何使用它,请参阅相应估计命令参考页面的输出参数部分和gydF4y2Ba评估报告gydF4y2Ba.gydF4y2Ba

InputDelaygydF4y2Ba

每个输入通道的输入延迟,指定为标量值或数字向量。对于连续时间系统,在存储的时间单元中指定输入延迟gydF4y2Ba时髦gydF4y2Ba财产。对于离散时间系统,以采样时间的整数倍指定输入延迟gydF4y2BaTsgydF4y2Ba.例如,gydF4y2BaInputDelay = 3gydF4y2Ba意味着延迟三个样本时间。gydF4y2Ba

对于一个系统gydF4y2Banu.gydF4y2Ba输入,设置gydF4y2BaInputDelaygydF4y2Ba对A.gydF4y2Banu.gydF4y2Ba1的向量。这个向量的每一项都是一个数值,表示对应输入通道的输入延迟。gydF4y2Ba

你也可以设置gydF4y2BaInputDelaygydF4y2Ba对标量值对所有通道应用相同的延迟。gydF4y2Ba

默认值:gydF4y2Ba0gydF4y2Ba

OutputDelaygydF4y2Ba

输出延迟。gydF4y2Ba

对于所识别的系统,就像gydF4y2BaidgreygydF4y2Ba,gydF4y2BaOutputDelaygydF4y2Ba固定为零。gydF4y2Ba

TsgydF4y2Ba

样品时间。gydF4y2Ba

对于连续时间模型,gydF4y2BaTS = 0.gydF4y2Ba.对于离散时间模型,gydF4y2BaTsgydF4y2Ba表示样本时间的正标量是否以指定的单位表示gydF4y2Ba时髦gydF4y2Ba模型的财产。表示具有未指定采样时间的离散时间模型,设置gydF4y2Bats = -1gydF4y2Ba.gydF4y2Ba

更改此属性不会离散或重新取样模型。gydF4y2Ba

为gydF4y2BaidgreygydF4y2Ba模型,没有唯一的默认值gydF4y2BaTsgydF4y2Ba.gydF4y2BaTsgydF4y2Ba取决于价值gydF4y2Bafcn_typegydF4y2Ba.gydF4y2Ba

时髦gydF4y2Ba

单位为时间变量,即样本时间gydF4y2BaTsgydF4y2Ba,以及模型中的任何时间延迟,指定为以下值之一:gydF4y2Ba

  • '纳秒'gydF4y2Ba

  • 微秒的gydF4y2Ba

  • '毫秒'gydF4y2Ba

  • “秒”gydF4y2Ba

  • “分钟”gydF4y2Ba

  • “小时”gydF4y2Ba

  • “天”gydF4y2Ba

  • “周”gydF4y2Ba

  • “月”gydF4y2Ba

  • “年”gydF4y2Ba

更改此属性对其他属性没有影响,因此更改整体系统行为。采用gydF4y2BachgtimeUnit.gydF4y2Ba(控制系统工具箱)gydF4y2Ba在不修改系统行为的情况下在时间单位之间转换。gydF4y2Ba

默认值:gydF4y2Ba“秒”gydF4y2Ba

InputNamegydF4y2Ba

输入通道名称,指定为下列之一:gydF4y2Ba

  • 字符矢量 - 对于单输入模型,例如,gydF4y2Ba“控制”gydF4y2Ba.gydF4y2Ba

  • 字符向量单元阵列 - 用于多输入模型。gydF4y2Ba

或者,使用自动向量展开为多输入模型分配输入名称。例如,如果gydF4y2BasysgydF4y2Ba是一个双输入模型,输入:gydF4y2Ba

sys.InputName ='控件';gydF4y2Ba

输入名称自动展开gydF4y2Ba{'控件(1)';'控件(2)'}gydF4y2Ba.gydF4y2Ba

当您使用一个估计模型时gydF4y2Baiddata.gydF4y2Ba目的,gydF4y2Ba数据gydF4y2Ba,软件自动设置gydF4y2BaInputNamegydF4y2Ba来gydF4y2Badata.InputName.gydF4y2Ba.gydF4y2Ba

您可以使用速记表示法gydF4y2BaugydF4y2Ba参考gydF4y2BaInputNamegydF4y2Ba财产。例如,gydF4y2Basys.ugydF4y2Ba相当于gydF4y2Basys.inputname.gydF4y2Ba.gydF4y2Ba

输入通道名称具有多种用途,包括:gydF4y2Ba

  • 在模型显示和图表上识别通道gydF4y2Ba

  • 提取MIMO系统子系统gydF4y2Ba

  • 在连接模型时指定连接点gydF4y2Ba

默认值:gydF4y2Ba''gydF4y2Ba对于所有输入通道gydF4y2Ba

InpoinUnit.gydF4y2Ba

输入通道单位,指定为下列单位之一:gydF4y2Ba

  • 字符矢量 - 对于单输入模型,例如,gydF4y2Ba“秒”gydF4y2Ba.gydF4y2Ba

  • 字符向量单元阵列 - 用于多输入模型。gydF4y2Ba

采用gydF4y2BaInpoinUnit.gydF4y2Ba跟踪输入信号单元。gydF4y2BaInpoinUnit.gydF4y2Ba对系统行为没有影响。gydF4y2Ba

默认值:gydF4y2Ba''gydF4y2Ba对于所有输入通道gydF4y2Ba

InputGroup.gydF4y2Ba

输入通道组。的gydF4y2BaInputGroup.gydF4y2Ba属性允许您将MIMO Systems的输入通道分配成组,然后通过名称引用每个组。将输入组指定为结构。在此结构中,字段名称是组名,字段值是属于每个组的输入通道。例如:gydF4y2Ba

sys.inputgroup.controls = [1 2];sys.inputgroup.noise = [3 5];gydF4y2Ba

创建名为gydF4y2Ba控制gydF4y2Ba和gydF4y2Ba噪音gydF4y2Ba包括输入通道1,2和3,5。然后,您可以从中提取子系统gydF4y2Ba控制gydF4y2Ba使用以下输出的输入:gydF4y2Ba

sys(:,“控制”)gydF4y2Ba

默认值:gydF4y2Ba没有字段的结构gydF4y2Ba

OutputNamegydF4y2Ba

输出通道名称,指定为以下任意一个:gydF4y2Ba

  • 字符向量-用于单输出模型。例如,gydF4y2Ba'测量'gydF4y2Ba.gydF4y2Ba

  • 字符向量的单元阵列-用于多输出模型。gydF4y2Ba

或者,使用自动向量展开为多输出模型分配输出名称。例如,如果gydF4y2BasysgydF4y2Ba是一个双输出模型,输入:gydF4y2Ba

sys。OutputName =“测量”;gydF4y2Ba

输出名称自动展开gydF4y2Ba{'测量(1)';'测量(2)'}gydF4y2Ba.gydF4y2Ba

当您使用一个估计模型时gydF4y2Baiddata.gydF4y2Ba目的,gydF4y2Ba数据gydF4y2Ba,软件自动设置gydF4y2BaOutputNamegydF4y2Ba来gydF4y2Ba数据。OutputNamegydF4y2Ba.gydF4y2Ba

您可以使用速记表示法gydF4y2BaygydF4y2Ba参考gydF4y2BaOutputNamegydF4y2Ba财产。例如,gydF4y2Basys.ygydF4y2Ba相当于gydF4y2Basys。OutputNamegydF4y2Ba.gydF4y2Ba

输出通道名称有几种用途,包括:gydF4y2Ba

  • 在模型显示和图表上识别通道gydF4y2Ba

  • 提取MIMO系统子系统gydF4y2Ba

  • 在连接模型时指定连接点gydF4y2Ba

默认值:gydF4y2Ba''gydF4y2Ba对于所有输出通道gydF4y2Ba

OutputUnitgydF4y2Ba

输出通道单元,指定为以下之一:gydF4y2Ba

  • 字符向量-用于单输出模型。例如,gydF4y2Ba“秒”gydF4y2Ba.gydF4y2Ba

  • 字符向量的单元阵列-用于多输出模型。gydF4y2Ba

采用gydF4y2BaOutputUnitgydF4y2Ba跟踪输出信号单元。gydF4y2BaOutputUnitgydF4y2Ba对系统行为没有影响。gydF4y2Ba

默认值:gydF4y2Ba''gydF4y2Ba对于所有输出通道gydF4y2Ba

产量组gydF4y2Ba

输出通道组。的gydF4y2Ba产量组gydF4y2Ba属性允许您将MIMO Systems的输出通道分配成组,然后通过名称引用每个组。将输出组指定为结构。在此结构中,字段名称是组名,字段值是属于每个组的输出通道。例如:gydF4y2Ba

sys.outputgroup.temperature = [1];sys.inputgroup.measurement = [3 5];gydF4y2Ba

创建名为的输出组gydF4y2Ba温度gydF4y2Ba和gydF4y2Ba测量gydF4y2Ba分别包括输出通道1、3、5。然后可以从所有的输入中提取子系统gydF4y2Ba测量gydF4y2Ba输出使用:gydF4y2Ba

系统(“测量”,:)gydF4y2Ba

默认值:gydF4y2Ba没有字段的结构gydF4y2Ba

的名字gydF4y2Ba

系统名称,指定为字符向量。例如,gydF4y2Ba'system_1'gydF4y2Ba.gydF4y2Ba

默认值:gydF4y2Ba''gydF4y2Ba

笔记gydF4y2Ba

希望与系统关联的任何文本,存储为字符串或字符向量单元格数组。该属性存储您提供的任何数据类型。例如,如果gydF4y2Basys1gydF4y2Ba和gydF4y2BaSYS2.gydF4y2Ba是动态系统模型,可以设置他们的gydF4y2Ba笔记gydF4y2Ba属性如下:gydF4y2Ba

sys1.notes =.gydF4y2Ba“sys1有一个字符串。”gydF4y2Ba;sys2.notes =.gydF4y2Basys2有一个字符向量。gydF4y2Ba;sys1。笔记SYS2..Notes
Ans = ' sys1 has a string. ' Ans = 'sys2 has a character vector.'gydF4y2Ba

默认值:gydF4y2Ba(0×1的字符串)gydF4y2Ba

用户数据gydF4y2Ba

您要与系统关联的任何类型的数据,指定为任何MATLAB数据类型。gydF4y2Ba

默认值:gydF4y2Ba[]gydF4y2Ba

SamplingGridgydF4y2Ba

用于模型阵列的采样网格,指定为数据结构。gydF4y2Ba

对于通过采样一个或多个独立变量导出的识别线性(IDLTI)模型的阵列,该属性跟踪与每个模型关联的变量值。gydF4y2Ba当您显示或绘制模型数组时,将显示此信息。使用此信息将结果追踪到独立变量。gydF4y2Ba

将数据结构的字段名称设置为采样变量的名称。将字段值设置为与数组中的每个模型关联的采样变量值。所有采样变量都应为数字和标量值,并且所有采样值阵列应匹配模型阵列的尺寸。gydF4y2Ba

例如,如果您在一个系统的不同操作点收集数据,您可以分别为每个操作点标识一个模型,然后将结果堆叠到一个系统数组中。你可以用操作点的信息来标记数组中的各个模型:gydF4y2Ba

nominal_engine_rpm = [1000 5000 10000];sys.samplinggrid = struct(gydF4y2Ba“转”gydF4y2Banominal_engine_rpm)gydF4y2Ba

在哪里gydF4y2BasysgydF4y2Ba是包含在RPM 1000,5000和10000处获得的三个识别模型的阵列。gydF4y2Ba

用于在Simulink中线性化生成的模型阵列金宝appgydF4y2Ba®gydF4y2Ba模型在多个参数值或操作点,软件填充gydF4y2BaSamplingGridgydF4y2Ba自动使用与数组中的每个条目对应的变量值。例如,gydF4y2Ba金宝appSimulink Control Design™gydF4y2Ba命令gydF4y2Ba线性化gydF4y2Ba(金宝app仿真软件控制设计)gydF4y2Ba和gydF4y2BaSLINESERIZER.gydF4y2Ba(金宝app仿真软件控制设计)gydF4y2Ba填充gydF4y2BaSamplingGridgydF4y2Ba以这种方式。gydF4y2Ba

默认值:gydF4y2Ba[]gydF4y2Ba

在R2006A之前介绍gydF4y2Ba