2008-11-01から1ヶ月間の記事一覧

Boost.uBLAS で最小二乗法

今回は AX = B の最小二乗解(Least squares solution),あるいは最小ノルム解(Minimum norm solution)を計算します.lapack を用いてこれを計算するには dgels, dgelss, dgelsd という関数を用いればよく,対応する bindings のヘッダファイルは gels.hpp, g…

Boost.uBLAS で正値対称係数行列の線形方程式系(System of linear equations)の解の計算

今回は AX = B の解行列 X あるいは Ax = b の解ベクトル x を計算する関数を実装します.ただし,A は正値対称行列であるとします. lapack には dposv という関数があり,これが内部で係数行列をコレスキー分解して解を計算してくれます.つまり,前回と同…

Boost.uBLAS で一般係数行列の線形方程式系(System of linear equations)の解の計算 - lapack版

今回は前回の連立方程式の計算を lapack を用いて実装します. lapack には dgesv という関数があり,これが内部で係数行列をLU分解して解を計算してくれます.私たちがするべきことといえば,いつものように bindings.lapack.gesv に渡す column_major な行…

Boost.uBLAS で一般係数行列の線形方程式系(System of linear equations)の解の計算

今回は AX = B の解行列 X あるいは Ax = b の解ベクトル x を計算する関数を実装します.uBLAS にはLU分解を計算する機能が既にあるため,これらの機能を簡単に実装することができます. また,uBLAS による連立方程式の解き方は Boost 数学関係ライブラリ…