最近需要用 C++ 做一些数值计算,之前一直采用Matlab 混合编程的方式处理矩阵运算,非常麻烦,直到发现了 Eigen 库,简直相见恨晚,好用哭了。 Eigen 是一个基于C++模板的线性代数库,直接将库下载后放在项目目录下,然后包含头文件就能使用,非常方便。此外,Eigen的接口清晰,稳定高效...
分类:
编程语言 时间:
2015-07-22 18:30:05
阅读次数:
410
前言:
Eigen 是一个线性算术的C++模板库,包括:vectors, matrices, 开源以及相关算法。功能强大、快速、优雅以及支持多平台,可以使用该库来方便处理一些矩阵的操作,达到类似matlab那样的快捷。现在已经发展到Eigen3了,目前最新版本为Eigen 3.1.2。
Eigen使用预备工作:
首先到Eigen官网上下载Eigen源码包,下载后解压完直...
分类:
编程语言 时间:
2015-06-24 18:56:59
阅读次数:
189
错误:error C2338: THE_BRACKET_OPERATOR_IS_ONLY_FOR_VECTORS__USE_THE_PARENTHESIS_OPERATOR_INSTEAD 这种错误不会直接定位到行,要自己慢慢看代码,找出不正确的访问。原因:使用[]访问引起的错误,eigen中矩阵的...
分类:
编程语言 时间:
2015-04-24 12:09:19
阅读次数:
257
这个周开始要着手实现网格水印的代码了,虽然还什么都不会,但也只能一步步摸索着往前走了。 我要实现的论文题目是>,之前的博客中有过这篇论文的理论分析,看起来貌似不难,但动手实现起来的时候还是挺困难的。首先要解决的问题就是配置实验环境。 一开始我打算用Eigen对拉普拉斯矩阵进行特征值分解,因此就涉及到...
分类:
编程语言 时间:
2015-04-15 21:17:35
阅读次数:
164
在优化求解问题中,经常要用到矩阵奇异值的SVD分解。奇异值分解 (singularvalue decomposition,SVD)是一种可靠地正交矩阵分解法,它比QR分解法要花上近十倍的计算时间。在Ubuntu下基于eigen C++库测试了eigen SVD算法的性能,即SVD求解最小二乘/伪逆...
分类:
编程语言 时间:
2015-03-03 06:24:38
阅读次数:
553
晚上突然想写一段小C++程序,要用到矩阵求逆呀乘法呀之类的,所以找了一下有什么现成的可用的C++矩阵计算相关的库,发现有一大堆,在其中各种各样的配置,感觉比较麻烦。从方便性来说Eigen是最方便的了,只需要把它放在项目下,然后include一下就好了,下面的博客介绍的比较详细了,里面也有一些refe...
分类:
编程语言 时间:
2015-03-03 06:20:08
阅读次数:
196
Eigen是C++模版矩阵库,非常好用,一直都是在windows平台下使用。现在需要移植到android平台下,采用jni方式,一直尝试调用都出现问题,最后调用成功,在此总结一下。把Eigen解压到“D:/workplace”目录下;目录可以自己定义在工程右键--properties--C/C++General--PathsandSym..
分类:
其他好文 时间:
2015-01-26 19:26:49
阅读次数:
313
// A simple quickref for Eigen. Add anything that's missing.// Main author: Keir Mierle#include Matrix A; // Fixed rows and cols. Same a...
分类:
其他好文 时间:
2015-01-23 17:59:25
阅读次数:
1029
与其他矩阵库相比,Eigen(Visit)相比,Eigen只需要拷贝所有include文件到制定位置,无需编译即可使用;此外,用法上模仿Matlab矩阵操作;
上述特点,使其具有很好的实用性。
附上测试代码,以便学习和使用。...
分类:
编程语言 时间:
2015-01-18 14:28:08
阅读次数:
351
Eigen 是一个线性算术的C++模板库,包括:vectors, matrices, 以及相关算法。功能强大、快速、优雅以及支持多平台。
Eigen中的矩阵类型一般都是用类似MatrixXXX来表示,可以根据该名字来判断其数据类型,比如说’d’代表double并不是用来表示整数的,;‘f’代表float; ‘i’代表整数;‘c’代表complex,即复数;’d’表示dynamic,即表示矩阵...
分类:
编程语言 时间:
2015-01-16 10:07:14
阅读次数:
218