プロが教える店舗&オフィスのセキュリティ対策術

C言語を用いて逆行列を計算するアルゴリズムのうち,
計算時間が短いプログラム例を教えていただけませんでしょうか?

A 回答 (5件)

数値計算のアルゴリズムはどれもメリットとデメリットがあります。

問題にしている行列はどのような行列か教えて下さい。専門家からの回答もつきやすくなりますよ。
    • good
    • 0

#4です。

GOTO BLAS というものもあり、2割ほど高速なようです。

参考URL:http://www.cs.utexas.edu/users/flame/goto/
    • good
    • 0
この回答へのお礼

ありがとうございます.
引き続き参考にさせていただきました.

お礼日時:2003/10/08 10:48

既存のライブラリを使うのが、高速なように思います。


LAPACK, CLAPACK, LAPACK++の何れかに、さらにATLASによるBLASのチューニングを
行えば、自作のプログラムより一桁近く速くなるように思います。
    • good
    • 0
この回答へのお礼

ありがとうございます.
参考にさせていただきます.

お礼日時:2003/10/08 10:48

一般に連立一時方程式を解く際には逆行列を経由すると精度が落ちたり計算時間もかかります。

行列が疎行列か密行列かで適したアルゴリズムが違うのですが、どれぐらいの次元のどんな成分の行列を何回ぐらい解かれるでしょうか?それはタイムクリティカルな部分の演算ですか?
    • good
    • 0
この回答へのお礼

ご返答ありがとうございました.

疎行列とは0要素の多い行列という意味だとしますと,
疎行列ではないようです.

行列の次数は最大で8です.
演算は下の御礼に記したものです.
ただし,実時間制御にもちいるため,
精度よりも高速性を重視しております.

お礼日時:2003/10/08 10:47

#1です。


勝手に固有値問題と勘違いしてしまいました。済みません。とりあえずLU分解で良いんじゃないですか?

参考URL:http://www.fuka.info.waseda.ac.jp/~kozo/suuchi/s …
    • good
    • 0
この回答へのお礼

抱えている問題は,

X={(I-A)^(-1)}*(I+A)
Y={(I-A)^(-1)}*B   

A:正方,B:非正方

です.やはりLU分解の方法が最速でしょうか?

お礼日時:2003/09/27 22:29

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!