C++에서 행렬의 콜레 스키 요인을 계산하려고합니다 (주어진 행렬 P에서 LL^T = P와 같은 L을 찾습니다). 내 목표는 선형 체계 P * x = b를 풀지 않는 것입니다. 그러한 행렬 분해는 종종 사용되지만 행렬 L을 실제로 얻습니다. (나는 무향 변환에서 수행되는 것처럼 "시그마 점"을 계산하려고합니다. .)고유 번호를 사용하여 콜레 스키 분해 계산
도서관 Eigen 가정 콜레 분해를 계산하지만 난
Eigen::MatrixXd P(3,3);
P << 6, 0, 0, 0, 4, 0, 0, 0, 7;
std::cout << P.llt().matrixL().col(0) << std::endl;
나는 다음 코드 줄을하려고 할 때 그것이 나에게 매트릭스 L.의 값을주고 얻는 방법을 알아낼 수 없습니다 컴파일러 오류 발생
error: ‘Eigen::internal::LLT_Traits<Eigen::Matrix<double, -0x00000000000000001, -0x00000000000000001>, 1>::MatrixL’ has no member named ‘col’
documentation은 LLT.matrixL()이 Traits :: MatrixL 유형을 반환한다고 말합니다. 그것은 무엇이며 L의 값을 얻는 방법은 무엇입니까?