【Eigen】从入门到放弃(一):安装和使用

这篇具有很好参考价值的文章主要介绍了【Eigen】从入门到放弃(一):安装和使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

什么是Eigen

Eigen 是C++语言里的一个开源模版库,支持线性代数运算,矩阵和矢量运算,数值分析及其相关的算法。
Eigen适用范围广,支持包括固定大小、任意大小的所有矩阵操作,甚至是稀疏矩阵;支持所有标准的数值类型,并且可以扩展为自定义的数值类型;支持多种矩阵分解及其几何特征的求解;它不支持的模块生态系统提供了许多专门的功能,如非线性优化,矩阵功能,多项式解算器,快速傅立叶变换等。

怎么安装Eigen(Windows+Visual Studio)

  1. 下载Eigen
  2. 解压,放到合适的目录下
  3. 项目中添加该目录

(占坑,后面会补齐Liunx环境下的安装方法)

Eigen库的模块及其头文件

为了应对不同的需求,Eigen库被分为多个功能模块,每个模块都有自己相对应的头文件,以供调用。 其中,Dense模块整合了绝大部分的模块,而Eigen模块更是整合了所有模块(也就是整个Eigen库)。

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

Eigen的使用

此处列举几种构建2*2矩阵的方法文章来源地址https://www.toymoban.com/news/detail-442986.html

#include <iostream>
#include <Eigen/Dense>
using namespace std;
using namespace Eigen;
int main()
{
	MatrixXd m1(2, 2);//MatrixXd表示是任意尺寸的矩阵i*j, m(2,2)代表一个2x2的方块矩阵
	m1 << 5, 7, 2, 13;
	cout << m1 << endl;//输出矩阵m1

	MatrixXd m2 = MatrixXd::Random(2, 2); //定义2*2的随机矩阵m,各元素取值范围是[-1,1]
	cout << m2 << endl;//输出矩阵m2

	Matrix2d m3; //"Matrix2d"直接定义了一个2-by-2的方块矩阵
	m3(0, 0) = 1;
	m3(1, 0) = 2;
	m3(0, 1) = 3;
	m3(1, 1) = 4;
	cout << m3 << endl;//输出矩阵m3
}
}

到了这里,关于【Eigen】从入门到放弃(一):安装和使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • chrome V3插件入门到放弃,Plasmo不完全使用指南

    没有插件的浏览器是没有灵魂的。今天来近距离感受一下chrome的灵魂 开始之前了解一下 灵魂 chrome插件的版本。 Chrome 浏览器从88版本开始支持MV3啦(即Manifest Version 3),现在浏览器版本都100+了。而MV2(即Manifest Version 2)将会在2023年 退休 。所以今天要讲的就是MV3版本 后续的

    2024年02月08日
    浏览(30)
  • 在quartus中使用FFT IP核最全教程(从入门到放弃)

      首先需要把需要的器材准备好,我使用的是quartus18.0,并且要使用IP核被破解的版本,不然无法使用其中的FFT和NCO,一定要注意,quartus对于版本非常敏感,一定要严格对应好版本 1、带IP的quartus18.0 2、modelsim,这个modelsim不能使用自己下载的modelsim,要去官网下载,对应版本的

    2024年02月14日
    浏览(27)
  • 为什么越来越多的开发者放弃使用Postman,而选择Apifox

    1、Postman + Swagger + Mock + JMeter 作为一个后端开发,我做的大部分项目一般都是基于 Swagger 来管理 API 文档,基于 Postman 来做接口调试,基于 JMeter 来做接口性能测试,基于 RAP 等工具 Mock API 数据。 2、存在的问题 (1)多系统数据不互通 API设计者、前端开发、后端开发、测试人

    2024年01月20日
    浏览(43)
  • [Eigen中文文档] 深入了解 Eigen - Eigen内部发生了什么(一)

    文档总目录 英文原文(What happens inside Eigen, on a simple example) 考虑以下示例程序: 本页的目标是了解 Eigen 如何编译,假设启用了 SSE2 矢量化(GCC 选项 -msse2 )。 为什么讨论这个问题 也许你认为上面的示例程序很简单,编译它应该不涉及任何非常有趣的事情。在开始之前,让我

    2024年02月13日
    浏览(27)
  • [Eigen中文文档] 深入了解 Eigen - Eigen内部发生了什么(二)

    文档总目录 英文原文(What happens inside Eigen, on a simple example) 求和表达式的构造 现在我们的向量已经构建完毕,让我们继续下一行: 操作符 + 返回一个“向量之和”表达式,但实际上此时并不执行计算。执行计算的是运算符 = (其调用随后发生)。 现在让我们看看 Eigen 这时做

    2024年02月13日
    浏览(29)
  • 深聊性能测试,从入门到放弃之: Windows系统性能监控(三)任务管理器介绍及使用。

    关于Windows系统性能监控的前两篇 《 Windows系统性能监控(一) 性能监视器介绍及使用 》 《 Windows系统性能监控(二) 资源监控器介绍及使用 》 私下里有很多同学反馈,说学到了很多, 其实,在平时,如果我们能把集成好的服务监控应用起来, 你会收到意想不到的惊喜, 毕竟,

    2024年02月03日
    浏览(27)
  • 深聊性能测试,从入门到放弃之: Windows系统性能监控(二) 资源监控器介绍及使用。

    小屌丝 :鱼哥,我看了你这篇《Windows系统性能监控(一) 性能监视器介绍及使用》,让我学到了好多知识。 小鱼 :嗯,我自己在写这篇文章的时候,也学到了好多。 小屌丝 :是吗,你不都是知道了,咋还又学到了好多; 小鱼 :这个很正常啊,你把你会的知识,重新以文字

    2024年01月25日
    浏览(42)
  • Eigen 快速入门

    简写方式: 原表达式 简写 Matrixfloat, Dynamic, Dynamic MatrixXf Matrixdouble, Dynamic, 1 VectorXd Matrixint, 1, Dynamic RowVectorXi Matrixfloat, 3, 3 Matrix3f Matrixfloat, 4, 1 vector4f 对固定大小(行,列已知)矩阵进行初始化 Matrix3d:Eigen库中typedef的数据类型,即“3*3矩阵(d表示矩阵内部数据类型为double类型

    2024年02月16日
    浏览(28)
  • Docker从入门到放弃

    看完我这里,就彻底入门了,如果对你有帮助,欢迎点赞+收藏❤️+评论噢~ 按部就班,先安装.. 在CentOS 7上安装Docker主要涉及添加Docker的官方仓库,然后从该仓库安装Docker CE(社区版) 1.安装所需的包: yum-utils 提供 yum-config-manager 工具,而 device-mapper-persistent-data 和 lvm2 是

    2024年04月14日
    浏览(28)
  • Flask从入门到放弃五(SQLAlchemy介绍与快速使用、创建表插入数据、Scoped_session线程安全、基本增删查改、表模型、Flask-SQLAlchemy、Migrate的使用)

    SQLAlchemy是一个基于Python实现的ORM框架。该框架建立在 DB API之上,使用关系对象映射进行数据库操作,简言之便是:将类和对象转换成SQL,然后使用数据API执行SQL并获取执行结果。 SQLAlchemy的组成部分有: Engine 框架的引擎 Connection Pooling 数据库连接池 Dialect 选择连接数据库的

    2024年02月04日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包