微分方程求解的三种解析方法:经典时域法(齐次解+特解,零状态+零输入),冲激响应卷积法、传递函数法

经典时域分析方法

  以例题的形式对经典时域解法(齐次解+特解)进行说明,最后进行总结。考虑如下形式微分方程:
y ′ ′ ( t ) + 5 y ′ ( t ) + 6 y ( t ) = 2 f ′ ( t ) + 6 f ( t ) y''\left( t \right) + 5y'\left( t \right) + 6y\left( t \right) = 2f'\left( t \right) + 6f\left( t \right) y′′(t)+5y(t)+6y(t)=2f(t)+6f(t)

试求:当 f ( t ) = t 2 f(t)=t^2 f(t)=t2 y ( 0 ) = 1 y(0)=1 y(0)=1 y ′ ( 0 ) = 1 y'(0)=1 y(0)=1时的全解。

解: 对于激励 f ( t ) = t 2 f(t)=t^2 f(t)=t2,查表(不同形式激励对应的特解表达式见附录)可得特解表达式为:
y p ( t ) = P 2 t 2 + P 1 t + P 0 {y_p}\left( t \right) = {P_2}{t^2} + {P_1}t + {P_0} yp(t)=P2t2+P1t+P0
  建立等式关系,求解待定系数:
{ y p ′ ′ ( t ) + 5 y p ′ ( t ) + 6 y p ( t ) = 2 f ′ ( t ) + 6 f ( t ) → ( 2 P 2 ) + 5 ( 2 P 2 t + P 1 ) + 6 ( P 2 t 2 + P 1 t + P 0 ) = 4 t + 6 t 2 → ( 2 P 2 + 5 P 1 + 6 P 0 ) + ( 10 P 2 + 6 P 1 ) t + ( 6 P 2 ) t 2 = 4 t + 6 t 2 → { P 0 = 1 2 P 1 = − 1 P 2 = 1 \left\{ \begin{array}{l} y_p''\left( t \right) + 5y_p'\left( t \right) + 6y_p\left( t \right) = 2f'\left( t \right) + 6f\left( t \right)\\ \to \left( {2{P_2}} \right) + 5\left( {2{P_2}t + {P_1}} \right) + 6\left( {{P_2}{t^2} + {P_1}t + {P_0}} \right) = 4t + 6{t^2}\\ \to \left( {2{P_2} + 5{P_1} + 6{P_0}} \right) + \left( {10{P_2} + 6{P_1}} \right)t + \left( {6{P_2}} \right){t^2} = 4t + 6{t^2} \end{array} \right. \to \left\{ \begin{array}{l} {P_0} = \frac{1}{2}\\ {P_1} = - 1\\ {P_2} = 1 \end{array} \right. yp′′(t)+5yp(t)+6yp(t)=2f(t)+6f(t)(2P2)+5(2P2t+P1)+6(P2t2+P1t+P0)=4t+6t2(2P2+5P1+6P0)+(10P2+6P1)t+(6P2)t2=4t+6t2 P0=21P1=1P2=1
  特解表达式为:
y p ( t ) = t 2 − t + 1 2 {y_p}\left( t \right) = {t^2} - t + \frac{1}{2} yp(t)=t2t+21

  为求解齐次解,列写微分方程对应的特征方程:
λ 2 + 5 λ + 6 = 0 \lambda^2+5\lambda+6=0 λ2+5λ+6=0

  可解得两个特征根,分别为 − 2 -2 2 − 3 -3 3不同形式特征根对应的齐次解表达式见附录,查表可得齐次解的表达式为:
y h ( t ) = C 1 e − 2 t + C 2 e − 3 t {y_h}\left( t \right) = {C_1}{e^{ - 2t}} + {C_2}{e^{ - 3t}} yh(t)=C1e2t+C2e3t

  利用初值信息求解齐次解中的待定系数,以满足初始条件,
{ y ( t ) = y h ( t ) + y p ( t ) = C 1 e − 2 t + C 2 e − 3 t + t 2 − t + 1 2 y ( 0 ) = C 1 + C 2 + 1 2 = 1 y ′ ( 0 ) = − 2 C 1 − 3 C 2 − 1 = 1 → { C 1 = 7 2 C 2 = − 3 \left\{ \begin{array}{l} y\left( t \right) = {y_h}\left( t \right) + {y_p}\left( t \right) = {C_1}{e^{ - 2t}} + {C_2}{e^{ - 3t}} + {t^2} - t + \frac{1}{2}\\ y\left( 0 \right) = {C_1} + {C_2} + \frac{1}{2}{\rm{ = 1}}\\ y'\left( 0 \right){\rm{ = }} - 2{C_1} - 3{C_2} - 1 = {\rm{1}} \end{array} \right. \to \left\{ \begin{array}{l} {C_1} = \frac{7}{2}\\ {C_2} = - 3 \end{array} \right. y(t)=yh(t)+yp(t)=C1e2t+C2e3t+t2t+21y(0)=C1+C2+21=1y(0)=2C13C21=1{C1=27C2=3

  全响应表示式为:
y ( t ) = 7 2 e − 2 t − 3 e − 3 t + t 2 − t + 1 2 y\left( t \right) = \frac{7}{2}{e^{ - 2t}} - 3{e^{ - 3t}} + {t^2} - t + \frac{1}{2} y(t)=27e2t3e3t+t2t+21

经典时域分析方法总结:

  1. 特解是由外部激励唯一确定的,齐次解是为了配合初始状态而存在的,先特解再全解;
  2. 对于初始状态会衰减为零的稳定系统,稳态解就是特解,特解就是稳态解;
  3. 齐次解可实现任意的初始值,零输入响应(ZIR)只需考虑齐次解以满足初始状态;
  4. 零状态响应(ZSR)既要考虑特解以配合输入,又要考虑齐次解以实现零状态。

冲激响应卷积法

  对于任意形式的输入信号 f ( t ) f(t) f(t),均可以表示为不同幅值冲激函数的线性组合:
f ( t ) = ∫ − ∞ ∞ f ( τ ) δ ( t − τ ) d τ f\left( t \right) = \int_{ - \infty }^\infty f \left( \tau \right)\delta \left( {t - \tau } \right){\rm{d}}\tau f(t)=f(τ)δ(tτ)dτ

  对于冲激信号的冲激响应 h ( t ) h\left( t \right) h(t),可通过经典时域方法进行求解(附录给出了一个具体案例):
δ ( t ) → h ( t ) \delta \left( t \right) \to h\left( t \right) δ(t)h(t)

  对于线性时不变系统,其在输入 f ( t ) f(t) f(t)下的响应,可以表示为:
f ( t ) → y ( t ) = ∫ − ∞ ∞ f ( τ ) h ( t − τ ) d τ = f ( t ) ∗ h ( t ) f\left( t \right) \to y\left( t \right) = \int_{ - \infty }^\infty f \left( \tau \right)h\left( {t - \tau } \right){\rm{d}}\tau=f \left( t \right)*h\left( t \right) f(t)y(t)=f(τ)h(tτ)dτ=f(t)h(t)

冲激响应卷积法总结:

  1. 冲激信号具有无穷大幅值,零时刻前后向系统瞬间注入能量,使其获得初始值。零时刻之后输入变为零,故而冲激响应表现为类似ZIR的形式;
  2. 对于有限幅值的输入信号 f ( t ) f(t) f(t),零时刻前后系统状态不会发生突变,故而冲激响应卷积法所得响应为零状态响应;
  3. 对于初始状态不为零的系统,可利用经典时域法单独求解零输入响应,两者之和即为全响应。

传递函数法

  卷积运算具有一定复杂性,利用卷积定理,将时域上的卷积运算转为频域上的乘积运算。时域卷积定理,如下所示:
若:
f 1 ( t ) ↔ F 1 ( s ) , f 2 ( t ) ↔ F 2 ( s ) {f_1}\left( t \right) \leftrightarrow {F_1}\left( s \right),{f_2}\left( t \right) \leftrightarrow {F_2}\left( s \right) f1(t)F1(s),f2(t)F2(s)

则:
f 1 ( t ) ∗ f 2 ( t ) ↔ F 1 ( s ) ⋅ F 2 ( s ) {f_1}\left( t \right) * {f_2}\left( t \right) \leftrightarrow {F_1}\left( s \right) \cdot {F_2}\left( s \right) f1(t)f2(t)F1(s)F2(s)

  于是有:
y z s ( t ) = f ( t ) ∗ h ( t ) → Y z s ( s ) = F ( s ) ⋅ H ( s ) {y_{zs}}\left( t \right) = f\left( t \right) * h\left( t \right) \to {Y_{zs}}\left( s \right) = F\left( s \right) \cdot H\left( s \right) yzs(t)=f(t)h(t)Yzs(s)=F(s)H(s)

其中, F ( s ) F\left( s \right) F(s) H ( s ) H\left( s \right) H(s)分别为 f ( t ) f(t) f(t) h ( t ) h(t) h(t)所对应的拉普拉斯变换; Y z s ( s ) {Y_{zs}}\left( s \right) Yzs(s)即为零状态响应 y z s ( t ) {y_{zs}}\left( t \right) yzs(t)所对应的拉普拉斯变换,经反变换,即可得到ZSR的时域表达式。

传递函数法总结:

  1. 传递函数法将时域信号变换到频域进行计算,达到了简化的目的;
  2. 传递函数法计算所得与冲激响应卷积法一致,均为零状态响应;

不同方法之间的比较

  为进一步说明上述方法之间的区别,对同一问题进行分别求解。问题如下所示:
y ′ ( t ) + y ( t ) = f ( t ) , f ( t ) = ε ( t ) , y ( 0 ) = 2 y'\left( t \right) + y\left( t \right) = f\left( t \right),f\left( t \right) = \varepsilon \left( t \right),y\left( 0 \right) = 2 y(t)+y(t)=f(t),f(t)=ε(t),y(0)=2
  经典时域分析方法(特解+齐次解):
{ { y p ( t ) = 1 y h ( t ) = C e − t → y ( t ) = 1 + C e − t → y ( 0 ) = 2 y ( t ) = 1 + e − t \left\{ \begin{aligned} &\left\{ \begin{aligned} &{y_p}\left( t \right) = 1 \\ &{y_h}\left( t \right) = C{e^{ - t}} \\ \end{aligned} \right. \to y\left( t \right) = 1 + C{e^{ - t}} \\ &\xrightarrow{{y\left( 0 \right) = 2}}y\left( t \right) = 1 + {e^{ - t}} \\ \end{aligned} \right. {yp(t)=1yh(t)=Cety(t)=1+Cety(0)=2 y(t)=1+et

  经典时域分析方法(ZIR+ZSR):
{ { y z i ( t ) = C e − t → y z i ( 0 ) = 2 y z i ( t ) = 2 e − t y z s ( t ) = y p ( t ) + y h ( t ) = 1 + C e − t → y z s ( 0 ) = 0 y z s ( t ) = 1 − e − t → y ( t ) = y z i ( t ) + y z s ( t ) = 1 + e − t \left\{ \begin{aligned} &\left\{ \begin{aligned} &{y_{zi}}\left( t \right) = C{e^{ - t}}\xrightarrow{{{y_{zi}}\left( 0 \right) = 2}}{y_{zi}}\left( t \right) = 2{e^{ - t}} \\ &{y_{zs}}\left( t \right) = {y_p}\left( t \right) + {y_h}\left( t \right) = 1 + C{e^{ - t}}\xrightarrow{{{y_{zs}}\left( 0 \right) = 0}}{y_{zs}}\left( t \right) = 1 - {e^{ - t}} \\ \end{aligned} \right. \\ &\to y\left( t \right) = {y_{zi}}\left( t \right) + {y_{zs}}\left( t \right) = 1 + {e^{ - t}} \\ \end{aligned} \right. yzi(t)=Cetyzi(0)=2 yzi(t)=2etyzs(t)=yp(t)+yh(t)=1+Cetyzs(0)=0 yzs(t)=1ety(t)=yzi(t)+yzs(t)=1+et

  冲激响应卷积法:
{ h ′ ( t ) + h ( t ) = δ ( t ) → h ( t ) = C e − t ε ( t ) − C e − t ε ( t ) + C e − t δ ( t ) + C e − t ε ( t ) = δ ( t ) → h ( t ) = e − t ε ( t ) → y z s ( t ) = ∫ − ∞ ∞ f ( τ ) h ( t − τ ) d τ = ∫ 0 t e τ − t d τ = e τ − t ∣ 0 t = 1 − e − t → y ( t ) = y z s ( t ) + y z i ( t ) = 1 − e − t + C e − t → y ( 0 ) = 2 y ( t ) = 1 + e − t \left\{ \begin{aligned} &h'\left( t \right) + h\left( t \right) = \delta \left( t \right)\xrightarrow{{h\left( t \right) = C{e^{ - t}}\varepsilon \left( t \right)}} - C{e^{ - t}}\varepsilon \left( t \right) + C{e^{ - t}}\delta \left( t \right) + C{e^{ - t}}\varepsilon \left( t \right) = \delta \left( t \right) \to h\left( t \right) = {e^{ - t}}\varepsilon \left( t \right) \\ &\to {y_{zs}}\left( t \right) = \int_{ - \infty }^\infty f \left( \tau \right)h\left( {t - \tau } \right){\text{d}}\tau = \int_0^t {{e^{\tau - t}}{\text{d}}\tau } = \left. {{e^{\tau - t}}} \right|_0^t = 1 - {e^{ - t}} \\ &\to y\left( t \right) = {y_{zs}}\left( t \right) + {y_{zi}}\left( t \right) = 1 - {e^{ - t}} + C{e^{ - t}}\xrightarrow{{y\left( 0 \right) = 2}}y\left( t \right) = 1 + {e^{ - t}} \\ \end{aligned} \right. h(t)+h(t)=δ(t)h(t)=Cetε(t) Cetε(t)+Cetδ(t)+Cetε(t)=δ(t)h(t)=etε(t)yzs(t)=f(τ)h(tτ)dτ=0teτtdτ=eτt 0t=1ety(t)=yzs(t)+yzi(t)=1et+Cety(0)=2 y(t)=1+et

  传递函数法:
{ Y z s ( s ) = H ( s ) F ( s ) = 1 1 + s 1 s = 1 s − 1 1 + s → y z s ( t ) = 1 − e − t → y ( t ) = y z s ( t ) + y z i ( t ) = 1 + e − t \left\{ \begin{aligned} &{Y_{zs}}\left( s \right) = H\left( s \right)F\left( s \right) = \frac{1}{{1 + s}}\frac{1}{s} = \frac{1}{s} - \frac{1}{{1 + s}} \\ &\to {y_{zs}}\left( t \right) = 1 - {e^{ - t}} \\ &\to y\left( t \right) = {y_{zs}}\left( t \right) + {y_{zi}}\left( t \right) = 1 + {e^{ - t}} \\ \end{aligned} \right. Yzs(s)=H(s)F(s)=1+s1s1=s11+s1yzs(t)=1ety(t)=yzs(t)+yzi(t)=1+et

参考文献

  参考1:信号与系统(余成波)

附录

附录1:激励与特解

在这里插入图片描述

附录2:特征根与齐次解

在这里插入图片描述

附录3:经典时域法求解冲激响应

在这里插入图片描述

附录4:利用Matlab进行数值求解,全响应

  利用Matlab进行数值求解过程,定义 z 1 = y , z 2 = y ′ {z_1} = y,{z_2} = y' z1=y,z2=y,从而将二阶微分方程转化为一阶微分方程组的形式,
{ z ′ 1 = z 2 z ′ 2 = 2 f ′ ( t ) + 6 f ( t ) − 5 z 2 − 6 z 1 , { z 1 ( 0 ) = 1 z 2 ( 0 ) = 1 \left\{ \begin{array}{l} {{z'}_1} = {z_2}\\ {{z'}_2} = 2f'\left( t \right) + 6f\left( t \right) - 5{z_2} - 6{z_1} \end{array} \right.,\left\{ \begin{array}{l} {z_1}\left( 0 \right) = 1\\ {z_2}\left( 0 \right) = 1 \end{array} \right. {z1=z2z2=2f(t)+6f(t)5z26z1,{z1(0)=1z2(0)=1

  源码如下:

% define z = [z1; z2], z1 = y; z2 = y'
tspan = [0 20];
z0 = [1; 1];

[t,y_num] = ode45(@myODE, tspan, z0);

% 计算解析解
y_ana = zeros(size(t));
for i = 1:length(t)
    y_ana(i, :) = (7/2)*exp(-2*t(i)) - 3 * exp(-3*t(i)) + t(i)^2 - t(i) + 1/2;
end

% 绘制结果对比
figure;
plot(t, y_num(:,1), 'r-', 'LineWidth', 2); % 数值方法结果,红色线宽为2
hold on;
plot(t, y_ana, 'b--', 'LineWidth', 2); % 正确解析方法结果,蓝色虚线线宽为2
xlabel('t');
ylabel('y(t)');
title('数值方法和正确解析方法结果对比');
legend('数值方法', '正确解析方法');
grid on;

function dzdt = myODE(t,z)
    dzdt = [z(2); 6*t^2+4*t-5*z(2)-6*z(1)];
end

  对比解析结果和数值计算结果,如下所示:
在这里插入图片描述

附录5:利用Matlab进行数值求解,ZSR和ZIR

  类似地,利用Matlab数值求解零状态响应和零输入响应,源码如下:

% define z = [z1; z2], z1 = y; z2 = y'
tspan = [0 2];
z0_FULL = [1; 1];
z0_ZSR = [0; 0];
z0_ZIR = [1; 1];

[t_full,y_full] = ode45(@myODE_FULL, tspan, z0_FULL);
[t_zsr,y_zsr] = ode45(@myODE_ZSR, tspan, z0_ZSR);
[t_zir,y_zir] = ode45(@myODE_ZIR, tspan, z0_ZIR);

% 绘制结果对比
figure;
plot(t_full, y_full(:,1), 'r-', 'LineWidth', 2); % FULL response
hold on
plot(t_zsr, y_zsr(:,1), 'b--', 'LineWidth', 2); % ZSR
hold on;
plot(t_zir, y_zir(:,1), 'g:', 'LineWidth', 2); % ZIR
xlabel('t');
ylabel('y(t)');
title('Full Response VS ZSR VS ZIR');
legend('FULL', 'ZSR', 'ZIR');
grid on;

function dzdt = myODE_FULL(t,z)
    dzdt = [z(2); 6*t^2+4*t-5*z(2)-6*z(1)];
end

function dzdt = myODE_ZSR(t,z)
    dzdt = [z(2); 6*t^2+4*t-5*z(2)-6*z(1)];
end

function dzdt = myODE_ZIR(t,z)
    dzdt = [z(2); -5*z(2)-6*z(1)];
end

  对比零状态响应、零输入响应和全响应,如下所示:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值