Programing/Language/C++/Library/Eigen の変更点


#contents
----
*基本 [#j2ddb131]

|分類|用例|説明|h
|宣言|Matrix3d|double型の3x3行列|
|~|Matrix3f|float型の3x3行列|
|~|Matrix3i|int型の3x3行列|
|~|Matrix3b|bool型の3x3行列|
|~|Matrix3cd|complex double型の3x3行列|
|~|Matrix3cf|complex float型の3x3行列|
|~|Matrix<double,2,3>|double型の2x3行列|
|~|Matrix<double,6,6,RowMajor>|行優先double型の6x6行列|
|~|Matrix<double,6,6,ColMajor>|列優先double型の6x6行列|
|~|Matrix<double,Dynamic,Dynamic>|double型の不定サイズ行列|
|~|Vector3d|double型の3x1行列|
|~|RowVector3d|double型1x3行列|
|初期化|A = MatrixXd::Zero(3,3)|3x3行列を0で初期化|
|~|A = MatrixXd::Ones(3,3)|3x3行列を1で初期化|
|~|A = MatrixXd::Constant(3,3,2)|3x3行列を2で初期化|
|~|A = MatrixXd::Random(3,3)|3x3行列を乱数で初期化|
|~|A = MatrixXd::Identiry(3,3)|3x3行列の単位行列で初期化|
|~|A << 1,2,3, 4,5,6, 7,8,9; |3x3行列を指定した数値で初期化|
|~|MatrixXi A { {1, 2}, {3, 4} };|2x2行列を指定した数値で初期化|
|操作|||
|算術計算|||

};
*幾何演算 [#g97541a1]

** 2点間の距離 [#x5834eec]
#geshi(cpp,number){{
  Eigen::Vector3d a(1,2,3); // 点A
  Eigen::Vector3d b(4,5,6); // 点B
  Eigen::Vector3d v_ab = b-a; // ベクトルAB

  v_ab.norm(); // ab間の距離
  v_ab.squaredNorm(); // ab間の二乗距離
  v_ab.dot(v_ab);     // ab間の二乗距離(squaredNormと同じ)

}}
*参考リンク [#kdecf986]
- [[Eigen>https://eigen.tuxfamily.org/index.php]]
- [[行列ライブラリEigen のメモ>http://ankokudan.org/d/dl/pdf/pdf-eigennote.pdf]]