c++-C++使用Eigen库如何求解非方阵的广义逆矩阵?类似matlab的pinv函数

问题描述

C++使用Eigen库如何求解非方阵的广义逆矩阵?类似matlab的pinv函数

C++使用Eigen库如何求解非方阵的广义逆矩阵?类似matlab的pinv函数?
运算量很大,所以必须使用库函数哦~~可以麻烦一点,不一定一个函数解决
非常感谢!很急!

解决方案

自己已经解决了,用了eigen库,有相关同样问题需要的可以私聊我

解决方案二:

http://download.csdn.net/detail/sunhongqing/1081026

解决方案三:

朋友,我私信你,你没回我,我也需要eigen求广义逆的方法

解决方案四:

// Solve Ax = b. Result stored in x. Matlab: x = A b.
x = A.ldlt().solve(b)); // A sym. p.s.d. #include
x = A.llt() .solve(b)); // A sym. p.d. #include
x = A.lu() .solve(b)); // Stable and fast. #include
x = A.qr() .solve(b)); // No pivoting. #include
x = A.svd() .solve(b)); // Stable, slowest. #include
// .ldlt() -> .matrixL() and .matrixD()
// .llt() -> .matrixL()
// .lu() -> .matrixL() and .matrixU()
// .qr() -> .matrixQ() and .matrixR()
// .svd() -> .matrixU(), .singularValues(), and .matrixV()

时间: 2024-08-03 08:59:25

c++-C++使用Eigen库如何求解非方阵的广义逆矩阵?类似matlab的pinv函数的相关文章

移植-eigen库的问题,出现了非法基类的错误~

问题描述 eigen库的问题,出现了非法基类的错误~ 最近在移植一个程序,是国外一个大牛在linux下结合ROS系统写的一个程序,叫lsd_slam.__我是纯小白啊,_老师就叫我把它移植到Windows下来,_然后就碰到了一个错误,说T非法基类,指向的是eigen库里面的一个头文件里的代码 namespace internal { template struct workaround_msvc_stl_support : public T { inline workaround_msvc_st

使用eigen库时出现的error

问题描述 使用eigen库时出现的error error: 'THIS_METHOD_IS_ONLY_FOR_VECTORS_OF_A_SPECIFIC_SIZE' is not a member of 'Eigen::internal::static_assertion'| 显示有问题的地方: crossag = acc.cross(gyro); crossag1 = crossag.cross(acc); 前面进行了声明 VectorXd acc(3); VectorXd gyro(3);

c++-OTL库的otl_stream有类似fstream的seekg函数一样的函数吗?

问题描述 OTL库的otl_stream有类似fstream的seekg函数一样的函数吗? otl_stream有类似fstream的seekg函数一样的函数吗?如果没有的话如何实现类似功能?假如一个行中有5个元素我只需要读第2,3,5个元素,如何做?难道必须将5个元素读到一个数组中再读取吗?但是我不知道第1,4个元素的数据类型,所以都第1,4个元素时不知道用什么类型的变量作为流操作符>>右边的操作变量,我只知道第2,3,5个元素的数据类型,这该如何处理呢?如果otl_stream实现了类似f

eigen库 李代数-Eigen3有没有李代数相关的函数

问题描述 Eigen3有没有李代数相关的函数 Eigen3库中有没有李代数相关的函数?有没有像TooN中那样的SO3之类的那样的类型 解决方案 Eigen3 是C++矩阵处理工具 而 李代数 (Lie algebra) 一类重要的非结合代数.非结合代数是环论的一个分支,与结合代数有着密切联系.结合代数的定义中把乘法结合律删去,就是非结合代数 这两个好像是没有交集吧.

迷宫求解非递归 DFS BFS(应用栈和队列)

栈和队列的应用对迷宫问题求解 没有递归 自己手动建的栈和队 并且输出路径 DFS的路径就是 栈中的坐标 BFS的路径在队又开了一个域存上一层的base值 语言还是用的C++ 感觉比C的封装性好很多 充分体会了一下DFS一边比BFS快 但是BFS是最优解而DFS可能不是最优解   #include <iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace

在VC中使用MATLAB C/C++函数库

MATLAB广泛应用于线性代数.自动控制理论.数理统计.数字信号处理.时间序列分析.动态系统仿真等领域.因此如果在VC中对MATLAB进行调用将大大减少编程的工作量.保证程序的准确性,并且继承了VC++强大的功能,提高开发效率,本文将介绍了在VC中使用MATLAB函数库的具体步骤: 在VC中建立一个项目后: 1.设置: 添加路径: 在project-settings-c/C++-category:-preprocessor-Additional include directories:栏目中添加

NPAPI——实现非IE浏览器的类似ActiveX的本地程序(插件)调用

  一.Netscape Plugin Interface(NPAPI) 大致的说明可以看下官方文档Plugin 本文主要针对于JavaScript与插件交互部分做一些交流,比如用于数字证书的操作(淘宝和支付宝的插件),用于播放的flash player插件等 与javascript的交互需要用到NPAPI中的npruntime Scripting plugins 下面的部分将以示例的方式说明整个过程如何去实现   在开始前需要从火狐浏览器源代码中获取接口头文件火狐4.0.1源码下载 下载后在\

泛函编程(19)-泛函库设计-Parallelism In Action

    上节我们讨论了并行运算组件库的基础设计,实现了并行运算最基本的功能:创建新的线程并提交一个任务异步执行.并行运算类型的基本表达形式如下: 1 import java.util.concurrent._ 2 object Par { 3 type Par[A] = ExecutorService => Future[A] 4 def run[A](es: ExecutorService)(pa: Par[A]): Future[A] = pa(es) 5 //> run: [A](es:

VC++库

c++     大量的程序员都尽可能多地利用现有的代码.程序员经常购买那些包装成库的代码,而且许多成功的公司正是靠生产真正优秀的代码库而发展起来的,例如Rogue WaveSoftware (www.roguewave.com).    当C语言流行时,代码库就是函数库.例如,可以购买一个数学库,该库含有完成微积分和代数运算的函数.通常,可以在程序代码中使用一个包含文件来指定一个函数库,可以静态或动态地链接这个函数库.    静态链接意味者库代码直接集成到程序中.在这种情况下,程序不依赖于其他文