eigen3的使用

矩阵的玩法,就是这样,如何安装

大神的博客

https://blog.csdn.net/hanss2/article/details/78827057
https://www.jianshu.com/p/931dff3b1b21
eigen3的官方使用网站http://eigen.tuxfamily.org/dox/classEigen_1_1HouseholderQR.html

解个方程玩玩

x1 + 2x2 + 3x3 = 3
4x1 + 5x2 + 6x3 = 3
7
x1 + 8x2 + 10x3 = 4

解出结果x1 = -2 ;x2 = 1 ;x3 =1 ;

#include <iostream>
#include <eigen3/Eigen/Core>
#include "eigen3/Eigen/Dense"


using namespace Eigen;
using namespace std;

int main(int argc, char **argv) {
    std::cout << "Hello, world!" << std::endl;
     Matrix3f A;
     Vector3f b; 
     A << 1,2,3, 4,5,6, 7,8,10; 
     b << 3, 3, 4; 
     cout << "Here is the matrix A:\n" << A << endl; 
     cout << "Here is the vector b:\n" << b << endl; 
     ColPivHouseholderQR<Matrix3f> qr(A.rows(), A.cols());
     Vector3f x = qr.compute(A).solve<Vector3f>(b);
     //Vector3f x = A.colPivHouseholderQr().solve(b); 
     cout << "The solution is:\n" << x << endl;

    return 0;
}

注意其中的QR分解分方法,很多教程都是Vector3f x = A.colPivHouseholderQr().solve(b); ,但是我试了,好像行不通,就改成了上面带类名的操作,希望你能跑得通;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值