Eigen

数値演算ライブラリ Eigen について

入手する方法

使用の準備

  • 事前コンパイルなどは必要ありません
  • ダウンロードしたファイルを解凍するだけ
  • 利便性のためには,その解凍して出来るフォルダにインクルードパスを通しておくと良い

使い方

  • 詳しい使い方は,公式サイトのDocumentを参照
  • 殆ど,何も考えなくても使えると思います

とりあえず、行列計算

#include<Eigen/Dense>
#include
using namespace Eigen;
using namespace std;

int main(int argc, char** argv)
{
	//Ax=b の連立方程式を解くサンプル

	//行列の次元数
	int dimm=5;

	//サイズ可変の行列
	MatrixXd A;
	A.setRandom(dimm,dimm);

	//サイズ可変のベクトル
	VectorXd x;
	x.setRandom(dimm);

	VectorXd b=A*x;

	MatrixXd x_=A.fullPivHouseholderQr().solve(b);

	cout << "Dimm=" << dimm << " Error=" << (x-x_).norm() << endl;

	return 0;
}