Re: [eigen] SelfAjointView::ldlt()

[ Thread Index | Date Index | More Archives ]

I don't know about the eigen part, but in case your data are available in advance, you could gain speed and numerical accuracy by using the qr decomposition instead. If A=QR then A'A=R'Q'QR=R'R, thus R is the upper triangular cholesky factor of A'A. Just stack your values as row vectors vertically into A.


On 27.04.2010, at 07:50, "SHIROKOBROD Oleg" <Oleg.Shirokobrod@xxxxxxxxxx> wrote:



A have a symmetric matrix M with meaningful upper triangular part and arbitrary strict lower triangular part (in my case it is zero). I use development branch function M.selfadjointView<Eigen::UpperTriangular>().rankUpdate (values) at a previous step instead of Eigen2 M.part<Eigen::SelfAdjoint>() += values * values.transpose() one. I would like to use Cholesky decomposition. When I call Eigen::LDLT<Matrix> ldltOfM = M.selfadjointView<Eigen::UpperTriangular>().ldlt(), a linker issues the error message: “unresolved external symbol SelfAjointView<>::ldlt()”. There is reference “Cholesky module” before SelfAjointView::ldlt() member declaration, but I have not fond the implementation.

What is wrong?




Oleg Shirokobrod






This e-mail is confidential and is for the addressee only.   Please refer to for regulatory information.

Mail converted by MHonArc 2.6.19+