Inverse of a diagonal matrix plus a Kronecker product? Given two matrices $X$ and $Y$, it's easy to take the inverse of their Kronecker product:
$(X\otimes Y)^{-1} = X^{-1}\otimes Y^{-1}$
Now, suppose we have some diagonal matrix $\Lambda$ (or more generally an easily inverted matrix, or one for which we already know the inverse).  Is there a closed-form expression or efficient algorithm for computing $(\Lambda + (X\otimes Y))^{-1}$?

Use the following trick:
$$(\Lambda+A)^{-1}=A^{-1}(A^{-1}\Lambda+I)^{-1}$$
where $A=X\bigotimes Y$.
Then we  can decompose $\Lambda=\Lambda_1\bigotimes \Lambda_2$ by any feasible $\Lambda_1$ and $\Lambda_2$ because $\Lambda$ is diagonal. Now we have
$$A^{-1}\Lambda=X^{-1}\Lambda_1 \bigotimes Y^{-1}\Lambda_2$$
and use the method mentioned by David Rohde
