小编Cla*_*ark的帖子

使用特征计算Cholesky分解

我试图用C++计算矩阵的Cholesky因子(对于给定的矩阵P找到L,使得LL ^ T = P).我的目标不是求解线性系统P*x = b,因为这样的矩阵分解经常被用于,但实际上要获得矩阵L.(我试图计算"sigma点",就像在无味变换中一样) .)

Eigen据说计算Cholesky分解,但我无法弄清楚如何让它给我矩阵L中的值.当我尝试下面的代码行时

Eigen::MatrixXd P(3,3);
P << 6, 0, 0, 0, 4, 0, 0, 0, 7;
std::cout << P.llt().matrixL().col(0) << std::endl;
Run Code Online (Sandbox Code Playgroud)

我收到编译器错误

error: ‘Eigen::internal::LLT_Traits<Eigen::Matrix<double, -0x00000000000000001, -0x00000000000000001>, 1>::MatrixL’ has no member named ‘col’
Run Code Online (Sandbox Code Playgroud)

文件 MatrixL说LLT.matrixL()返回类型特点::.那是什么以及如何获得L的值?

c++ linear-algebra eigen

10
推荐指数
1
解决办法
6047
查看次数

标签 统计

c++ ×1

eigen ×1

linear-algebra ×1