C++矩阵处理库(比LAPACK更方便)——Eigen详细解析

本文介绍了C++矩阵处理库Eigen,它解决了C++中线性代数操作不便的问题,支持复数及多种矩阵运算。文章涵盖了安装、基本使用、动态生成矩阵、矩阵初始化、余子式计算、矩阵转置与伴随、以及LU分解等线性方程组求解。同时推荐了官方教程和相关学习资源。
摘要由CSDN通过智能技术生成

前言:

这段时间总算是把开题答辩的事情搞完了,心情总算是放松了一点,今天先总结总结这几天一直在使用的矩阵处理库。相信大家在做Matlab项目的时候,如果想移植为C++总是犯头疼,没有一个好的线性代数库可以使用,有些别人自己写的矩阵库却又不支持复数,或者是缺少算点积,解线性方程组的功能。今天给大家介绍的这个库可以完全解决这些问题,甚至还提供了许多Matlab才有的矩阵处理方式,十分的方便。

安装:


下载地址:

http://eigen.tuxfamily.org/index.php?title=Main_Page#Download

点进去如图


现在最新的版本就是如图右上角的3.2.5版本,下载下来之后

解压,然后把解压包的路径加入工程中就可以编译使用了。我用的是vs2010,加入方式是右击解决方案点击属性:

配置属性 ->   C/C++   ->常规  中的附加包含目标,把解压地址贴上就行(解决方案里需要有cpp文件才会有这个选项)

这个是我的地址,C:\Users\yw\Desktop\Eigen\eigen-eigen-bdd17ee3b1b3 如下图


添加成功后就可以使用了。

使用方法:

头文件:

只用包含

#include <Eigen/Eigen>  

就包含了Eigen库所有的头文件了,如果不需要全部包含,可以自行查看下载下来的EIgen文件夹下的头文件,里面有所有的包含关系。

定义矩阵/支持的数据类型

int main(int, char *[])
{
<span style="white-space:pre">	</span>Matrix3f m3;
<span style="white-space:pre">	</span>m3 << 1, 2, 3, 4, 5, 6, 7, 8, 9;
<span style="white-space:pre">	</span>Matrix4f m4 = Matrix4f::Identity();
<span style="white-space:pre">	</span>Vector4i v4(1, 2, 3, 4);
<span style="white-space:pre">	</span>std::cout << "m3\n" << m3 << "\nm4:\n"
<span style="white-space:pre">	</span><< m4 << "\nv4:\n" << v4 << std::endl;
}

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值