Eigen是一个C++模板库,提供了许多用于线性代数、矩阵运算和数值计算的功能。它被设计用来高效地进行数学运算,并且具有良好的性能。
一些主要特点包括:
模板库: Eigen完全是一个基于模板的库,因此可以用于任何数值类型(如整数、浮点数、双精度数等),并且可以进行静态和动态大小的矩阵运算。
高性能: Eigen采用了一些优化技术,例如表达式模板、矢量化指令等,以提高运行速度和优化内存访问模式,从而实现高性能的线性代数计算。
丰富的功能: Eigen提供了许多常见的线性代数运算,如矩阵乘法、求逆、特征值分解、奇异值分解等,还包括一些其他的数学运算和工具。
轻量级和易用性: Eigen被设计为轻量级且易于使用,可以方便地集成到各种C++项目中,同时提供了清晰的API和文档。
Eigen被广泛应用于科学计算、机器学习、计算机图形学等领域,特别是在需要高效进行数学运算的应用程序中。
源码位置
eigen的源码托管于gitlab: https://gitlab.com/libeigen/eigen
github 镜像:
https://github.com/eigenteam/eigen-git-mirror
Eigen的特点:
- 纯头文件,不需要编译成动态链接库,所有需要的文件都在Eigen/目录下, 比如安装后的eigen: