shaobohou 128 Report post Posted October 18, 2006 if I have a symmetric matrix A and a diagonal matrix B, is there a fast way of computing the inverse of A+B using the inverse of A and the inverse of B? 0 Share this post Link to post Share on other sites
ury 476 Report post Posted October 18, 2006 You might find Woodbury's formula useful.Please note that it'll only help you if A = UU^{T}, where U is a NxM matrix with M << N. 0 Share this post Link to post Share on other sites
shaobohou 128 Report post Posted October 19, 2006 Quote:Original post by uryYou might find Woodbury's formula useful.Please note that it'll only help you if A = UU^{T}, where U is a NxM matrix with M << N.Hmm, not sure a diagonal matrix can be decomposed into the necessary format 0 Share this post Link to post Share on other sites
ury 476 Report post Posted October 19, 2006 In your original post, A is the symmetric matrix.To avoid any further confusion, can you tell me more about your problem and the kind of matrices that you have.Woodbury's formula is useful in the following case.Let's say that you have a matrix A and you already know its inverse matrix.Now, if you want to update A by adding another matrix B, such that B has a small rank, the inverse of A+B can be computed by the Woodbury's formula.After reading your original post once again, I noticed that both your A and B are invertible. This means that they have a full rank. If this is really the case, Woodbury's formula is useless. 0 Share this post Link to post Share on other sites
shaobohou 128 Report post Posted October 19, 2006 Quote:Original post by uryAfter reading your original post once again, I noticed that both your A and B are invertible. This means that they have a full rank. If this is really the case, Woodbury's formula is useless.Yes, unfortunately, both A and B have full rank and B is diagonal. Thanks anyway 0 Share this post Link to post Share on other sites
TheAdmiral 1122 Report post Posted October 19, 2006 Maybe I wasn't paying attention, but why has everybody abandoned Woodbury's formula all of a sudden?Quote:Original post by shaobohouQuote:Original post by uryYou might find Woodbury's formula useful.Please note that it'll only help you if A = UU^{T}, where U is a NxM matrix with M << N.Hmm, not sure a diagonal matrix can be decomposed into the necessary formatIt can over the complex numbers, or even over the reals if B is a positive diagonal matrix. If B = diag(a_{1}, a_{2}, ..., a_{n}) then let U = diag(√a_{1}, √a_{2}, ..., √a_{n}). As U is also diagonal, it is symmetric and so UU^{T} = B. So Woodbury's formula will apply.I'm not convinced, though, that application of Woodbury's formula would save you computational time for any reasonably-size matrices.Matrix sums aren't too friendly with inversion, so I'm afraid I have no suggestions to add.RegardsAdmiral 0 Share this post Link to post Share on other sites
Darkstrike 206 Report post Posted October 20, 2006 TheAdmiral: your matrix U does not give a solution to UU^{T}=B.It could be that a general method can be used, say, if AB^{-1} or BA^{-1} has a spectral radius or even operator norm under 1? 0 Share this post Link to post Share on other sites
etothex 728 Report post Posted October 20, 2006 some considerations:1. A+B is a symmetric matrix itself...therefore, inverting that matrix by method of cofactors (adjoint matrix) can be optimized considering you only have to compute a little more than half the elements.2. If you can diagonalize A+B, then the diagonalization will break A+B into an orthonormal matrix, times a diagonal matrix, times the transpose of the orthogonal matrix. then, it is elementary to invert the matrix by inverting each element of the diagonal matrix and taking the transpose of each orthonormal matrix. 0 Share this post Link to post Share on other sites