本文主要是介绍应用Eigen 的项目,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 扩展,数值计算
- 绑定
- 科学
- 机器人与工程
- 计算机图形学、几何学、可视化
- 移动应用
- KDE(Eigen的起源)
扩展,数值计算
Google 的 TensorFlow 是一个用于机器智能的开源软件库
谷歌的Ceres求解器是一个可移植的C++库,允许建模和求解大型复杂的非线性最小二乘问题。
Manifold ToolKit MTK 提供了简单的机制,使任意算法能够在流形上运行。它还提供稀疏最小二乘求解器 (SLoM) 和无迹卡尔曼滤波器 (UKFoM)。
IFOPT 是一个现代、轻量级、基于特征的 C++ 接口,用于非线性规划求解器,如 Ipopt 和 Snopt。
CppNumericalSolvers 是一个轻量级的仅标头库,用于非线性优化,包括各种求解器:CG、L-BGFS-B、CMAes、Nelder-Mead。
GTSAM 是一个使用因子图和贝叶斯网络在机器人和视觉中实现平滑和映射 (SAM) 的库。
g2o 是一个开源的 C++ 框架,用于优化基于图的非线性最小二乘问题。
redsvd 是一个 RandomizED 奇异值分解库,用于稀疏或非常大的密集矩阵。
trustOptim 是一个基于信任区域的非线性求解器,支持稀疏 Hessian(具有 R 绑定的 C++ 实现)。
Shogun:一个大规模的机器学习工具箱。
Stan:一个基于 Eigen 的统计包,包括反向模式自动微分实现。
StOpt,STochastic OPTimization 库旨在提供 C++ 工具,用于解决金融或行业中遇到的一些随机优化问题。
Nelson是一个开放的计算环境,用于工程和科学应用,使用现代C / C++库(Boost,Eigen,FFTW等)和其他最先进的数值库。(GPL2的)
EigenLab 是一个仅标头库,用于解析和计算处理特征矩阵的表达式。
SpaFEDte 一个 C++ 库,用于在一般网格上进行不连续的伽辽金离散化。
biicode,一个 C 和 C++ 依赖项管理器,#includes 最流行和最有用的 C/C++ 库和框架。
CERTH 的 AKSDA:一种用于高维数据的 GPU 加速降维和分类方法。
Spectra 代表稀疏特征值计算工具包,作为重新设计的 ARPACK。它是一个仅标头的C++库,用于大规模特征值问题,建立在Eigen之上。
preCICE是一个用于分区多物理场仿真的耦合库,包括但不限于流固耦合和共轭传热仿真。它支持 OpenFOAM、CalculiX、SU2 和其他几个知名的求解器以及内部求解器。它是免费/开源软件,其代码可在 GitHub 上根据 LGPL3 许可获得。链接到源代码和文档
绑定
RcppEigen 包为 R 提供绑定等。
minieigen 是 Eigen 核心类(密集的固定和动态大小的向量、矩阵、对齐的框、四元数;具有整数、浮点和复数标量)的小型 boost::p ython 包装器,包括 Eigen API 方法的运算符和子集。
Eigency 是 numpy 数组和 Eigen C++ 库的矩阵/数组类之间的 Cython 接口。
sparray:Sparse 模块的 python 绑定 - alpha 阶段。
OCamlEigen,Eigen 3 C++ 库的薄 OCaml 接口。
Haskell-eigen 提供 Haskell 语言的绑定。
jeigen,Eigen 的 Java 包装器。
Eigen4AutoIt,AutoIt 脚本语言的包装器。
eigen-lua,一个 Lua 包装器,围绕着 Eigen 数值库的各个部分。
Eigenpy:使用 Boost.Python 在 Geometry 模块的支持下在 Numpy 和 Eigen 之间进行有效绑定
科学
GINESTRA,一个专注于先进介电材料和界面的半导体器件模拟器。
G+Smo,一个用于几何设计和数值模拟的开源库,具有等几何分析功能。
FlexibleSUSY,一种计算基本粒子质量的光谱发生器。
正如本文所报道的那样,欧洲核子研究中心(CERN)的LHC(大型强子对撞机)的ATLAS实验正在使用Eigen,并指出“之所以选择Eigen,是因为它为所研究选项的ATLAS用例提供了最大的性能改进。
大型巡天综合望远镜(网站;特拉克)是一个在8.4米望远镜上建造一个3.2M像素相机的项目,每三天调查一次整个可见天空。
Gnu Data Language,IDL 语法代码的 GPL 解释器。
Avogadro,一个开源的高级分子编辑器。
3D 天文可视化应用程序 Celestia 现在使用 Eigen 进行所有轨道和几何计算。
Yade,动态粒子模型平台,使用Eigen进行几何计算(从WildMagic软件包切换而来)
SLangTNG,用于数值分析、线性代数、高级统计、有限元法、结构动力学、数据可视化等的应用程序套件。
Clip,一个用于定位 Laue 曝光的开源程序。
Multiprecision Computing Toolbox for MATLAB 使用 Eigen 作为矩阵计算的核心库。
Pteros,一个用于分子建模的C++库。
袖扣,一种用于转录本组装、差异表达和 RNA 序列差异调控的工具。
Vortexje:一个用于模拟的 GPL 库,实现了源双峰面板方法。
Woo(dem),粒子动力学软件(DEM,FEM);在 Python 中使用 minieigen 包装的特征。
NIMBLE是一个用于对统计算法进行编程的系统,例如来自R.NIMBLE的马尔可夫链蒙特卡洛,包括一个使用Eigen的R到C++子集的编译器。
ENigMA 是一个使用 Eigen 的多物理场数值库。
iMSTK 是一个用 C++ 编写的开源软件工具包,有助于交互式多模式手术模拟的快速原型设计。
mbsolve 是 Maxwell-Bloch 方程的开源求解工具,用于模拟非线性光学中的光-物质相互作用。
Spin-Scenario,一个灵活的脚本环境,用于真实的磁共振 (NMR/MRI) 模拟。
Quantum++ 是一个现代 C++ 通用量子计算库,仅由模板头文件组成。
ELSA,一个优雅的断层扫描重建框架。
Quit,用于处理定量 MRI 数据的程序集合。
机器人与工程
Yujin Robot 公司使用 Eigen 进行下一代机器人的导航和手臂控制。(从 Blitz、UBLAS 和 TVMET 切换)
由Willow Garage开发的机器人操作系统(ROS)。
openAHRS开源 IMU / AHRS
达姆施塔特运球队自主人形机器人足球队和达姆施塔特救援机器人队使用Eigen进行导航和世界建模。
移动机器人编程工具包 (MRPT) 是一组用于 SLAM、定位和计算机视觉的库,已移至 Eigen(从自制数学课程转换而来)。
RBDL:用于刚体动力学的C++库。
RL 是一个独立的 C++ 库,用于机器人运动学、运动规划和控制。
BTK 是一个生物力学工具包,在 BSD 下获得许可,其主要目标是提出一套独立于任何采集系统的人体运动分析工具。它提出了 Matlab/Octave 和 Python 的绑定,以及一个名为 Mokka 的 GUI 软件,用于可视化/分析 3D/2D 动作捕捉数据。
libpointmatcher 是一个用于机器人技术中 3D 映射的“迭代最近点”库。
RobOptim 是一个现代的开源 C++ 库,用于应用于机器人的数值优化。
towr 是一个轻量级且可扩展的 C++ 库,用于腿式机器人的轨迹优化。
匹诺曹:一个快速高效的刚体动力学库
人形路径规划器:用于运动和操纵规划的软件
MIRA是一个用C++编写的跨平台框架,它为复杂的机器人应用程序的开发提供了一个中间件,它由分布式软件模块组成。
计算机图形学、几何学、可视化
计算几何算法库 (CGAL),这是一项合作项目,旨在开发一个强大、易于使用且高效的几何数据结构和算法的 C++ 软件库。
点云库 (PCL),一个用于点云处理的大型、BSD 许可的开放项目。使用 Eigen 作为其数学后端。
VcgLib,一个开源的C++模板库,用于操作和处理三角形和四面体网格。(从自制数学课转为自制数学课)
MeshLab,一款用于处理和编辑非结构化 3D 三角形网格和点云的开源软件。(从VCGLIB的数学课转换而来)
eos,现代C++11/14中的开源和轻量级3D可变形人脸模型拟合库。
拓扑工具包 (TTK),一个开源库和软件集合,用于科学可视化中的拓扑数据分析。
Theia,一个开源的C++结构,来自为研究人员量身定制的运动库,BSD许可。
libmv,来自 Motion 库的开源结构。(从FLENS切换)
openMVG,一个用于多视图几何体的简单库。
节拍器,一个简单的度量存储/图形引擎,使用Eigen进行SVD最小二乘插值和数据整合
piccante,专为高动态范围 (HDR) 处理而设计的 C++ 成像库。
libigl 是一个简单的 C++ 几何处理库,具有广泛的功能。
ApproxMVBB 是一个小型库,用于计算 3D 点云的快速近似定向边界框。
Madplotlib 可以更轻松地从 Eigen::ArrayXf 创建的数据在 Qt 上绘制 2D 图表。
3DF Zephyr 是一款商业摄影测量和 3D 建模软件,由 3Dflow srl 开发
移动应用
Layar,适用于 iPhone 和 Android 的增强现实应用程序。
Red Sword Studios 是 iPhone 游戏 Gradient、Fortress Luna、Stimulus 和 Lustre 的制造商,广泛使用 Eigen。当有特征时,为什么要滚动自己的矩阵/向量/变换代码?
WhirlyGlobe-Maply,适用于 iOS 和 Android 的开源地理空间显示工具包。它实现了 3D 交互式地球和 2D(滑)地图
KDE(Eigen的起源)
Step,一个教育物理模拟器。
Calligra Sheets 是 KDE 办公套件的电子表格模块,它使用 Eigen 进行矩阵函数,例如 MINVERSE、MMULT、MDETERM。
Krita,一个专业的免费开源绘画程序
Kalzium 通过前面提到的 Avogadro 库间接使用 Eigen。
Mandelbrot 壁纸插件,一些屏幕保护程序、kgllib、solidkreator 等。
这篇关于应用Eigen 的项目的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!