- 締切済み
線形代数 行列の対角化とユニタリー行列について
線形代数 行列の対角化とユニタリー行列について 行列Aをの固有値a1,a2,.....に対して固有ベクトルをv1,v2,.....とするとAを対角化する変換行列Pは P=(v1,v2,...)となりますよね?このとき対角化された行列は PAP^(-1)とP^(-1)APのどちらですか? 教科書によって違うので混乱しています。 また、Aが対角化可能かどうかは具体的にはどのように判断するんですか? というのも今までエルミート行列しか対角化したことなかったんです。 エルミート行列を対角化する変換行列はユニタリー行列であるという認識は正しいですか? ユニタリー行列の場合変換の際に基底の大きは保存されると思います。よって大きさが変わっていいならユニタリーでなくても対角化できそうなのですが。 一般的には対角化とエルミート行列とユニタリー行列の間にはどんな関係があるのでしょうか? 迷走した質問ですみません。よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- alice_44
- ベストアンサー率44% (2109/4759)
No.3 補足の例は、確かに Uの転置 = U となっていますが… H と U の並び順を間違えても対角になったのは、 Uの逆行列 = U だからです。 H が実エルミート、すなわち、対称行列ですから、 U は実ユニタリー、すなわち、直交行列になります。 よって、Uの転置 = Uの逆行列となり、 両条件は一致するのです。
- alice_44
- ベストアンサー率44% (2109/4759)
> UHU^(-1)が対角型となるとすると > 固有ベクトルの組を求めUの要素をUijとして という記述からすると、H を右から作用させて 固有行ベクトルを並べたものを U としているのでしょうか? それだと、質問文の P=(v1,v2,…) と合わないけれども… H を左から作用させた固有列ベクトルを並べた U に対し、 対角化は UHU^(-1) ではなく U^(-1)HU だというのが No.1 の内容なので、無視されたとしたら悲しい。 対角化の作業は、本質的にメンドクサイもので、 素晴らしい省力化は存在しません。 固有値と固有ベクトルを求める厄介な計算は、避けられない。 その部分が済んでしまえば、後は、 固有ベクトルの組をシュミット法か何かでユニタリ化して、 固有列ベクトルを u_i とすれば、U = (u_1,u_2,…) と置いて U^(-1)HU が対角行列です。 シュミット法を使うときには、ユニタリ化する前の固有ベクトルの 添え字を、同じ固有値に属する固有ベクトルが隣接するように 付けておくのがポイント。これを外すと、間違った変換行列が 求まります。 u_i の固有値を λ_i として、H = Σ(λ_i)(u_i)(u_i)^t という 表示もあるけれど、「対角化」には、役立たないしねぇ。
- Tacosan
- ベストアンサー率23% (3656/15482)
対角化可能性については, (理論的には) 最小多項式から調べることができます. 最小多項式が 2次の因子を持たなければ対角化可能, だったかな? あと, エルミート行列において「ユニタリでない行列でも対角化可能」であることはあきらかです. ユニタリ行列 U で対角化できるなら, その (0 でない) スカラ倍 αU でも当然対角化できる.
- alice_44
- ベストアンサー率44% (2109/4759)
行列 A の対角化を PAP^(-1) と書く本と P^(-1)AP と書く本があるのは、 何を P と置くかが異なっているからです。 質問文中のように P = (v1,v2,…) と置くのであれば、P^(-1)AP が正解で、 PAP^(-1) は違います。 もし、(v1,v2,…) の逆行列を P と置けば、今度は PAP^(-1) のほうが 対角行列になりますね。 エルミート行列の対角化については、「変換行列はユニタリー行列である」というよりも、 変換行列をユニタリー行列の範囲で見つけることができる…ということです。 ユニタリーでない変換行列もあるのですが、変換行列でユニタリーなものが必ずある …ということ。 「ユニタリー行列の場合変換の際に基底の大きは保存される」は、全く意味不明ですが、 「ユニタリーでなくても対角化できそう」は、正解です。 対角化とエルミート行列とユニタリー行列の関係ですが、 エルミート行列(を含む正規行列)は、ユニタリーな変換行列によって対角化可能である …と言えます。
補足
回答ありがとうございます。少し理解が深まりました。 ではエルミート行列Hを対角化する変換行列をユニタリーとするにはどうしたらいいのでしょうか? 今まではエルミート行列Hを対角化するユニタリー行列をUとしUHU^(-1)が対角型となるとすると、まずHの固有値、固有ベクトルの組を求めUの要素をUijとして UH=H'U の成分計算とU^(†)U=Eの条件からUを決定するという方法で求めていました。これって結構めんどくさいんですが、他に簡単な方法はないでしょうか? >「ユニタリー行列の場合変換の際に基底の大きは保存される」は、全く意味不明ですが 基底じゃなくて一般のベクトルでした。ユニタリー行列Uによってベクトルvをv'=Uvと変換するとき|v'|=|v|ということです。これってユニタリー変換特有ですよね?
補足
例えばエルミート行列HをH= |0 1| |1 0| とします。 固有値はλ1=1,λ2=-1となるので対角化した行列H'は |1 0| |0 -1| となります。この変換行列Uとして UHU^(-1)=H'すなわち UH=H'U となるので成分を具体的に計算するとUの成分に関する2つの独立な方程式が得られます。 u12=u11 (1) u22=-u21 (2) これとU^(†)U=Eの成分計算から (u11)^2+(u21)^2=1 (3) (u11)(u12)+(u21)(u22)=0 (4) (u12)^2+(u22)^2=1 (5) (1)(2)を(4)に代入して (u12)^2=(u21)^2 が得られるのでu12=u21を選ぶと u12=u21=u11=-u22 これと(3)から1/√2=u12=u21=u11=-u22となります。 これから実際にUHU^(-1)を計算すると確かにH'になります。 これって固有ベクトルが (v1,v2)=t(v1,v2) (右辺は転置) となるのでたまたまU^(-1)HUと一致するんでしょうか?つまりこの方法で求めたUはt(v1,v2)だったということでしょうか?