C++计算软件库
转载:http://blog.sina.com.cn/s/blog_77b86b0d01012kgn.html
线性方程求解
Aztec:一个易于使用且高效的求解线性方程组的并行迭代解法器,C语言编写,MPI通信,来自Sandia国家
试验室。提供的迭代算法包括CG, BiCGSTAB, GMRES, TFMQR, CGS.
PETSc:可移植、可扩展科学计算工具箱。提供多种并行迭代求解线性方程组方法,C语言编写,MPI通
信,来自Argonne国家实验室。提供的迭代算法包括PCG, BiCGSTAB, GMRES, TFMQR, CGS,
CR, LSQR. 容易扩展进其他的求解方法。
MUMPS:多前点大规模并行稀疏直接求解器,给予矩阵分解,且将矩阵用树表示。能够求解对称正定、
一般对称矩阵、一般非对称矩阵、复和实矩阵,F90编写,MPI通信,由法国CLRC和CERFACS
合作完成,属于PARASOL的一部分。
ScaLAPACK:可扩展线性代数库,基于Lapack和并行分布存储版本的1、2和3级BLAS(PBLAS)和基本线性
代数通信子程序库BLACS, Fortran编写,由橡树岭国家实验室、Rice大学、加州大学 Berkeley、
加州大学 Los Angeles、Illinois大学和Tennessee大学合作完成。基本囊括矩阵计算的各方各面。
TAO:高级最优化工具箱。主要是在高性能结构上开发求解大规模优化问题的算法和软件。包括非线性最
小二乘、无约束最优化、约束最优化、一般非线性最优化、以及组合优化。提供的方法有:共轭梯
度、牛顿线搜索、牛顿信赖域、内点法、KT法。由Argonne实验室开发,C语言编写。
Metis:并行图画分。能实现无结构图、网格划分计算稀疏矩阵的填充和约化次序的多种算法。ParMetis为
其并行版本。能为多个软件提供结构化、无结构化网格剖分数据。
ADIC:自动微分工具,其中微分由链式法则生成。来自Argonne国家实验室。
FFTW:据说是最快的Fourier变换的库,不仅能够对实数还能对复数计算,同时也实现了正弦、余弦变换
而且序列长度没有2的指数倍限制,只要满足一定的条件(参看manual)就可以了。提供并行版本,
对应各种数据类型。
CLAPACK