Common Library  0.9.5
tadah_fussy::math_lib::solver::CGM_LinearEquation< T > クラステンプレート

共役勾配法 ( Conjugate Gradient Method ) による連立方程式の計算 [詳解]

公開メンバ関数

 CGM_LinearEquation (T e)
 収束判定のしきい値を指定して構築 [詳解]
 
template<class Ran >
void operator() (const SquareMatrix< T > &a, Ran x)
 連立方程式を解く [詳解]
 

詳解

template<class T>
class tadah_fussy::math_lib::solver::CGM_LinearEquation< T >

共役勾配法 ( Conjugate Gradient Method ) による連立方程式の計算

構築子と解体子

◆ CGM_LinearEquation()

収束判定のしきい値を指定して構築

引数
e収束判定のしきい値(前回求めた解との差の絶対値が全てこの値以下になったら処理を終了する)

関数詳解

◆ operator()()

template<class T >
template<class Ran >
void tadah_fussy::math_lib::solver::CGM_LinearEquation< T >::operator() ( const SquareMatrix< T > &  a,
Ran  x 
)

連立方程式を解く

覚え書き
係数行列と右辺(解ベクトル)の大きさが等しいかチェックしていないことに注意
解 y が不定の場合、得られる解は最小ノルム解 ( |y| が最小の解 ) になる。 また、解 y が不能の場合、得られる解は最小二乗解 ( |ay - x| が最小の解 ) になる。
引数
a連立方程式の係数行列への参照
x対象の連立方程式の解ベクトルの先頭位置(計算結果の未知数がそのまま返される) 反復処理の開始時には元の x の値が初期値として利用されることに注意
戻り値
なし

このクラス詳解は次のファイルから抽出されました: