invenia / PDMatsExtras.jl

Extra Positive (Semi-)Definite Matricies
MIT License
8 stars 6 forks source link

Store cholesky factors rather than recompute them in Woodbury #3

Open oxinabox opened 3 years ago

oxinabox commented 3 years ago

Follow up to https://github.com/invenia/PDMatsExtras.jl/pull/2

we should probably store C_S = cholesky(W.S)

C_B for

B = C_S.U' \ (W.A * cholesky(W.D).U')
C_B = cholesky(Symmetric(I + B'B))

as well as the original matrix. As these tend to be needed for many operations, and don't need to be recomputed as long as the matrix isn't changed.

One question is making sure this works OK with AD.