主要内容

用抽样可调模型研究参数变化

这个例子展示了如何在参数值网格中使用二阶滤波器的参数模型进行采样sampleBlock

考虑二阶滤波器,表示为:

F 年代 ω n 2 年代 2 + 2 ζ ω n 年代 + ω n 2

在不同的阻尼常数值下对滤波器进行采样 ζ 和固有频率 ω n .的可调元素创建过滤器的参数化模型 ζ 而且 ω n

Wn = realp“wn”3);Zeta = realp(“ζ”, 0.8);F = tf(wn^2,[1 2*zeta*wn ^2])
广义连续时间状态空间模型,具有1个输出,1个输入,2个状态,以及以下块:wn:标量参数,5次出现。zeta:标量参数,出现1次。输入“ss(F)”查看当前值,输入“F. blocks”与区块交互。

F是一个一族模型中有两个可调的控制设计块realpwn而且ζ.数据块wn而且ζ初始值分别为3和0.8。

样本F在2 * 3的网格上(wnζ)的值。

Wnvals = [3;5];Zetavals = [0.6 0.8 1.0];Fsample =样本块(F,“wn”wnvals,“ζ”, zetavals);

在这里,sampleBlock分别对这两个模型进行采样 ω n 价值观和三 ζ 值。因此,Fsample是状态空间模型的2 × 3数组。数组中的每个条目都是一个状态空间模型,表示F在对应的(wnζ)对。例如,Fsample(:: 2、3)wn= 5和ζ= 1.0。

设置SamplingGrid属性,以帮助跟踪哪组参数值对应于数组中的哪个条目。为此,创建一个与数组尺寸匹配的参数值网格。然后,将这些值赋给Fsample。SamplingGrid在具有参数名的结构中。

[wngrid, zetavals] = ndgrid(wnvals,zetavals);Fsample。SamplingGrid = struct(“wn”wngrid,“ζ”, zetagrid);

ndgrid命令生成完整的2 × 3网格(wnζ)的组合。当你显示的时候Fsample中的参数值Fsample。SamplingGrid与数组中的每个传递函数一起显示。参数信息也可在响应图中得到。例如,检查的阶跃响应Fsample

stepplot (Fsample)

图中包含一个轴对象。axis对象包含6个line类型的对象。该对象表示Fsample。

阶跃响应图显示了阵列中六个模型的固有频率和阻尼常数的变化。当单击图中的一个响应时,数据提示将包含相应的响应wn而且ζ的值Fsample。SamplingGrid

另请参阅

相关的话题