用拉普拉斯变换求解微分方程

在这个工作流程中使用符号数学工具箱™中的拉普拉斯变换来解微分方程。关于拉普拉斯变换的简单例子,请看拉普拉斯ilaplace

定义:拉普拉斯变换

一个函数的拉普拉斯变换ft

F 年代 0 f t e t 年代 d t

概念:使用符号工作流

符号工作流以自然的符号形式而不是数字形式进行计算。这种方法可以帮助您理解解决方案的属性并使用精确的符号值。只有在需要数字结果或无法按符号继续时,才用数字代替符号变量。有关详细信息,请参见选择数字或符号算术.通常,步骤是:

  1. 申报的方程。

  2. 解决方程。

  3. 替代的价值观。

  4. 阴谋的结果。

  5. 分析的结果。

工作流程:利用拉普拉斯变换求解RLC电路

申报的方程

你可以用拉普拉斯变换来解有初始条件的微分方程。例如,你可以解决电阻-电感-电容(RLC)电路,例如这个电路。

  • 在欧姆电阻:R1R2R3.

  • 在安培电流:123.

  • 电感在亨利:l

  • 法拉电容:C

  • 电动势(伏特):Et

  • 在库仑收费:t

应用基尔霍夫电压和电流定律,得到了RLC电路的微分方程。

d 1 d t + R 2 l d d t R 2 R 1 l 1

d d t 1 R 3. + R 2 E t 1 C t + R 2 R 3. + R 2 1

声明的变量。因为物理量是正的,所以在变量上设置相应的假设。让Et为1v的交流电压。

syms L C I1(t) Q(t) s R = sym('R%d',[1 3]);设([t L C R] > 0) E(t) = 1*sin(t);%电压= 1 V

声明微分方程。

dI1 = diff (I1, t);dQ = diff (Q, t);eqn1 = dI1 + (R (2) / L) * dQ = = (R - R (1) (2)) / L * I1 eqn2 = dQ = = (1 / R (R (2) + (3)) * (q / C)) + R (2) / (R (2) + (3)) * I1
eqn1 (t) = diff (I1 (t), t) + (R2 * diff (Q (t), t) / L = = - - - - - - (I1 (t) * (R1, R2)) / L eqn2 (t) = diff (Q (t), t) = =(罪(t) - Q (t) / C) / (R2 + R3) + (R2 * I1 (t)) / (R2 + R3)

假设初始电流和电荷,00都是0.声明这些初始条件。

cond1 = I1 == 0 cond2 = Q(0) == 0
cond1 = I1 == 0 cond2 = Q(0) == 0

解决方程

计算拉普拉斯变换eqn1eqn2

eqn1LT = laplace(eqn1,t,s)
eqn1LT = s *拉普拉斯(I1 (t), t, s) - I1 (0) (R2 * (Q (0) - s *拉普拉斯(Q (t), t, s))) / L = =…- ((R1, R2) *拉普拉斯(I1 (t), t, s)) / L eqn2LT = s *拉普拉斯(Q (t), t, s) - Q (0) = = (R2 *拉普拉斯(I1 (t), t, s)) / (R2 + R3) +…(C/(s²+ 1)-拉普拉斯(Q(t), t, s))/(C*(R2 + R3))

这个函数解决只解决符号变量。因此,使用解决,第一个替代拉普拉斯(I1 (t), t, s)拉普拉斯(Q (t), t, s)与变量I1_LTQ_LT

I1_LT Q_LT eqn1LT = subs(eqn1LT,[拉普拉斯(I1,t,s)拉普拉斯(Q,t,s)],[I1_LT Q_LT])
eqn1LT = I1_LT * s - I1 (0) - (R2 * (Q (0) - Q_LT * s)) / L = = - - - - - - (I1_LT * (R1, R2)) / L
eqn2LT = subs(eqn2LT,[拉普拉斯(I1,t,s)拉普拉斯(Q,t,s)],[I1_LT Q_LT])
eqn2LT = Q_LT * s - Q (0) = = (I1_LT * R2) / (R2 + R3)——(Q_LT - C / s ^ 2 + 1) / (C * (R2 + R3))

解方程I1_LTQ_LT

eqns = [eqn1LT];vars = [I1_LT Q_LT];[I1_LT, Q_LT] = solve(eqns,vars)
I1_LT Q = (R2 * * I1 (0) (0) + L - C * R2 * s + L * s ^ 2 * I1 (0) + R2 * s ^ 2 * Q L (0) + C * * R2 * s ^ 3 * I1(0) +…L C * * R3 * s ^ 3 * I1 (0) + C * L * R2 * * I1 (0) + C * L * R3 * * I1 (0)) / ((s ^ 2 + 1) * (R1, R2 + L * s +……C * L * R2 * s ^ 2 + C * L * R3 * s ^ 2 + C * R1 * R2 * s + C * R1 * R3 * s - C * R2 * R3 * s)) Q_LT = (C * (R1, R2 + L * s + L * R2 * I1 (0) + R1 * R2 * Q (0) + R1 * R3 * Q (0) - R2 * R3 * Q(0) +…L * R2 * s ^ 2 * I1 (0) + L * R2 * s ^ 3 * Q (0) + L * R3 * s ^ 3 * Q (0) + R1 * R2 * s ^ 2 * Q (0) + R1 * R3 * s ^ 2 * Q(0) -…题目:R2*s ^2*Q(0) + L*R2*s*Q(0) +…L * R3 * * Q (0))) / ((s ^ 2 + 1) * (R1, R2 + L * s + L C * * R2 * s ^ 2 + C * L * R3 * s ^ 2 +…C*R1*R2*s + C*R1*R3*s - C*R2*R3*s))

计算1通过计算拉普拉斯逆变换I1_LTQ_LT.简化的结果。抑制输出,因为它很长。

I1sol = ilaplace (I1_LT、s、t);Qsol = ilaplace (Q_LT、s、t);I1sol =简化(I1sol);Qsol =简化(Qsol);

替代值

在绘制结果之前,用电路元件的数值代替符号变量。让R1= 4 Ω,R2= 2Ω,R3= 3Ω,CF = 1/4,l= 1.6 H,1(0)= 15 A,和(0)= 2 C。

var = [R L C I1(0) Q(0)];值= [4 2 3 1.6 1/4 15 2];I1sol = subs(I1sol,vars,values)
I1sol = 15 * exp (- (51 * t) / 40) * (cosh ((1001 ^ (1/2) * t) / 40) -…(293 * 1001 ^ (1/2) * sinh ((1001 ^ (1/2) * t) / 40)) / 21879)——(5 * sin (t)) / 51 Qsol = (4 * sin (t)) / 51 - 51 (5 * cos (t)) / + (107 * exp (- (51 * t) / 40) * (cosh ((1001 ^ (1/2) * t) / 40) +…(2039 * 1001 ^ (1/2) * sinh ((1001 ^ (1/2) * t) / 40)) / 15301)) / 51

阴谋的结果

当前的情节I1sol和电荷Qsol.通过使用两个不同的时间间隔来显示瞬态和稳态行为:0≤t≤10≤5t≤25

次要情节(2、2、1)fplot (I1sol 10[0])标题(当前的)ylabel (I1 (t))包含(t)次要情节(2 2 2)fplot (Qsol 10[0])标题(“费用”)ylabel (Q (t))包含(t)次要情节(2,2,3)fplot (I1sol 25[5])标题(当前的)ylabel (I1 (t))包含(t)文本(7,0.25,“瞬时”)文本(16个,0.125,“稳态”)次要情节(2,2,4)fplot (Qsol 25[5])标题(“费用”)ylabel (Q (t))包含(t)文本(7,0.25,“瞬时”)文本(15,0.16,“稳态”)

分析结果

起初,电流和电荷呈指数下降。然而,从长期来看,它们是振荡的。这些行为分别称为“暂态”和“稳态”。对于符号结果,您可以分析结果的属性,这在数值结果中是不可能的。

视觉检查I1solQsol.它们是项的和。通过使用找到术语孩子们.然后,把这些项画出来,求出它们的作用[0 15].图中显示了瞬态和稳态项。

I1terms =孩子(I1sol);Qterms =孩子(Qsol);subplot(1,2,1) fplot(I1terms,[0 15]) ylim([-2 2]) title('Current terms') subplot(1,2,2) fplot(Qterms,[0 15]) ylim([-2 2]) title('Charge terms')

图表显示I1sol有瞬态和稳态项,而Qsol有一个瞬态和两个稳态项。从目视检查,注意I1solQsol有一个术语包含经验值函数。假设这一项引起了瞬时指数衰减。中分离瞬态和稳态项I1solQsol通过检查经验值使用

I1steadystate = I1terms(~has(I1terms,'exp'))
I1transient = 15 * exp (- (51 * t) / 40) * (cosh ((1001 ^ (1/2) * t) / 40) - (293 * 1001 ^ (1/2) * sinh ((1001 ^ (1/2) * t) / 40)) / 21879) I1steadystate = - (5 * sin (t)) / 51

同样的,单独的Qsol转化为瞬态和稳态项。这个结果演示了符号计算如何帮助您分析问题。

Qsteadystate = Qterms(~has(Qterms,'exp'))
Qtransient = (107 * exp (- (51 * t) / 40) * (cosh ((1001 ^ (1/2) * t) / 40) + (2039 * 1001 ^ (1/2) * sinh ((1001 ^ (1/2) * t) / 40)) / 15301)) / 51 Qsteadystate = (- (5 * cos (t)) / 51岁(4 * sin (t)) / 51)