//计算Ax=b;
Eigen::Matrix3d A;
A<<1,1,1,1,2,3,3,2,3;
Eigen::Matrix<double, 3, 1> b;
b<<3,6,8;
cout<<"行列式为:"<<A.determinant()<<endl;//看一下行列式的值是否为0,确保可逆
cout<<"x="<<A.inverse()*b<<endl;//直接求逆来解,速度会慢
cout<<"x="<<A.colPivHouseholderQr().solve(b)<<endl;//QR分解,速度快,注意调用格式
输出:
行列式为:2
x=1
1
1
x=1
1
1
结果是一样的。