[C++]線形代数ライブラリEigen3.3.7環境構築


環境

  • Ubuntu 20.04 LTS
  • g++ 9.3.0
  • GNU Make 4.2.1

はじめに

タイトルの通りEigen 3.3.7を使うための準備をします。

Eigenの入手

ここから入手。
2020年6月6日現在、安定した最新版は3.3.7でした。

セットアップ

Eigen-3.3.7の中のEigenをコピーしてmain.cppと同じディレクトリに配置。

ディレクトリの構成

ソース

Getting startedを参考に、MakefileとC++のソースを書きます。

Makefile
build:
    g++ -I ./ main.cpp -o main

run:
    ./main
main.cpp
#include <iostream>
#include <Eigen/Dense>

using Eigen::MatrixXd;

int main(void){

    MatrixXd m(2,2);

    m(0,0) = 3;
    m(1,0) = 2.5;
    m(0,1) = -1;
    m(1,1) = m(1,0) + m(0,1);

    std::cout << m << std::endl;

return 0;
}

実行結果

  3  -1
2.5 1.5

最後に

行列の(1,1)成分が、ソース中だと(0,0)になるので、そこを気をつけて使わなければ。

Eigenへのリンク

Eigen
Documentation