求解线性方程最小二乘解

来源:互联网 发布:java中main函数 编辑:程序博客网 时间:2024/03/29 18:54
<pre name="code" class="html">#include "math.h"#include "iostream"#include "vector"#include "list"using namespace std;#include "Eigen/Dense"#include "Eigen/Core"#include "Eigen/QR"#include "Eigen/SVD"#include "Eigen/Geometry"#include "Eigen/LU"#include "Eigen/Eigenvalues"#include "Eigen/Householder"using namespace Eigen;

MatrixXf A(3, 2);A<<0.3, 0.1, 0.4, 0.2, 0.3, 0.7;cout<<"矩阵A: \n"<<A<<endl;Vector3f b(5, 3, 4);cout<<"向量b: \n"<<A<<endl;VectorXf x = A.colPivHouseholderQr().solve(b); //VectorXf x = A.llt().solve(b);  // 必须是方阵// 最小二乘求解;VectorXf x1 = A.jacobiSvd(ComputeThinU | ComputeThinV).solve(b);  cout<<"解法1输出x: \n"<<x<<endl<<endl;cout<< "解法2输出x: \n" <<x1<<endl;


                                             
0 0