- ベストアンサー
maximaの行列計算
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#1です。 行列Aを入力後 fpprec:50$ B:eigenvalues(A); float(realpart(bfloat(B))); float(imagpart(bfloat(B))); を実行してみてください。 Bの固有値はカルダーノの3次方程式が使われているようで虚数単位「%i」が入っていて虚数のように見えますが、実際は実数です。 固有値の実数部、虚数部をとると実数部だけが求まります。 虚数部はMaximaの計算誤差のため出てくるものです。 非常に小さな10^(-49)以下の誤差が入っていますが実際はゼロのはずです(計算精度を上げて計算すれば虚数部の計算誤差はどんどん小さくなっていくかと思います。数値計算では計算誤差はつき物です。本当にゼロかは、計算精度を上げてゼロに近づいていくかで判断します)。 他の数式処理ソフトでも確認済みで、わずかな虚数部が出ます。
その他の回答 (2)
- info22
- ベストアンサー率55% (2225/4034)
やられたMaximaの8次の正方行列表現式を補足に貼り付けて下さい。 そうしていただかないとチェックできず回答できません。
補足
info22様 早速のお返事ありがとうございます。maximaには以下の様に打ち込みました。 A:matrix([727,0,0,-916,0,1073,-916,0],[0,1250,-1465,0,1194,0,0,-916],[0,-1465,1773,0,-1465,0,0,1073],[-916,0,0,1250,0,-1465,1194,0],[0,1194,-1465,0,1250,0,0,-916],[1073,0,0,-1465,0,1773,-1465,0],[-916,0,0,1194,0,-1465,1250,0],[0,-916,1073,0,-916,0,0,727]) よろしくお願い致します
関連するQ&A
- maximaをより、効率的に使いたい!
maximaで行列の固有値を求める計算をしております。固有値を求めた後、その対数とそれ自体の積を求めなくてはいけません。今は値をコピーし貼り付けるという単純な作業をやっておりますが、精度を上げることとなり(40~50桁),その様な場合、間違えないか不安です。maximaではそういった作業~ひとつの入力に対し、複数の出力がある場合、その結果に番号を振り、それらで新たな計算を容易に行うこと~は出来ますか?よろしくお願い致します。
- 締切済み
- 数学・算数
- 線形代数 行列 対角化
対角化について質問させて頂きます。 対角化とは、 「正方行列を適当な線形変換により、もとの行列と同値な 対角行列に帰着させること。」 と説明がありました。 ここで、同値とは具体的にどのような内容を指すのでしょうか? また、対角化を求める際、 正方行列Aに対してP^-1APとなる正則行列Pを求めます。 この正則行列Pは正方行列Aより求めた固有値に属する固有ベクトル を並べたものになりますが、これはなぜですか? なぜ、固有ベクトルを並べたものが正則行列Pになるのでしょうか? 以上、ご回答よろしくお願い致します。
- ベストアンサー
- 数学・算数
- 複素関数と行列の関係がわかりません
「複素数zについて,√zが定められている.このとき,正方行列Aの固有値が,0および虚部が負の純虚数でなければ,√Aが定義できる.これは,Aの固有値を含む領域において正則なzの関数f(z)に対して,f(A)が定義できるためである.」ということを習いました. ここで,質問なのですが,「正方行列Aの固有値が,虚部が負の純虚数でない」という条件はなぜ必要なのでしょうか? √zについてz=rexp(iθ)と極形式で表示して,コーシーリーマンの関係式を調べると,z=0のときは,√zは正則ではないということがわかり,これが「Aの固有値が0でない」ことを要求する理由だと考えました. しかし,r≠0かつθ=-π/2の場合は,√zが正則であるため,Aの固有値として虚部が負の純虚数が存在していても,√Aが定義できると考えてしまいます. ご教授願います.
- 締切済み
- 数学・算数
お礼
なるほど!大変よくわかりました。早速、計算してみようと思います。本当に困っておりましたので、感謝致します。ありがとうございました。