Inverse of generalized arrow matrix $A = M^T * M + I$

232 Views Asked by At

If we have the following linear system: Ax=b

And matrix A is created by multiplying a rectangular matrix with it's transpose: $A = M^T * M + I$

What is the best method to solve for x for different b and fixed A? Is it possible to use the fact that A is created by multiplication of a rectangular matrix with itself?

Also, the result x will be used in another equation for every b which changes in each iteration of my algorithm. Could I use this fact to even completely avoid taking the inverse (maybe by using inversion lemma)?

In my application, when I create matrix A, it has the structure as the one in the following image (Link). Every blue dot represents a non-zero value.

My questions: is there any algorithm to efficiently calculate the inverse of this matrix?

I checked this document (Link) which finds the inverse of a generalized arrow matrix, but this is not exactly the same as my structure.

I would really appreciate any help.