Eigen学习笔记(1)-入门

原文:Eigen官网-Getting started

Eigen 是一个基于C++的线性代数库,其中实现大量常用的线性代数算法,包括常规矩阵计算,矩阵变换,矩阵分解,矩阵块操作。Eigen 广泛地应用在开源项目中,例如OpenCV,PCL(Point Cloud Library),ROS等。其实Eigen中算法都可以在matlab中找到,但是由于matlab是半开源的。所以,如果想在自己的项目中使用,还是要义无反顾地选择Eigen。Eigen目前的版本是3.3.7(2019.12.09)。

Eigen只包含头文件,因此它不需要实现编译,只需要你include到你的项目,指定好Eigen的头文件路径,编译项目即可。而且跨平台,当然这是必须的。

模块和头文件

Eigen库被分为一个Core模块和其他一些模块,每个模块有一些相应的头文件。 为了便于引用,Dense模块整合了一系列模块;Eigen模块整合了所有模块。一般情况下,include<Eigen/Dense> 就够了。

Module Header file Contents
Core #include <Eigen/Core> Matrix和Array类,基础的线性代数运算和数组操作
Geometry #include <Eigen/Geometry> 旋转、平移、缩放、2维和3维的各种变换
LU #include <Eigen/LU> 求逆,行列式,LU分解
Cholesky #include <Eigen/Cholesky> LLT和LDLT Cholesky分解
Householder #include <Eigen/Householder> 豪斯霍尔德变换,用于线性代数运算
SVD #include <Eigen/SVD> SVD分解
QR #include <Eigen/QR> QR分解
Eigenvalues <include <Eigen/Eigenvalues> 特征值,特征向量分解
Sparse #include <Eigen/Sparse> 稀疏矩阵的存储和一些基本的线性运算
- #include <Eigen/Dense> 包含了Core/Geometry/LU/Cholesky/SVD/QR/Eigenvalues模块
- #include <Eigen/Eigen> 包括Dense和Sparse(整个Eigen库)

一个简单的例子

#include <iostream>
#include 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值