[petsc-users] Multigrid preconditioning of entire linear systems for discretized coupled multiphysics problems
Fabian Gabel
gabel.fabian at gmail.com
Mon Mar 2 17:26:18 CST 2015
Dear PETSc Team,
I came across the following paragraph in your publication "Composable
Linear Solvers for Multiphysics" (2012):
"Rather than splitting the matrix into large blocks and
forming a preconditioner from solvers (for example, multi-
grid) on each block, one can perform multigrid on the entire
system, basing the smoother on solves coming from the tiny
blocks coupling the degrees of freedom at a single point (or
small number of points). This approach is also handled in
PETSc, but we will not elaborate on it here."
How would I use a multigrid preconditioner (GAMG) from PETSc on linear
systems of the form (after reordering the variables):
[A_uu 0 0 A_up A_uT]
[0 A_vv 0 A_vp A_vT]
[0 0 A_ww A_up A_wT]
[A_pu A_pv A_pw A_pp 0 ]
[A_Tu A_Tv A_Tw A_Tp A_TT]
where each of the block matrices A_ij, with i,j \in {u,v,w,p,T}, results
directly from a FVM discretization of the incompressible Navier-Stokes
equations and the temperature equation. The fifth row and column are
optional, depending on the method I choose to couple the temperature.
The Matrix is stored as one AIJ Matrix.
Regards,
Fabian Gabel
More information about the petsc-users
mailing list