与矩阵相关的C++,Java库

本文介绍了多个用于矩阵运算的类库,包括C++模板实现的通用矩阵类、Java编写的JAMA矩阵包及其提供的多种矩阵分解方法,还有Matrix Template Library (MTL) 和 Matrix Expression Template (MET)等高级矩阵类库,后者通过表达式模板技术显著提升了矩阵运算性能。

 A generic, reusable, and extendable matrix class : http://www.codeproject.com/KB/architecture/ymatrix.aspx

提供了一个可扩展的框架,比较适合学习,C++ 模板

 

JAMA, Java Matrix Package,  http://math.nist.gov/javanumerics/jama/

Java编写,提供了四种矩阵分解:Cholesky Decomposition, LU Decomposition (Gaussian elimination), QR Decomposition ,Singular Value Decomposition,也可以计算特征值,特征向量

 

Matrix Template Library, MTL, The Open Systems Laboratory at Indiana University is committed to ensuring the highest quality for the Matrix Template Library.  http://www.osl.iu.edu/research/mtl/support.php3


Matrix Expression Template. MET is a C++ matrix class library which promotes the notational convenience of linear algebraic codes but is free of the overhead of superfluous temporary matrix objects. Instead of coding tedious loops for the linear algebraic expression in C or fortran,  C++ overloaded operators enable one to write the simplest code like u = m*v + w. This advantage, however, came with a performance penalty until recently. Due to the overhead of temporaries and copying of matrix objects,  C++ lagged behind fortran's performance by an order of magnitude. http://met.sourceforge.net/

其中提到的Expression Templates 的概念很重要,可以提高矩阵运算的性能。

 

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值