ERMEEigen 递归矩阵拓展
ERME 全称 Eigen Recursive Matrix Extension,是对 Eigen(C++ 线性代数库)的拓展,拥有以下特性:
- 专用模板,允许创建和使用递归矩阵类型
- 支持递归稀疏矩阵(例如块状稀疏矩阵)
- 递归 LDLT 分解,基于Eigen的简单实现
- 用于结构优化问题的混合矩阵类型和混合递归求解器
用法
// See samples/helloRecursive for the full example
#include "EigenRecursive/All.h"
int main(int, char**)
{
using namespace Eigen;
using namespace Eigen::Recursive;
using Block = Matrix<double, 2, 2>;
using MatrixOfMatrix = Matrix<MatrixScalar<Block>, 2, 2>;
MatrixOfMatrix A, B, C;
setRandom(A);
setRandom(B);
C = A * B;
std::cout << C << std::endl;
return 0;
}
评论