【Linux/Eigen】學習筆記(2):矩陣建立方法
阿新 • • 發佈:2021-01-08
技術標籤:【Linux/ROS學習】【C++學習】線性代數矩陣
在重構機器人演算法時,Eigen庫應該是使用率最多的庫了,因為機器人的演算法涉及到大量的矩陣運算。
首先說一下建立3×3的矩陣的方法,作為初學者我比較關心的是宣告和賦值,用以下三種方式說明:
#include <iostream> #include <Eigen/Dense> using namespace std; int main() { // 宣告和賦值 方法1 Eigen::Matrix3d mat3d1; mat3d1 << 1, 2, 3, 4, 5, 6, 7, 8, 9; cout << "method1:" << endl; cout << mat3d1 << endl; // 宣告和賦值 方法2 Eigen::Matrix<double, 3, 3> mat3d2; mat3d2 << 1, 2, 3, 4, 5, 6, 7, 8, 9; cout << "method2:" << endl; cout << mat3d2 << endl; // 宣告和賦值 方法3 Eigen::Matrix<double, 3, 3> mat3d3; for (int i = 0; i < 3; i++) for (int j = 0; j < 3; j++) mat3d3(i, j) = 100; cout << "method3:" << endl; cout << mat3d3 << endl; return 1; }
上述程式碼的執行結果: