2009-07-20 10 views
2

私は、表現が不十分な方程式(例えば、システムを記述する行列が背の高さよりも広い)に対して単一の解を生成する関数を記述しようとしています。これを行うために、MathematicaとTIの両方の計算機でrref()関数と同様に行列を行を減らす方法についてLAPACKのドキュメントで調べています。私が一番近かったのはhttp://software.intel.com/en-us/forums/intel-math-kernel-library/topic/53107/でした。しかし、このスレッドは、単純に "U"の上三角行列を(そして各行を対角で除算して)単に行列の縮小されたエシェロン形式と同じであることを意味するように思われます。私は自分でrref()をコーディングすることができましたが、私はLAPACKが有名なパフォーマンスを達成できるとは考えていません。Lapackの行削減

1)不足しているシステムに対して、特定の解決策を得るための良い方法はありますか?
2)そうでない場合は、LAPACKが行列を行削減する方法はありますか?

ありがとうございます!

+0

を参照して、最小二乗解です。各行を先頭のエントリで分割すると、 'ref'を' rref'に変換します。 – Sharpie

答えて

3

このための一つのしばしば使用される方法は、LU分解におけるU行列は `ref`あるLAPACKのsgelsx

+0

私はこれを試して、それが動作するように見えます。ありがとう。 – Litherum