Dear Bruno,


Yes, I am applying ILU to the whole system, without anything else really. I think this is relatively traditional in GLS and VMS approaches (although I would not be able to say if that is a good or a bad thing).

If I understand correctly,  you mean formulating the problem using a BlockMatrix and a BlockVector, then preconditioning each matrix of the block independently? I guess this would be best achieved using the linear operators within deal.II right?

Yes, you would apply block vectors and block matrices. Concerning the linear operators that would be one option, but it is not really a necessity. For example you can have a look at step-31 and the class BlockSchurPreconditioner in particular, see its implementation here: https://github.com/dealii/dealii/blob/2a6983945af78ee20b10757ab010040b9f2a2f89/examples/step-31/step-31.cc#L407-L417


What would be the added benefit of that? I would presume that since each block have more "coherent units", this would at least to a better conditioning of the final system, but is there anything else there?
Is there any literature or elements on this?

The benefit is that you can tailor the components to the problem at hand. If you have a Navier-Stokes problem with small time steps, at some point you will need a Poisson-type operator in the pressure variable to reflect the incompressibility constraint. To resolve that global coupling, you need some form of multigrid (or other strong preconditioners). However, the effect is really only needed for the pressure, so it might be inefficient to also apply multigrid on the velocity components, and instead get around much more cheaply by doing an ILU there or even just the diagonal. For small time steps, the diagonal should be a good approximation, even though it might not be the most efficient choice.

Regarding literature: I would recommend the book by Elman, Silvester and Wathen, https://doi.org/10.1093/acprof:oso/9780199678792.001.0001 , or the review paper by Benzi, Golub and Liesen, https://dx.doi.org/10.1017/S0962492904000212

In my own experience, and ILU on the velocity block and a Cahouet-Chabard approach for the pressure Schur complement works well for medium scale simulations, i.e., polynomial degrees 2 and 3 and up to a few billion of unknowns and maybe 10k processor cores, see also here: https://doi.org/10.1177/1094342016671790 . For very large sizes, ILU is not really that good any more as Timo said, so one can reduce cost by just using the mass matrix. And geometric multigrid works better on that scale than algebraic multigrid used in that paper. But if you want efficiency for large scales and with higher Reynolds numbers, it is hard to beat splitting-type solvers.

Best,
Martin

--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/5d14a21a-657e-b0e2-7109-b0da017ad45a%40gmail.com.

Reply via email to