Hello again,
I would like to get a faster inversion of a local block-diagonal system, which I am using for time-stepping.
The bilinear form is
Code:
a += (grad(u)*grad(v)+lam*v+u*mu)*dx
where u, v belong to DG-Pk space, and lam and mu belong to DG-P0 space.
The matrix is symmetric and block diagonal. What is the fastest way to invert this matrix?
The following direct approach is a bit to slow
Code:
inva = a.mat.Inverse(fes.FreeDofs())
Attached is the code.
Best,
Guosheng