Numerical linear algebra: how to compute $B^TC^{−1}B$ efficiently

Hi,

my question is similar to this one. I have to compute $B^TC^{−1}B$, where $C$ is a strictly positive definite $n\times n$ matrix and $B$ is $n\times m$. The matrix $C$ is huge ($n$ up to a hundred thousand) and sparse. If $m$ is small I compute $b^TC^{−1}b$ for all columns $b$ of $B$ using CG which is really fast (much faster than Cholesky decomposition). However this becomes problematic if $m$ gets larger.

Are there methods from numerical optimization to compute $B^TC^{−1}B$ more efficient?

Thank you very much!

Manuel

-
It's no clear what you mean by "solve... directly". Do you mean "compute"? –  Dima Pasechnik Dec 14 '12 at 13:50
@Dima Pasechnik: Yes, I changed it to make it clear –  Manuel Schmidt Dec 14 '12 at 14:48
I would suggest first check what is wrong with CG. If for the bigger systems, it takes the similar number of iterations to convergence compared to the smaller system, then I don't know anything you can do about it. But if the bigger system takes a lot more iterations, you should look for additoinal structures of the system and find a good preconditioner. –  Lizao Li Feb 4 '13 at 5:03