【線形代数】行列指数関数の求め方(2パターン)

問題

A=(0134)の行列指数関数eAtを下記2つの方法で求めよ。
1.固有値を用いた対角化
2.ラプラス変換

はじめに

本問、意外と出題されたりします。現代制御での出題が最も多いですが、線形代数でも何かしらの初期値を与えて、そこからの時間変化をグラフに描く問題が出題されることがあります。

知っていれば得点できますので、是非この記事で復習いただければと思います。

本記事で覚えたいこと

固有値を用いた行列指数関数の求め方
  1. 行列Aの固有値λ1,λ2を求める
  2. 各固有値に対する固有ベクトルv1,v2を求め、P=(v1,v2)とする。
  3. Pの逆行列P1を求める。
  4. D=(eλ1t00eλ2t)eAt=PDP1

行列Aを対角化する作業とあまり変わりません。行列Dの部分が、exp項に変わったところに注意すれば、最終的に答えに行き着くのではないでしょうか。

ラプラス変換を用いた状態遷移行列の求め方
  1. 行列(sEA)の逆行列(sEA)1を計算する。
  2. 求めた逆行列を逆ラプラス変換し、状態遷移行列eAtを求める。

ひょっとすると、こちらのやり方のほうがシンプルかもしれません。

dx(t)dt=Ax(t)をラプラス変換すると、sX(s)x(0)=AX(s)となるため

(1)(sEA)X(s)=x(0)X(s)=(sEA)1x(0)x(t)=eAtx(0)

になることから、上記の手順(CHECK)が発生しています。

解答例

固有値を用いた場合

特性方程式|AλE|について

(2)|λ134λ|=λ2+4λ+3=0λ=3,1

(i)λ=3のとき、固有ベクトルは、v1=(131)

(ii)λ=3のとき、固有ベクトルは、v2=(11)

これより、P=(13111),P1=12(3331)を得る。

よって、求める状態遷移行列eAt

(3)eAt=12(13111)(e3t00et)(3331)(4)=12(13e3tete3tet)(3331)(5)=12(e3t+3ete3t+et3e3t3et3e3tet)

ラプラス変換を用いた場合

(sEA)=(s13s+4)だから、これの逆行列は

(6)(sEA)1=1s2+4s+3(s+413s)(7)=12(1s+3+3s+11s+3+1s+13s+33s+13s+31s+1)

よって、逆ラプラス変換することで、行列指数関数

(8)eAt=12(e3t+3ete3t+et3e3t3et3e3tet)

を得る。

最後に

参考文献(P22)にあるように、微分方程式を分解し、行列指数関数を求める第3の方法もあります。ただ、手計算で行うには大変でしたので、今回は割愛します。興味がある方は是非チェックしてください。

また、ラプラス変換を使用した方法の途中で、部分分数分解を行った計算があります。効率的に部分分数分解する方法を下記のページで紹介しています。宜しければチェック下さると幸いです。

参考文献

http://shiwasu.ee.ous.ac.jp/in/03_web.pdf
タイトルとURLをコピーしました