210 likes | 440 Views
7.4 差分方程的解法. 迭代法 可以利用手算或计算机递推法算,方法简便,概念清楚,但对于复杂问题直接得到一个解析式 ( 或称闭式 ) 解答较为困难。 经典法 和连续系统的时域分析法相似,先求齐次解和特解,再根据边界条件求待定系数,时域法求解过程比较烦,但各响应分量的物理概念比较清楚。 卷积和法 利用卷积和法求系统的零状态响应,再由齐次解求零输入响应,零状态响应与零输入响应之和即为系统的完全响应。 Z 变换法. 迭代法. 令 式的 ,
E N D
7.4 差分方程的解法 • 迭代法 • 可以利用手算或计算机递推法算,方法简便,概念清楚,但对于复杂问题直接得到一个解析式(或称闭式)解答较为困难。 • 经典法 • 和连续系统的时域分析法相似,先求齐次解和特解,再根据边界条件求待定系数,时域法求解过程比较烦,但各响应分量的物理概念比较清楚。 • 卷积和法 • 利用卷积和法求系统的零状态响应,再由齐次解求零输入响应,零状态响应与零输入响应之和即为系统的完全响应。 • Z变换法 第七章第2讲
迭代法 • 令 式的 , • 则常系数线性差分方程为 • 令上式中 ,有 • 即 是差分方程的系数与 , , 和 的线性组合。 第七章第2讲
迭代法 • 令上式中 ,有 • 所以, 是差分方程的系数与 , , 和 的线性组合。 • 以此类推,通过反复迭代,就可以求出任意时刻的响应值。这种迭代方法最适合用计算机计算,下面我们用Matlab来实现这种计算。 第七章第2讲
迭代法 上式中的第一项为 第二项求和与上式类似 第七章第2讲
迭代法 • function y=recur(a,b,n,f,f0,y0); • % recur 是用迭代法计算差分方程的解 • % 其中 a 是差分方程左边除第一项外的系数 • % b 是差分方程右边的系数,n 计算的点数 • % f 输入信号,f0 输入信号的初始值 • % y0 系统的初始值 • % • N=length(a);y=[y0 zeros(1,length(n))]; • M=length(b)-1;f=[f0 f]; • a1=a(N:-1:1); % a 的元素反转 • b1=b(M+1:-1:1); % b 的元素反转 • for i=N+1:N+length(n), • y(i)=-a1*y(i-N:i-1)'+b1*f(i-N:i-N+M)'; • end • y=y(N+1:N+length(n)); 第七章第2讲
例7.5 • 求下述差分方程的解 其中输入信号 ,初始条件 , 。 解 Matlab程序如下: • % 计算例7.5的程序 LT7_5.m • a=[-1.5 1];b=[0 0 2]; • y0=[2 1];f0=[0 0]; • n=0:30; • f=ones(1,length(k)); • y=recur(a,b,n,f,f0,y0); • stem(n,y,'.'), • xlabel(‘k’),ylabel(‘y(k)’) 第七章第2讲
差分方程的经典解法 • 全响应=齐次解(自由响应)+特解(强迫响应) • 齐次解:写出特征方程,求出特征根(自然频率或固有频率)。根据特征根的特点,齐次解有不同的形式。一般形式(无重根): • 特解:根据输入信号的形式有对应特解的形式,用待定系数法确定。 • 用初始值确定系数Ci。一般情况下,n 阶方程有n个常数,可用n个初始值确定。 第七章第2讲
解:(1)求齐次解,特征根为: (2)求特解:设特解为: 解得: 例 7.6 描述某线性非移变系统的差分方程为 试求:当初始状态为 y(-1)=0, y(-2)= ½时,求全响应。 将yp(k)代入原差分方程,得: 第七章第2讲
强迫响应 自由响应 例 7.6 (3)用初始值求常数: 差分方程的经典解法与 微分方程的经典解法类似! 全响应为: 将初始条件代入上式,得: 解得: 故,全响应为: 第七章第2讲
全响应=零输入响应+零状态响应 • 零输入响应的求法与齐次解一样。 i---特征根,Ci由初始值确定。 • 零状态响应的求法与解非齐次方程一样。 第七章第2讲
零输入响应的一般形式 返回 • 若无重根: • 若有 d阶重根,即 • 特征根为复根: 第七章第2讲
已知 例 7.7 描述某线性非移变系统的差分方程为 试求:当初始状态为 y(-1)=0, y(-2)= ½ 时,求全响应。 解:(1)零输入响应: 代入原方程可求得:C1=1,C2=-2 第七章第2讲
已知 ,代入原方程可求得: 例 7.7 (2)零状态响应:已求出特解 (3)全响应: 零输入响应 零状态响应 自由响应 强迫响应 第七章第2讲
例 7.8 查公式 求差分方程 所描述的离散时间系统的零输入响应。 解:特征根为: 故 代入初始值: 代入初始值:解得: C1=0,C2=1 第七章第2讲
离散系统的初始状态 • 离散系统初始状态的概念 • 正如连续系统中0+和0-初始值不同一样,离散系统的初始值也有两个,即零输入初始值 yzi(0)和系统的初始值 y(0) 。 • yzi(0)表示激励信号作用之前(零输入)系统的初始条件,它与系统的激励信号无关。是系统的初始储能、历史的记忆。是系统真正的初始状态。 • y(0)表示系统在有了激励信号之后系统的初始条件,它既有零输入时初始状态(初始储能),又有激励信号的贡献。 • 在离散系统中,几个初始值的关系为: y(0) = yzi(0) + yzs(0), yzs(0)表示零状态的初始值,它仅由激励信号产生。 第七章第2讲
而 而 后向差分方程的初始状态 对于后向差分方程,如 当 f(k)在k = 0时刻作用于系统时,系统的初始状态为 k = -1, -2时激励为零, 两个初始值相同。 k = 0 时激励已加入系统, 两个初始值显然不相同。 当 f(k)在k = -1时刻作用于系统时,系统的初始状态为 第七章第2讲
而 而 前向差分方程的初始状态 对于前向差分方程,如 当 f(k)在k = 0时刻作用于系统时,令k = -1, 0, 则分别有 这说明y(1), y(0), y(-1)与激励无关。系统的初始状态为 当 f(k)在k = -1时刻作用于系统时,令k = -2, -1, 则分别有 这说明y(0), y(-1), y(-2)与激励无关。系统的初始状态为 第七章第2讲
初始状态的应用 • 在求零输入响应时,应采用零输入初始值 yzi(0)。若系统给出的初始值是 y(0),要判断并找出 yzi(0)。 • 在求零状态响应时,所谓零状态是指系统的初始储能为零,即 yzi(0)=0,而不是y(0)=0。 • 在求全响应时,用初始条件确定常数,采用y(0)。若系统给出的初始值是yzi(0),要先求出yzs(0),再根据 y(0) = yzi(0) + yzs(0) 计算。 第七章第2讲
解:特征根为: 故 例 7.9 查公式 求差分方程 所描述的离散时间系统的零输入响应。 题中所给的f(k)是在k = 2时刻作用于系统, 故系统的初始状态应为 y(0), y(1), 即初始值为 yzi(0)=y(0)=15,yzi(1)=y(1)=9 代入初始值:C1+C2=15 ½C1+C2/3=9 解得:C1=24,C2=-9 第七章第2讲
解:特征根为: 故 例 7.10 查公式 求差分方程 所描述的离散系统的零输入响应。 题中所给的f(k)是在k = 0时刻作用于系统, 故系统的初始状态应为 y(-1), y(-2), 令原方程的k = 1: y(1)+3y(0)+2y(-1)=f(1)+f(0), 故有:y(-1)=-½ 令原方程的k = 0: y(0)+3y(-1)+2y(-2)=f(0)+f(-1), 故有:y(-2)=5/4 即初始值为 yzi(-1)=y(-1)=-1/2,yzi(-2)=y(-2)=5/4 代入初始值:-C1-C2/2=-1/2 C1+C2/4=5/4 解得:C1=2,C2=-3 第七章第2讲
课堂练习题 求下列差分方程的零输入响应、零状态响应和全响应。 (1) (2) 第七章第2讲