7.2信号与系统课程 例7.3线性时不变系统的零输入响 描述n阶线性时不变(LT)连续系统的微分 方程为 n-1 y da ta +…+an2+an1y=b1m+…+bnx+bm12 dt 已知y及其各阶导数的初始值为y(0), y(1)(0),…,y(n-1)(0),求系统的零输入响
7.2 信号与系统课程 例7.3 线性时不变系统的零输入响 描述n阶线性时不变(LTI)连续系统的微分 方程为 n≥m 已 知 y 及 其 各 阶 导 数 的 初 始 值 为 y(0) , y(1)(0),…,y(n-1)(0),求系统的零输入响 应。 , d d d d d d d d d d 1 1 1 1 1 2 b u t u b t u a y b t y a t y a t y a m m m m n n n n n + + − + ++ + = ++ +
解:■建模 当LT系统的输入为零时,其零输入响应为 微分方程的齐次解(即令微分方程等号右 端为0),其形式为(设特征根均为单根) y()=C1e+C2en+…+C,e 其中p1,p2,…,pn是特征方程 a14n+a2n-1+.+an+an+1=0的根,它 们可用 roots(a)语句求得。各系数C1,…, Cn由y及其各阶导数的初始值来确定。对此
解:◼ 建模 当LTI系统的输入为零时,其零输入响应为 微分方程的齐次解(即令微分方程等号右 端为0),其形式为(设特征根均为单根) 其中p1,p2,…,pn是特征方程 a1n+a2n-1+…+ an+ an+1 =0的根,它 们可用roots(a)语句求得。各系数C1,…, Cn由y及其各阶导数的初始值来确定。对此 有 1 2 1 2 ( ) e e e n p t p t p t n y t C C C = + + +
C1+C2+.+Cn=y0 y0=y(0) p1C1+p2C2+.+pnCn=Dy0(Dy0表示y 的导数的初始值y(1)(0) +nC2+…+pnC.=D 写成矩阵形式为 2:
C1+ C2+…+Cn = y0 y0 = y(0) p1C1+ p2C2+…+ pnCn=Dy0 (Dy0表示y 的导数的初始值y(1)(0)) ………………………………… 写成矩阵形式为 1 1 1 1 1 1 2 2 0 D n n n n n n p C p C p C y − − − − + + + = = − − − − 0 1 0 0 2 1 1 1 2 1 1 1 2 D D 1 1 1 y y y C C C p p p p p p n n n n n n n
即Vc=Y0 其解为C=V\Y0 式中C=CC2…,Cn ν为范德蒙矩阵,在 MATLAB的特殊矩阵 库中有 vandel函数可直接生成
即 V·C = Y0 其解为 C =V \ Y0 式中 V为范德蒙矩阵,在MATLAB的特殊矩阵 库中有vander函数可直接生成。 1 1 2 0 0 0 [ , , , ] ; [ , D , , D ] n C C C y y y n − = = T T C Y0 = − −1 −1 2 1 1 1 2 1 1 1 n n n n n p p p p p p V
MATLAB程序ea703m a= input(输入分母系数向量a=[a1,a2,…=); n=length(a)-1 YO= input(输入初始条件向量Y=y0,Dyo, D2y0,…= p=roots(a), V=roto(vander(p)); C= VYO dt=input('dt=); tf=input(=) t=0 dt: tf; y=zeros(1, length(t)) for k=1 n y= y+c(k)*exp(p(k)*t) end plot(t, y), grid
MATLAB程序ea703.m a=input('输入分母系数向量a=[a1,a2,...]= '); n=length(a)-1; Y0=input(‘输入初始条件向量 Y0=[y0,Dy0, D2y0,...]= '); p=roots(a);V=rot90(vander(p));c= V\Y0'; dt=input('dt='); tf=input('tf= ') t=0:dt:tf; y=zeros(1,length(t)); for k=1:n y= y+c(k)*exp(p(k)*t);end plot(t,y),grid