Cholesky inverse

184 Views Asked by At

I have the Cholesky decomposition $LL^T$ of a symmetric positive definite matrix. I then compute a result in the form of $A=LXL^T$, where $A$ and $X$ are also symmetric positive definite matrices.

I know $A$ and I would like to retrieve $X$. The easy way would be to invert $L$ so we have $X=L^{-1}AL^{-T}$, however this requires to invert a matrix. I know that the inverse of a triangular matrix is not too difficult to compute but is there a better way to compute $X$?

Edit

To provide more background, I already know $A$ in a diagonalized way, for example I have $A=PDP^T$, with $D$ a diagonal definite positive matrix and $PP^T=P^TP=I$. Still, I need to get to $X$ somehow, ideally with no matrix inversion.

1

There are 1 best solutions below

3
On BEST ANSWER

To solve $PDP^T = LXL^T$ with matrices as specified, compute the diagonal matrix $R$ such that $RR^T = D$ by taking the square roots of the diagonal entries. then you have:

$PRR^TP^T = LCC^TL^T$ where $CC^T = X$

We can then determine $C$ by solving $PR = LC$ which can be performed directly by any number of triangular solvers.

Edit

Since maintaining the Cholesky decomposition of all matrices in such computations is often numerically preferable, it is highly recommended to work with these as much as possible. Rank-1 updates such as cholupdate may also be helpful in this effort.