[선형대수] Lecture 23: Differential equations and exp(At)

이재호·2025년 3월 17일

선형대수

목록 보기
22/31

https://ocw.mit.edu/courses/18-06-linear-algebra-spring-2010/video_galleries/video-lectures/

오늘 강의에서 배울 내용은 다음과 같다.

  • Differential Equations dudt=Au\frac{du}{dt}=Au
  • Exponential eAte^{At} of a matrix (지난 강의에서 배운 AkA^k의 연장선)

먼저 다음과 같은 조건을 제시한다.

u(0)=[10]u(0)= \begin{bmatrix} 1 \\ 0 \end{bmatrix}
du1dt=u1+2u2\frac{du_1}{dt} = -u_1 + 2u_2
du2dt=u12u2\frac{du_2}{dt} = u_1 - 2u_2
A=[1212]A= \begin{bmatrix} -1 & 2 \\ 1 & -2 \end{bmatrix}

위 경우에 대해서 eigenvalues, eigenvectors를 구해보자.

  • 우선 AA는 singular matrix이다. 따라서 λ1\lambda_1은 0이 나올 것이고, trace=12=λ1+λ2trace=-1-2=\lambda_1 + \lambda_2가 되어 λ2\lambda_2는 -3이 나올 것이다.
  • 다음으로 eigenvectors x1,x2x_1,x_2를 구해보자.
(AλI)x=0(A-\lambda I)x = 0
[1212]x1=0\begin{bmatrix} -1 & 2\\ 1 & -2 \end{bmatrix} x_1 =0
[2211]x2=0\begin{bmatrix} 2 & 2\\ 1 & 1 \end{bmatrix} x_2 =0
x1=[21]x_1= \begin{bmatrix} 2 \\ 1 \end{bmatrix}
x2=[11]x_2= \begin{bmatrix} 1 \\ -1 \end{bmatrix}

그리고 solution은 공식은 다음과 같다.

solution:u(t)=c1eλ1tx1+c2eλ2tx2solution : u(t)=c_1e^{\lambda_1 t}x_1+c_2e^{\lambda_2 t}x_2

공식이 맞는지 확인하기 위해 u=eλ1tx1u=e^{\lambda_1t}x_1을 대입하여 dudt=Au\frac{du}{dt}=Au 가 맞는지 확인해보자.

dudt=u=(eλ1tx1)=λ1eλ1tx1\frac{du}{dt}=u'=(e^{\lambda_1 t}x_1)'=\lambda_1e^{\lambda_1t}x_1
Au=Aeλ1tx1Au=Ae^{\lambda_1t}x_1

이제 dudt=Au\frac{du}{dt}=Au 을 확인해본다.

dudt=Au\frac{du}{dt}=Au
λ1eλ1tx1=Aeλ1tx1\rightarrow \lambda_1 e^{\lambda_1t}x_1=Ae^{\lambda_1t}x_1
λ1x1=Ax1\rightarrow \lambda_1x_1=Ax_1

즉, Ax=λxAx=\lambda x 꼴의 eigenvalue, eigenvector 로 표현이 가능하므로, 위 공식(solution:u(t)=c1eλ1tx1+c2eλ2tx2solution : u(t)=c_1e^{\lambda_1 t}x_1+c_2e^{\lambda_2 t}x_2)이 True라는 것을 알 수 있다.

그리고 u(t)u(t)를 다음과 같이 볼 수도 있다. (지난 강의에서 배운 uk+1=Auku_{k+1}=Au_k 를 이용해서)

u(t)=c1eλ1tx1+c2eλ2tx2u(t)=c_1e^{\lambda_1 t}x_1+c_2e^{\lambda_2 t}x_2
c1λ1kx1+c2λ2kx2\approx c_1\lambda_1^kx_1 + c_2\lambda_2^kx_2

이제 u(t)=c1eλ1tx1+c2eλ2tx2u(t)=c_1e^{\lambda_1 t}x_1+c_2e^{\lambda_2 t}x_2에 위에서 구한 λ1,x1,λ2,x2\lambda_1, x_1, \lambda_2, x_2를 대입한 후, 아까 u(0)=[10]u(0)=\begin{bmatrix}1 \\ 0\end{bmatrix}을 대입하여 c1,c2c_1,c_2를 구해보자.

u(t)=c1eλ1tx1+c2eλ2tx2u(t)=c_1e^{\lambda_1 t}x_1+c_2e^{\lambda_2 t}x_2
u(t)=c1x1+c2e3tx2=c1[21]+c2e3t[11]u(t)=c_1x_1+c_2e^{-3t}x_2= c_1 \begin{bmatrix} 2 \\ 1 \end{bmatrix} + c_2e^{-3t} \begin{bmatrix} 1 \\ -1 \end{bmatrix}
u(0)=c1[21]+c2[11]=[10]u(0)= c_1 \begin{bmatrix} 2 \\ 1 \end{bmatrix} + c_2 \begin{bmatrix} 1 \\ -1 \end{bmatrix} = \begin{bmatrix} 1 \\ 0 \end{bmatrix}
c1=c2=13\therefore c_1=c_2=\frac{1}{3}

이렇게 하여 u(t)=13[21]+13e3t[11]u(t)=\frac{1}{3}\begin{bmatrix} 2 \\ 1 \end{bmatrix}+\frac{1}{3}e^{-3t}\begin{bmatrix} 1 \\ -1 \end{bmatrix} 이라는 것을 구할 수 있다.

그렇다면 만약 tt\to\infty 라면 어떨까? 아마 u(t)13[21]u(t)\to \frac{1}{3}\begin{bmatrix} 2 \\ 1 \end{bmatrix}로 나올 것이다.


따라서 다음과 같이 생각해볼 수 있다. (λR\lambda \in \mathbb{R})

1. Stability) “u(t)0" when all eλt0, so all λ<0.\text{1. Stability) ``$u(t)\to 0$" when all $e^{\lambda t}\to 0$, so all $\lambda <0.$}
2. Steady state) “u(t) some value" when λ1=0 and other λ<0\text{2. Steady state) ``$u(t)\to$ some value" when $\lambda_1=0$ and other $\lambda < 0$}
3. Blow up) “u(t)” if any λ>0\text{3. Blow up) ``$u(t)\to \infty$'' if any $\lambda>0$}

예를 들어 1. stablility를 만족하는 조건을 생각해보자. (우리는 모든 eigenvalue에 대해서 λ<0\lambda<0을 원하고 있다.)

A=[abcd]A= \begin{bmatrix} a & b \\ c & d \\ \end{bmatrix}
1. trace=a+d=λ1+λ2<01. \ trace=a+d=\lambda_1+\lambda_2<0
2. det(A)=adbc=λ1λ2>02. \ \det(A)=ad-bc=\lambda_1\lambda_2 >0

위와 같이 두 개의 조건 1, 2를 만족하면 u(t)0u(t)\to 0 를 얻을 수 있다.


tt\to\infty 상황이라고 가정하고, 아까 구한 u(t)u(t) 솔루션의 cc를 구하는 방법을 일반화해보자. 아까 예시의 u(t)=c1[21]+c2e3t[11]u(t)=c_1\begin{bmatrix}2 \\ 1\end{bmatrix}+c_2e^{-3t}\begin{bmatrix}1 \\ -1\end{bmatrix} 에 적용한다.

u(0)=[10]u(0)=\begin{bmatrix}1 \\ 0\end{bmatrix}
[2111]eigenvectors matrix[c1c2]=[10]=Sc=u(0)\underbrace{ \begin{bmatrix} 2 & 1 \\ 1 & 1 \\ \end{bmatrix}}_{\text{eigenvectors matrix}} \begin{bmatrix} c_1 \\ c_2 \\ \end{bmatrix} = \begin{bmatrix} 1 \\ 0 \end{bmatrix} = Sc=u(0)

이어서 dudt=Au\frac{du}{dt}=Auu=Svu=Sv를 대입하여 보자.

dudt=Au\frac{du}{dt}=Au
dSvdt=ASv (S:constant value)\frac{dSv}{dt}=ASv \ (S : constant \ value)
Sdvdt=ASvS\frac{dv}{dt}=ASv
dvdt=S1ASv=Λv\frac{dv}{dt}=S^{-1}ASv = \Lambda v

지난 강의에서 배운 S1ASx=ΛxS^{-1}ASx = \Lambda x 를 적용하였다.

따라서 다음과 같이 해석이 가능하다.

dv1dt=λ1v1\frac{dv_1}{dt}=\lambda_1v_1
dv2dt=λ1v2\frac{dv_2}{dt}=\lambda_1v_2
......

그리고 다음과 같이 표현이 가능하다. (지난 강의에서 배운 행렬의 제곱 공식처럼)

v(t)=eΛtv(0)v(t)=e^{\Lambda t}v(0)
u(t)=SeΛtS1u(0)u(t)=Se^{\Lambda t}S^{-1}u(0)
eAt=SeΛtS1e^{At}=Se^{\Lambda t}S^{-1}
u(t)=SeΛtS1u(0)=eAtu(0)u(t)=Se^{\Lambda t}S^{-1}u(0)=e^{At}u(0)

그리고 테일러 급수 ex=0nxnn!e^x=\sum_{0}^n\frac{x^n}{n!} -> 11x=0mxn\frac{1}{1-x}=\sum_{0}^mx^n을 위 식에 활용해보자.

eAt=I+At+(At)22!+...e^{At}=I+At+\frac{(At)^2}{2!}+...
(1At)1=I+At+(At)2+...(1-At)^{-1}=I+At+(At)^2 +...

그러면 이제 u(t)=SeΛtS1u(0)=eAtu(0)u(t)=Se^{\Lambda t}S^{-1}u(0)=e^{At}u(0)가 어떻게 나왔는지 알아보자.

eAt=I+At+(At)22!+...e^{At}=I+At+\frac{(At)^2}{2!}+...
=I+SΛS1t+SΛ2S1t22!+...= I+S\Lambda S^{-1}t+\frac{S\Lambda^2S^{-1}t^2}{2!}+...
=SeΛtS1 (I=SS1)= Se^{\Lambda t}S^{-1} \ (I=SS^{-1})
Λ=[λ10...00λ2..........0....λn]\Lambda= \begin{bmatrix} \lambda_1 & 0 & ... & 0 \\ 0 & \lambda_2 & ... & . \\ . & . & ... & . \\ 0 & . & ... & \lambda_n \\ \end{bmatrix}
eΛt=[eλ1t0...00eλ2t..........0....eλnt]e^{\Lambda t}= \begin{bmatrix} e^{\lambda_1t} & 0 & ... & 0 \\ 0 & e^{\lambda_2t} & ... & . \\ . & . & ... & . \\ 0 & . & ... & e^{\lambda_nt} \\ \end{bmatrix}

다음으로 y+by+ky=0y''+by'+ky=0 에 대해서 u=[yy]u=\begin{bmatrix}y' \\ y\end{bmatrix}, u=[yy]u'=\begin{bmatrix}y'' \\ y'\end{bmatrix}라고 가정해보자. 그리고 uu'uu에 대해서 다음과 같이 수정할 수 있다.

u=[yy]=[bykyy]=[bk10][yy]u'= \begin{bmatrix}y'' \\ y'\end{bmatrix} = \begin{bmatrix}-by'-ky \\ y'\end{bmatrix} = \begin{bmatrix}-b & -k \\ 1 & 0 \end{bmatrix}\begin{bmatrix}y' \\ y\end{bmatrix}
profile
천천히, 그리고 꾸준히.

0개의 댓글