I have tried implementing the MHSS preconditioner for the CG solver in NGSolve.
P = (1 + j)(B + C) where B is the real part and C is the imaginary part.
I could calculate a_pre_inv = a_pre.Inverse(fes_pre.FreeDofs(), inverse="sparsecholesky") where a_pre is B + C.
Is there any way to scale this inverse with 1/(1-1j) and use this matrix as a preconditioner for the CG solver of the complex system?