선형대수와 미분방정식에서 중요하게 쓰이는 것 중 하나는 exponential matrix이다.
˙x=Ax, where A∈Rn로 된 문제에서 A가 matrix이기 때문에 이에 대한 솔루션을 작성할 때
x=eAtx0이다.
참고로 이 역시 A가 constant matrix이기 때문에 가능한 것이고, 상수가 아닌 시간에 따라 변하는 경우에는 다음과 같이 표현한다.
x(t)=e∫t0A(s)dsx(0)
여기에서는 A가 상수인 경우만 생각하도록 한다.
eAt 이와 같이 exponential의 지수로 matrix가 들어가는 것을 matrix exponential이라고 한다.
그러면 solution을 구할 때 eAt를 어떻게 풀어야하는가?
그런데 eAt를 단순하게 생각해서 계산할 수 없다.
eAt=I+At+12!A2t2⋯
A가 nonsingular인 경우
A=VΛV−1 와 같이 eigenvalue decomposition을 하고 위 식에 대입한다.
굳이 A라는 matrix를 두고 eigenvalue decomposition을 수행하는 이유는
diagonal matrix Λ의 유리한 성질 때문이다.
eΛ=[eλ10⋯0eλ2⋯⋮]
다음과 같이 diagonal term에만 exponential 값을 가진다.
이렇게 깔끔하게 표현하기 위해서 잠시 eigenvalue decomposition으로 변형하는 것이다.
eAt=V(I+Λt+12Λ2t2)V−1=VeΛtV−1
다음과 같이 식을 구하면 훨씬 간단하게 표현할 수 있다.
이렇게 푸는 방식은 물리적으로 의미가 있으나 여기에서는 설명을 줄이고,
미분방정식을 풀 때 시간에 대해 적분해야하는 경우가 있어서 글을 쓰는 것이었다.
continuous system을 discretization할 때
Zero-Order Hold로 할 경우에는 다음 적분을 수행해야한다.
xk+1=eA(tk+1−tk)xk+∫tk+1tkeA(tk+1−τ)Bu(τ)dτ
이 때 u는 constant라고 가정하기 때문에
=eATsxk+∫tk+1tkeA(tk+1−τ)Bdτu
로 만들 수 있다. 이 때 적분을 어떻게 수행하는가?
미분
ddt(eAt)=AeAt
적분
∫T0eAtdt=T(I+AT2!+(AT)23!+⋯+(AT)n−1n!+…)
A(∫T0eAtdt)+I=eAT
∴∫T0eAtdt=A−1(eAT−I)
라는 결과를 얻을 수 있다.
다만 이것도 A가 nonsingular일 때이고, singular일 때는 직접 적분을 수행하는 것이 더 빠르다.
A가 nonsingular일 때 푸는 방법 중에는
아래 참고문헌인 stackexchange에서 다음과 같이 설명하고 있다.
A=U−1(B00C)U와 같은 jordan form로 바꿔준 다음에 적분을 수행한다.
etA=U−1(etB00etC)U
∫T0etAdt=U−1(∫T0etBdt00C−1(eTC−I))U
https://math.stackexchange.com/questions/658276/integral-of-matrix-exponential
Integral of matrix exponential
Let A be an n×n matrix. Then the solution of the initial value problem ˙x(t)=Ax(t),x(0)=x0 is given by x(t)=eAtx0. I am
math.stackexchange.com
'수학 Mathematics' 카테고리의 다른 글
[수학] Norm of vector (0) | 2023.09.04 |
---|---|
[수학] Convex function (0) | 2022.10.14 |
[수학] 수학적 증명 방법 (0) | 2022.03.10 |
[수학] Definition, Theorem, Lemma, Corollary (0) | 2021.02.18 |