- ベストアンサー
対称行列の固有値
次の対称行列 1 -3 2 -3 2 1 2 1 3 の固有値xを求めたいのですが、 固有方程式が x^3-6x^2-3x+42=0 となり因数分解ができません。 対称行列の固有値は必ず実数となる らしいので私の計算間違いかと思いますが、 何度計算しても同じ固有方程式になってしまいます(T T) どなた様か御指導願います。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
これは実対称行列ですから、固有値は3つの実数です。固有方程式の判別式は正ですので、3つの異なる実根になります。Mathematicaはカルダノの公式を使っています。これは不還元の場合になりますので、外見は複素数ですが、実際は実数です。ですから、Mathematicaの解もNo2さんの解も正しい(等しい)のです。このことを確かめるには、簡単な3実根をもつ3次方程式をカルダノの公式にあてはめてみれば良いでしょう。
その他の回答 (4)
- Tacosan
- ベストアンサー率23% (3656/15482)
#3 の回答に対する補足についてですが, 「代数方程式の解を求めるため, その代数方程式を固有方程式として持つ行列の固有値を求める」ということがあったそうです.
- ojisan7
- ベストアンサー率47% (489/1029)
5次以上の代数方程式は数値計算で近似値を求めます。4次以下の代数方程式も根の公式を使うより、数値計算した方が実用的ですよね。数値計算の方法はいくつかありますので、数値解析の教科書等で調べてください。サイトにも紹介されていると思います。「高次方程式の数値計算」をキーワードにして検索してください。
- colder
- ベストアンサー率43% (30/69)
固有方程式はあっています。 実数≠有理数 ということは理解していますか 因数分解は常にできるとは限りません。 固有値は、 4.80560、3.61323、-2.41883 付近です。
お礼
ご回答ありがとうございます。
補足
上の問題はある大学院の過去問題です。 自力で解くことができず、さらに解答がないため、 Mathematica5.1に Solve[x^3 - 6 x^2 - 3 x + 42 == 0, x] と入力し、解かせてみました。 すると複素数の解を出力しました。 3つの複素解は複雑ですが規則性があるため、 人手で解く方法があるのではないかと 調べていました。 colder様が示された数値計算による 解を固有値に採用すると、確かに 元の固有方程式と似た係数をもつ方程式 になるのですが、 Mathematicaが出力した複素解と 対称行列の固有値は必ず実数となる という性質が矛盾しているように 思えたので OKWaveに投稿しました。 Mathematicaの扱いもよく知らないので、 間違っているかもしれません。 どなたか人手で解く方法を教えてくださりませんか。
- Willyt
- ベストアンサー率25% (2858/11131)
固有方程式は下記です。 (1-λ)(2-λ)(3-λ)-4(2-λ)-9(3-λ)-(1-λ)=0 となります。後は腕力の問題です(^_-) 定数項は30になりますね。行列式の計算で右上がりのときにはマイナスをつけなければいけないのを間違えていませんか?
補足
行列式の性質を用いたり、 サラスの方法を用いても 固有方程式は、 x^3-6x^2-3x+42=0 となってしまいました。
お礼
ご回答、誠にありがとうございます。
補足
>Mathematicaはカルダノの公式を使っています それは存じませんでした。確かにカルダノの公式だと 3次正方行列の固有方程式を解くことができますね。 忘れていました。ありがとうございます。 ojisan7様のご回答を受けて思ったのですが、 5次以上になってくると方程式を 代数的に解くことができないと聞いたことが あります。そのような場合はどのように 求めるのでしょうか。求められる場合の 解き方をご存じの方いますか? 厚かましい追加の質問をお許しください。