作者yueayase (scrya)
看板Math
标题[微积] 分享关於variation of parameters的想法
时间Sun Feb 19 04:04:02 2023
我想分享关於ode的variation of parameters中
不需要预先猜测把原本线性组合的常数换成函数
也能推导出相同结果的想法:
考虑一阶ode形如: x'(t) = A(t)x(t)+b(t), 其中x, b为n维向量,A为nxn矩阵
唯一的变数为t
(Case i)
如果A(t)是常数,即A(t)≡A for some nxn matrix A.
那我们可以模仿解纯量一阶ode的想法:
x'(t)+a(t)x(t)=b(t)
∫a(t)dt
两边同乘积分因子: I(t)=e
原方程式变为: (I(t)x(t))'=I(t)b(t) 然後积分後除上I(t)就是答案
向量版本也一样:
x'(t)-Ax(t) = b(t)
-At -At -At
同乘 I(t) = e => (e x(t))' = e b(t)
At -At
=> x(t) = e ∫e b(t) dt
这个长得跟variation of parameters的公式是一样的
那麽... A(t)若不是常数的话呢?
我们试看看找出积分因子:
x'(t)-A(t)x(t) = b(t)
I(t)x'(t)-I(t)A(t)x(t) = I(t)b(t)
我们希望左式变成(I(t)x(t))'= I(t)x'(t)+I'(t)x(t)
可能的选择是I'(t) = -I(t)A(t)
-∫A(t)dt
这让我们也许会想说是不是I(t)=e 呢?
但这不总是可以这样,只有:
(Case ii) 若A(s)A(t) = A(t)A(s)成立
-∫A(t)dt ∞ (-∫A(t)dt)^n
I(t) = e = Σ ---------------
n=0 n!
∞ n(-∫A(t)dt)^(n-1) ∞ (-∫A(t)dt)^n
=>I'(t) = -Σ ------------------- A(t) = -Σ -------------- A(t)=-I(t)A(t)
n=1 n! n=0 n!
(注意:可以这样做的原因是因为A(s)A(t) = A(t)A(s),在套n次product rule时,
这些含有积分的n-1项才会相等)
-∫A(t)dt
所以可以发现这个情况下,真的就是上面说的e
也就是我们可以把原式化成: (I(t)x(t))'=I(t)b(t)
-1 ∫A(t)dt -∫A(t)dt
=> x(t) = I (t)∫I(t)b(t)dt = e ∫e b(t)dt
这个也跟variation of parameters的公式长得很像
但若是A(s)A(t) = A(t)A(s)不成立,我们不能把它合成像上面那样,例如n=2时,
t t
d(-∫A(s)ds)^2 d(∫A(s)ds)(∫A(t)dt) t t
--------------- = ---------------------- = A(t)∫A(s)ds+∫A(s)ds A(t)
dt dt
t t
这不能变成2A(t)∫A(s)ds或是2∫A(s)dsA(t) 因为A(t)A(s)≠A(s)A(t)
那这时候要怎麽办呢? 答案是把积分因子换成fundamental matrix
A fundamental matrix of system X'(t) = A(t)X(t) is a solution to this system
with each columns being linearly independent.(X,A都是nxn矩阵)
也可以看出fundamenal matrix的column构成x'(t)=A(t)x(t)(A是上面那个矩阵,
x是n维向量)解空间的basis
对於x'(t)=A(t)x(t)+b(t),x,b为n维向量,A为nxn矩阵.令Φ(t)是fundamental matrix
=> Φ'(t)=A(t)Φ(t)
-1
=> A(t) = Φ'(t)Φ (t) (因为根据定义Φ的column线性独立,所以可逆)
照前面所说的,我们想要找出I'(t)=-I(t)A(t)的I,把上面的关系式带进去,
-1
我们想要找出I,使得I'(t)=-I(t)Φ'(t)Φ (t)成立
=> I'(t)Φ(t)=-I(t)Φ'(t)
=> I'(t)Φ(t)+I(t)Φ'(t) = O
=> (I(t)Φ(t))' = O (by product rule)
=> I(t)Φ(t) = C for some nxn constant matrix C
-1
=> I(t) = CΦ (t)
-1
Now set C = I, then I(t) = Φ (t)
-1 -1
所以原方程式可变成(Φ (t)x(t))' = Φ (t)b(t)
-1
=> x(t) = Φ(t)∫Φ (t)b(t)dt
这个就是我们熟悉的variation of parameters的公式
注意到我没有先假设特解要长成Φ(t)c(t)然後把c(t)解出来
我只假设了I'(t) = -I(t)A(t)成立(矩阵基本上不能直接消AC=BC不一定A=B,
所以这个是我假设可以这样,然後做看看)
这也可以解释为什麽书本要介绍fundamental matrix的概念
fundamental matrix不只是为了解X'(t)=A(t)X(t), X,A为矩阵而要引进
也不是为了能把x'(t)=A(t)x(t), A为矩阵, x为向量表示得比较好看而引进
-∫A(t)dt
我觉得最重要的原因是因为在找积分因子的过程,无法用e 当积分因子
但我们还是希望有如纯量一阶ode的结果,所以把那个积分因子换成fundamental matrix
来解决这个问题,所以才需要引进
而这个矩阵向量版的variation of parameters也可以帮助我们推出n阶线性方程的
variation of parameters,并且不用突然设定奇怪的
(k) (k) (k)
c'(t)x (t)+c'(t)x (t)+...+c'(t)x (t) = 0, k < n-2
1 1 2 2 n n
这种条件,然後解出c1,...cn
过程如下:
(n) (n-1) (n-2)
考虑x (t) +a (t)x (t)+a (t)x (t) + ... a (t)x(t) = f(t)
n n-1 1
已知x (t),x (t), ... ,x (t)为n linearly independent solutions of the
1 2 n
corresponding homogeneos equation:
(n) (n-1) (n-2)
x (t) + a (t)x (t) + a x (t) + ... + a (t)x(t) = 0
n n-1 1
Then, set
(n-1)
y(t) = [y (t)], where y (t) = x(t), y (t) = x'(t),..., y (t) = x (t)
1 1 2 n
[y (t)]
2
...
[y (t)]
n
A(t) = [ 0 1 0 ... 0 ] [ 0 ]
[ 0 0 1 ... 0 ] [ 0 ]
[ ... ], b(t) = ...
[ 0 0 ...0 1 ] [ 0 ]
[-a (t) -a (t) ... -a (t)] [f(t)]
1 2 n
则观察可得:
(n)
y'(t) = x'(t) = y (t), y'(t) = x''(t) = y (t), ... y'(t) = x (t)
1 2 2 3 n
(n) (n-1)
x (t) = -a (t)x(t)-a (t)x'(t)-...-a (t)x (t) + f(t)
1 2 n
=-a (t)y (t)-a (t)y (t)-...-a (t)y (t) + f(t)
1 1 2 2 n n
y'(t) = A(t)y(t)+b(t)
而[x (t) ] [x (t) ] [x (t) ]
1 2 n
[x'(t) ] [x'(t) ] [x'(t) ]
1 2 n 为 n linearly independent solution of
... ... ... ...
(n-1) (n-1) (n-1)
[x (t)] [x (t)] [x (t)]
1 2 n
the system y'(t) = A(t)y(t)
所以Φ(t) = [x (t) x (t) ... x (t) ]
1 2 n
[x'(t) x'(t) ... x'(t) ] 为fundamental matrix of the system
1 2 n
...
(n-1) (n-1) (n-1)
[x (t) x (t) ... x (t)]
1 2 n
Y'(t) = A(t)Y(t), Y(t)为nxn矩阵
利用variation of parameters:
-1
y(t) = Φ(t)∫Φ (t)b(t)dt
-1 -1
Set c(t) = ∫Φ (t)b(t)dt => c'(t) = Φ (t)b(t) => Φ(t)c'(t) = b(t)
用矩阵乘法乘开,第一个分量就是:
y(t) = c (t)x (t) + c (t)x (t) + ... + c (t)x (t)
1 1 2 2 n n
而Φ(t)c'(t) = b(t)把左式用矩阵乘法乘开和右边比较系数可得:
c '(t)x (t) + c'(t)x (t) + ... + c'(t)x (t) = 0
1 1 2 2 n n
c'(t)x' (t) + c'(t)x'(t) + ... + c'(t)x'(t) = 0
1 1 2 2 n n
...
(n-2) (n-2) (n-2)
c'(t)x (t) + c'(t)x (t) + ... + c'(t)x (t) = 0
1 1 2 2 n n
(n-1) (n-1) (n-1)
c'(t)x (t) + c'(t)x (t) + ... + c'(t)x (t) = f(t)
1 1 2 2 n n
这个就是我们在variation of parameters所设定的n个条件
我认为这种讲法会让做variation of parameters变得更加自然
不需要做过多的猜测
希望这篇文章对各位有帮助~~
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.47.95.208 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Math/M.1676750644.A.7C1.html