[petsc-users] Usage of AMG as preconditioner

Michael Werner michael.werner at dlr.de
Fri Sep 28 11:05:27 CDT 2018


Jed Brown writes:

> Michael Werner <michael.werner at dlr.de> writes:
>
>>>> >> > It uses unpreconditioned GMRES to estimate spectral 
>>>> >> > bounds for
>>>> >> > the operator before using a Chebychev smoother.  
>
> It is GMRES preconditioned by the diagonal.
>
>>> Moreover, in the incompressible limit, the compressible 
>>> formulation can
>>> become very stiff,
>>> leading to failure of solvers. That is why you get the 
>>> slightly
>>> compressible (adiabatic?) formulations.
>>
>> Ah, too bad, I was already expecting something like that, 
>> because 
>> most of the applications I found so far were FEM/ elasticity 
>> problems. Then I'll have to see if I can find some other 
>> suitable 
>> solution.
>
> You can implement a low-Mach preconditioner that would use 
> multigrid.
> If you're working in conservative variables, then it requires a
> nonlinear change of variables to isolate the pressure space.

A low-Mach preconditioner might help with the current test cases, 
however I also intend to apply this code to high-Mach number 
flows, so I need to find a more general solution. Actually, the 
high-Mach number applications are more important, since so far all 
the low-Mach cases are small enough to be solved with direct 
solvers.

I was also thinking about using a geometric multigrid approach via 
DMPlex. As far as I understood, hyperbolic problems are difficult 
to solve with AMG because the solver isn't aware of the underlying 
structure of the problem. Therefore I would think that a geometric 
multigrid approach should produce better results, right? Do you 
think it would be worthwile to implement a DMPlex, or would I 
still run into the same problems?

Kind regards,
Michael


More information about the petsc-users mailing list