• ベストアンサー

連立方程式(行列)

線形方程式Ax=bを解くにあたって(Aはn次の正方行列) 逆行列を使って解くとn^3回、ガウスの消去法を使うとn^3/3回の手順で解けるらしいのですが、その手順というのがわかりません。n=3あたりを例にして逆行列なら27回(省略込でもいいです)、消去法なら9回の手順を教えていただけませんか? 消去法の方はわかってきたので逆行列だけでもお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • POTATO_XP
  • ベストアンサー率10% (24/230)
回答No.2

>言語化してもらえると…ってのはさすがに頼りすぎですかね?w ですねぇ・・・。(笑) よっぽど切羽詰った状況なら手を貸してもいいですが、 別にそこまで大したものでもないでしょう? まずは、自分で考えてみて下さい。どうしてもダメだったり、 機能拡張したいけど方法が分からないとかあれば、また書き込 んでおいて下さい。 >逆行列の方はもうちょっと検索知してみますね。 n行1列のベクトルが、n行n列の単位行列になるだけで本質的な 違いは何一つありません。結局の所、単に掃き出し法をしてる だけですよ。 頑張ってみてください。

I-ryu
質問者

お礼

わざわざ私の戯言(w)にまでつきあっていただいてありがとうございます。 あとは自力でがんばります! もし多少違ってもそれはそれで勉強になりますしねw

その他の回答 (1)

  • POTATO_XP
  • ベストアンサー率10% (24/230)
回答No.1

連立方程式の解を求めるアルゴリズムとしては、直接法、反復法1、反復法2と数種類あります。 ■直接法 ガウスの消去法、LU分解法 ■反復法1 ヤコビ法、ガウス・ザイデル法 ■反復法2 最急降下法、共役勾配法、ICCG法 etc... 検索して、調べてみてください。参考までに、ガウスの消去法の手順を示しておきます。 n=0から初める、n=0~N-1の範囲で以下を繰り返す 1).n行n列成分の値でn行成分の値を全て割る。 m=0から始める、m=0~N-1の範囲で以下を繰り返す、但しm=nとなる場合は処理をとばす 2).m行n列成分の値で倍したn行成分でm行成分を全て引く。 注意する事は、1).の処理でn行n列成分0の場合の特殊処理を入れる事。あと、n行n列成分の値を割る場合、この値が極力大きな値となる様に工夫した方が精度が良くなります。実用的な所だと100×100以上の規模の計算も必要になる場合もあり、誤差が累積するとの理由で直接法はあまり用いられず、反復法の出番になります。 以上、ご参考まで。

I-ryu
質問者

お礼

消去法の手順を言葉で説明するのに困ってたので助かりました。 逆行列の方はもうちょっと検索知してみますね。 言語化してもらえると…ってのはさすがに頼りすぎですかね?w

関連するQ&A