Motivation: I'm trying to write code to solve an equation efficiently. Directly calculating the result is easy, but involves matrix inversions that consume an impractical amount of memory at the scale we want (think 1,000,000 x 1,000,000 matrices). The actual input matrix is sparse, so avoiding the inverse potentially makes it practical. I've managed to reformulate the problem into $xA=B$ form, which has worked for me at the scale I want with other equations.
The problem is that the reformulation still has one last inversion that I can't figure out how to deal with. Currently: $$A=diag\Bigl((I-Q)^{-1}\Bigr)(I-Q)$$ $$B=vQ$$
$x$ and $v$ are vectors. $Q$ is a sparse square matrix with a diagonal of $[0]$ and a few superdiagonals and subdiagonals. The structure of the matrix is symmetric, but the values are not. The values are in the interval $[0,1]$, with each row summing to $\le1$.
I've tried to find solutions that allow me to calculate just the diagonal of the inverse, but the solutions I've found seem to require matrix properties (particularly symmetry) that mine does not. I've also been trying to express the $(I-Q)^{-1}$ in different forms to see if there are other properties of my matrix that I can take advantage of. For example, on the Woodbury matrix identity wikipedia page I found the special case of $$(A-B)^{-1}=\sum_{k=0}^\infty (A^{-1}B)^{k}A^{-1}$$ which, when $A=I$, simplifies to $$=\sum_{k=0}^\infty B^k$$ Neat, but I have no idea if it helps me though.
I also saw this interesting post on this forum, which had me excited until I realized the condition of $Q^3 = [0]$ doesn't apply to me.
So does anyone have any thoughts for how I can avoid calculating the full inverse in $A$ up above? I included the other terms of the equation in case it is helpful. I tried my best to use terminology correctly and display things appropriately, but this level of linear algebra is completely new to me.