主要内容gydF4y2Ba

idnlhw / findopgydF4y2Ba

计算Hammerstein-Wiener模型的工作点gydF4y2Ba

描述gydF4y2Ba

例子gydF4y2Ba

[gydF4y2BaXgydF4y2Ba,gydF4y2BaUgydF4y2Ba) = findop (gydF4y2BaSYS.gydF4y2Ba,'稳定的',gydF4y2BaInpeplevel.gydF4y2Ba,gydF4y2Ba输出电平gydF4y2Ba)gydF4y2Ba返回工作点状态值,gydF4y2BaXgydF4y2Ba和输入值,gydF4y2BaUgydF4y2Ba,供gydF4y2Baidnlw.gydF4y2Ba模型,gydF4y2BaSYS.gydF4y2Ba,使用稳态输入和输出规格。gydF4y2Ba

例子gydF4y2Ba

[gydF4y2BaXgydF4y2Ba,gydF4y2BaUgydF4y2Ba) = findop (gydF4y2BaSYS.gydF4y2Ba,gydF4y2Ba规格gydF4y2Ba)gydF4y2Ba返回稳态操作点gydF4y2BaSYS.gydF4y2Ba使用中的操作点规范gydF4y2Ba规格gydF4y2Ba.gydF4y2Ba

例子gydF4y2Ba

[gydF4y2BaXgydF4y2Ba,gydF4y2BaUgydF4y2Ba) = findop (gydF4y2Ba___gydF4y2Ba,gydF4y2Ba选项gydF4y2Ba)gydF4y2Ba为所有以前的语法指定优化搜索选项。gydF4y2Ba

例子gydF4y2Ba

[gydF4y2BaXgydF4y2Ba,gydF4y2BaUgydF4y2Ba,gydF4y2Ba报告gydF4y2Ba) = findop (gydF4y2Ba___gydF4y2Ba)gydF4y2Ba返回关于所有前面语法的优化搜索结果的摘要报告。gydF4y2Ba

例子gydF4y2Ba

[gydF4y2BaXgydF4y2Ba,gydF4y2BaUgydF4y2Ba) = findop (gydF4y2BaSYS.gydF4y2Ba“快照”,gydF4y2BaTgydF4y2Ba,gydF4y2Ba印尼gydF4y2Ba)gydF4y2Ba返回的操作点gydF4y2BaSYS.gydF4y2Ba在时间的模拟快照,gydF4y2BaTgydF4y2Ba,使用指定的输入,gydF4y2Ba印尼gydF4y2Ba. 初始状态gydF4y2BaSYS.gydF4y2Ba假设为零。gydF4y2Ba

例子gydF4y2Ba

[gydF4y2BaXgydF4y2Ba,gydF4y2BaUgydF4y2Ba) = findop (gydF4y2BaSYS.gydF4y2Ba“快照”,gydF4y2BaTgydF4y2Ba,gydF4y2Ba印尼gydF4y2Ba,gydF4y2BaX0.gydF4y2Ba)gydF4y2Ba指定模拟的初始状态。gydF4y2Ba

例子gydF4y2Ba

全部折叠gydF4y2Ba

加载估计数据并估算HammerseIn-Wiener模型。gydF4y2Ba

负载gydF4y2Ba双坦克数据gydF4y2Ba;z=iddata(y,u,1);M=nlhw(z[513]);gydF4y2Ba

找到输入电平设置为的稳态工作点gydF4y2Ba1gydF4y2Ba并且输出未知。gydF4y2Ba

[X, U] = findop (M,gydF4y2Ba'稳定的'gydF4y2Ba,1,楠);gydF4y2Ba

估计Hammerstein-Wiener模型。gydF4y2Ba

负载gydF4y2Baiddata7gydF4y2Ba;订单=[4*一(1,2)2*一(1,2)3*一(1,2)];M=nlhw(z7,订单,gydF4y2Ba'unitgain'gydF4y2Ba,gydF4y2Ba“pwlinear”gydF4y2Ba);gydF4y2Ba
警告:“unitgain”已弃用,可能会在将来的版本中删除。请改用“idUnitGain”。gydF4y2Ba
警告:不推荐使用“pwlinear”,并且可以在将来的版本中删除。使用“iDpiecewiselinear”。gydF4y2Ba

创建默认的操作点规范对象。gydF4y2Ba

规范= operspec (M);gydF4y2Ba

设置输入信号的值。gydF4y2Ba

规格输入值(1)=-1;规格输入值(2)=1;gydF4y2Ba

设置输出信号的最大值和最小值。gydF4y2Ba

spec.output.max = 10;spec.output.min = -10;gydF4y2Ba

使用给定的规格找到稳态操作点。gydF4y2Ba

[X, U] = findop (M,规范);gydF4y2Ba

加载估计数据并估算HammerseIn-Wiener模型。gydF4y2Ba

负载gydF4y2Ba双坦克数据gydF4y2Ba;z=iddata(y,u,1);M=nlhw(z[513]);gydF4y2Ba

创建一个默认的gydF4y2BafindopOptionsgydF4y2Ba选项集。gydF4y2Ba

opt = findopoptions(m);gydF4y2Ba

修改选项集以指定最陡峭的渐变渐变搜索方法,最多50个迭代。gydF4y2Ba

opt.SearchMethod =gydF4y2Ba“格拉德”gydF4y2Ba;opt.SearchOptions.MaxIterations = 50;gydF4y2Ba

使用指定的选项找到稳态工作点。gydF4y2Ba

[X, U] = findop (M,gydF4y2Ba'稳定的'gydF4y2Ba1南选择);gydF4y2Ba

加载估计数据并估算HammerseIn-Wiener模型。gydF4y2Ba

负载gydF4y2Baiddata7gydF4y2Ba; 订单=[4*一(1,2)2*一(1,2)3*一(1,2)];M=nlhw(z7,订单,[],idPiecewiseLinear);gydF4y2Ba

找到输入1设置为的稳态工作点gydF4y2Ba1gydF4y2Ba输入2是无限制的。对输出值的初始猜测是gydF4y2Ba2gydF4y2Ba.gydF4y2Ba

[X,U,R]=findop(M,gydF4y2Ba'稳定的'gydF4y2Ba[1,2];gydF4y2Ba

显示摘要报告。gydF4y2Ba

disp (R);gydF4y2Ba
为什么停止:“接近(本地)最小值,(norm(g) < tol)。”迭代:20 FinalCost: 4.4373e-31 FirstOrderOptimality: 2.4722e-16 SignalLevels: [1x1 struct]gydF4y2Ba

加载估计数据估计Hammersein-Wiener模型。gydF4y2Ba

负载gydF4y2Ba双坦克数据gydF4y2Ba;z=iddata(y,u,1);M=nlhw(z[513]);gydF4y2Ba

在10秒后找到模拟快照,假设初始状态为零。gydF4y2Ba

[X, U] = findop (M,gydF4y2Ba“快照”gydF4y2Ba10 z);gydF4y2Ba

加载估计数据并估算HammerseIn-Wiener模型。gydF4y2Ba

负载gydF4y2Ba双坦克数据gydF4y2Baz=iddata(y,u,1);M=nlhw(z[513]);gydF4y2Ba

创建初始状态向量。gydF4y2Ba

X0 = [10; 10; 5; 5; 1; 1; 0];gydF4y2Ba

在10秒后使用指定的初始状态查找模拟快照。gydF4y2Ba

[X, U] = findop (M,gydF4y2Ba“快照”gydF4y2Ba,10,z,X0);gydF4y2Ba

输入参数gydF4y2Ba

全部折叠gydF4y2Ba

Hammerstein-Wiener模型,指定为一个gydF4y2Baidnlw.gydF4y2Ba目的。gydF4y2Ba

用于计算工作点的稳态输入电平,指定为矢量。长度gydF4y2BaInpeplevel.gydF4y2Ba必须等于中指定的输入数gydF4y2BaSYS.gydF4y2Ba.gydF4y2Ba

优化算法假设有限的值gydF4y2BaInpeplevel.gydF4y2Ba是固定输入值。用gydF4y2Ba南gydF4y2Ba指定未知输入信号的初始猜测值gydF4y2Ba0gydF4y2Ba. 所有输入的最小和最大界限的默认值为gydF4y2Ba负gydF4y2Ba和gydF4y2Ba+InfgydF4y2Ba分别。gydF4y2Ba

用于计算工作点的稳态输出电平,指定为向量。的长度gydF4y2Ba输出电平gydF4y2Ba必须等于中指定的输出数gydF4y2BaSYS.gydF4y2Ba.gydF4y2Ba

中的值gydF4y2Ba输出电平gydF4y2Ba表示对优化算法的初始猜测。用gydF4y2Ba南gydF4y2Ba指定未知输出信号,初始估计为gydF4y2Ba0gydF4y2Ba.所有输出的最小和最大界限都有默认值gydF4y2Ba负gydF4y2Ba和gydF4y2Ba+InfgydF4y2Ba分别。gydF4y2Ba

操作点规范,例如最小和最大输入/输出约束和已知输入,指定为gydF4y2BaoperspecgydF4y2Ba目的。gydF4y2Ba

操作点快照时间,指定为正标量。的价值gydF4y2BaTgydF4y2Ba必须在范围内[gydF4y2BaTgydF4y2Ba0gydF4y2Ba,gydF4y2BaNgydF4y2Ba*gydF4y2BaTgydF4y2Ba年代gydF4y2Ba),gydF4y2BaNgydF4y2Ba是输入样本的数量,gydF4y2BaTgydF4y2Ba年代gydF4y2Ba是样本时间和gydF4y2BaTgydF4y2Ba0gydF4y2Ba为输入开始时间(gydF4y2Bauin.tstart.gydF4y2Ba).gydF4y2Ba

快照模拟输入,指定为以下之一:gydF4y2Ba

  • 时域gydF4y2BaiddatagydF4y2Ba对象,该对象具有匹配的示例时间和输入大小gydF4y2BaSYS.gydF4y2Ba.gydF4y2Ba

  • 有多少列就有多少输入通道的矩阵。如果矩阵有gydF4y2BaNgydF4y2Ba行,假设输入数据对应于时间向量gydF4y2Ba(1:n)* sys.tsgydF4y2Ba.gydF4y2Ba

模拟的初始状态,指定为具有长度等于状态数量的列向量gydF4y2BaSYS.gydF4y2Ba.gydF4y2BaX0.gydF4y2Ba提供与第一个输入样本对应的时间的初始条件(gydF4y2Bauin.start.start.gydF4y2Ba,如果gydF4y2Ba印尼gydF4y2Ba是一个gydF4y2BaiddatagydF4y2Ba对象,或者gydF4y2Basys.ts.gydF4y2Ba如果gydF4y2Ba印尼gydF4y2Ba是一个双矩阵)。gydF4y2Ba

有关的状态的详细信息,请参见gydF4y2Baidnlw.gydF4y2Ba模型,参见gydF4y2Baidnlhw国家的定义gydF4y2Ba.gydF4y2Ba

操作点搜索选项,指定为agydF4y2BafindopOptionsgydF4y2Ba选项集。gydF4y2Ba

输出参数gydF4y2Ba

全部折叠gydF4y2Ba

操作点状态值,返回为长度等于模型状态数的列向量。gydF4y2Ba

操作点输入值,作为长度的列向量返回等于输入数量。gydF4y2Ba

搜索结果汇总报告,以具有以下字段的结构返回:gydF4y2Ba

场gydF4y2Ba 描述gydF4y2Ba
SearchMethodgydF4y2Ba 用于迭代参数估计的搜索方法。看gydF4y2BaSearchMethodgydF4y2Ba在gydF4y2BafindopOptionsgydF4y2Ba了解更多信息。gydF4y2Ba
WhyStopgydF4y2Ba 搜索算法终止条件。gydF4y2Ba
迭代gydF4y2Ba 执行估算次数。gydF4y2Ba
终身gydF4y2Ba 最小目标函数的最终值(误差的平方和)。gydF4y2Ba
一阶最优性gydF4y2Ba ∞gydF4y2Ba - 搜索算法终止时搜索梯度矢量。gydF4y2Ba
signerlevels.gydF4y2Ba 包含字段的结构gydF4y2Ba输入gydF4y2Ba和gydF4y2Ba输出gydF4y2Ba,分别为工作点输入和输出信号电平。gydF4y2Ba

算法gydF4y2Ba

全部折叠gydF4y2Ba

findopgydF4y2Ba从稳态操作点规格或模拟快照计算操作点。gydF4y2Ba

从稳态规格计算操作点gydF4y2Ba

要计算稳态工作点,请调用gydF4y2BafindopgydF4y2Ba使用下列任一语法:gydF4y2Ba

[X,U]=findop(系统,稳定,输入电平,输出电平)[X,U]=findop(系统,规范)gydF4y2Ba

findopgydF4y2Ba使用不同的方法来计算稳态工作点,这取决于你为这个计算提供了多少信息:gydF4y2Ba

  • 当您为所有输入级别(nogydF4y2Ba南gydF4y2Ba价值观)。对于给定的输入级别,gydF4y2BaUgydF4y2Ba,均衡状态值是gydF4y2BaXgydF4y2Ba= inv(gydF4y2Ba我gydF4y2Ba-gydF4y2Ba一个gydF4y2Ba)*gydF4y2BaBgydF4y2Ba*gydF4y2BafgydF4y2Ba(gydF4y2BaUgydF4y2Ba),gydF4y2Ba[A, B, C, D] = ssdata (model.LinearModel)gydF4y2Ba, 和gydF4y2BafgydF4y2Ba()为输入非线性。gydF4y2Ba

  • 当您指定已知和未知的输入级别时。gydF4y2BafindopgydF4y2Ba使用数值优化来最小化错误的规范并计算操作点。总误差是贡献结合gydF4y2BaegydF4y2Ba1gydF4y2Ba和gydF4y2BaegydF4y2Ba2gydF4y2Ba,gydF4y2BaegydF4y2Ba(gydF4y2BatgydF4y2Ba)=(gydF4y2BaegydF4y2Ba1gydF4y2Ba(gydF4y2BatgydF4y2Ba)gydF4y2BaegydF4y2Ba2gydF4y2Ba(gydF4y2BatgydF4y2Ba等):gydF4y2Ba

    • egydF4y2Ba1gydF4y2Ba适用于已知的输出,并使算法最小化gydF4y2BaegydF4y2Ba1gydF4y2Ba=gydF4y2BaygydF4y2Ba-gydF4y2BaggydF4y2Ba(gydF4y2BalgydF4y2Ba(gydF4y2BaxgydF4y2Ba,gydF4y2BafgydF4y2Ba(gydF4y2BaugydF4y2Ba))), 在哪里gydF4y2BafgydF4y2Ba输入非线性,gydF4y2BalgydF4y2Ba(gydF4y2BaxgydF4y2Ba,gydF4y2BaugydF4y2Ba)是带有状态的线性模型gydF4y2BaxgydF4y2Ba, 和gydF4y2BaggydF4y2Ba为输出非线性。gydF4y2Ba

    • egydF4y2Ba2gydF4y2Ba应用于未知输出,错误是衡量这些输出是否在指定的最小和最大值范围内。如果一个变量在其指定的范围内,则相应的错误为零。否则,误差等于到最近边界的距离。例如,如果一个自由输出变量有一个值gydF4y2BazgydF4y2Ba它的最大值和最小值是gydF4y2BalgydF4y2Ba和gydF4y2BaUgydF4y2Ba分别是错误gydF4y2BaegydF4y2Ba2gydF4y2Ba=最大值[gydF4y2BazgydF4y2Ba-gydF4y2BaUgydF4y2Ba,gydF4y2BalgydF4y2Ba-gydF4y2BazgydF4y2Ba, 0].gydF4y2Ba

    最小化问题的独立变量是未知的输入。在错误定义中gydF4y2BaegydF4y2Ba,都是输入gydF4y2BaugydF4y2Ba和各国gydF4y2BaxgydF4y2Ba是自由变量。要获得仅包含未知输入作为自由变量的错误表达式,该算法gydF4y2BafindopgydF4y2Ba通过施加稳态条件指定作为输入的函数的状态:gydF4y2BaxgydF4y2Ba= inv(gydF4y2Ba我gydF4y2Ba-gydF4y2Ba一个gydF4y2Ba)*gydF4y2BaBgydF4y2Ba*gydF4y2BafgydF4y2Ba(gydF4y2BaUgydF4y2Ba),gydF4y2Ba一个gydF4y2Ba和gydF4y2BaBgydF4y2Ba状态空间参数是否与线性模型相对应gydF4y2BalgydF4y2Ba(gydF4y2BaxgydF4y2Ba,gydF4y2BaugydF4y2Ba)。因此,代以gydF4y2BaxgydF4y2Ba= inv(gydF4y2Ba我gydF4y2Ba-gydF4y2Ba一个gydF4y2Ba)*gydF4y2BaBgydF4y2Ba*gydF4y2BafgydF4y2Ba(gydF4y2BaUgydF4y2Ba)进入错误函数导致错误表达式,该错误表达式仅包含未知输入作为由优化算法计算的自由变量。gydF4y2Ba

计算仿真快照的操作点gydF4y2Ba

当您使用语法时gydF4y2Ba[X, U] = findop (sys,“快照”,T,印尼,X0)gydF4y2Ba,该算法模拟了模型输出,直到快照时间,gydF4y2BaTgydF4y2Ba.在快照时刻,算法计算Hammerstein-Wiener模型的线性模型块的输入(gydF4y2Ba线性模型gydF4y2Ba财产gydF4y2Baidnlw.gydF4y2Ba对象)通过使用输入非线性变换给定输入:gydF4y2BawgydF4y2Ba=gydF4y2BafgydF4y2Ba(gydF4y2BaugydF4y2Ba).gydF4y2BafindopgydF4y2Ba使用生成的gydF4y2BawgydF4y2Ba来计算gydF4y2BaxgydF4y2Ba直到快照时间,使用以下公式:gydF4y2BaxgydF4y2Ba(gydF4y2BatgydF4y2Ba+ 1) =gydF4y2Ba斧头gydF4y2Ba(gydF4y2BatgydF4y2Ba)+gydF4y2BaBwgydF4y2Ba(gydF4y2BatgydF4y2Ba),gydF4y2Ba[A, B, C, D] = ssdata (model.LinearModel)gydF4y2Ba.gydF4y2Ba

请注意gydF4y2Ba

对于基于快照的计算,gydF4y2BafindopgydF4y2Ba不执行数值优化。gydF4y2Ba

扩展能力gydF4y2Ba

介绍了R2008agydF4y2Ba