[petsc-users] Multigrid Preconditioned CG on cell-centered Poisson with DMStag
Barry Smith
bsmith at petsc.dev
Tue Oct 1 14:47:14 CDT 2024
Are you handling the null space? Like with MatSetNullSpace()?
Can you try src/ksp/ksp/tutorials/ex32.c it solves the same problem but with a simpler DMDA. I don't see any reason why using DMStag with the cell-centered values should be different.
Barry
> On Oct 1, 2024, at 3:37 PM, Gautam Luhana <gkluhana at cs.ubc.ca> wrote:
>
> Hello,
>
> I am solving the stokes equations on the MAC grid using DMStag with an approximate Schur complement based preconditioner. The preconditioner needs a subdomain solve of the Poisson equation on both the velocity as well as the pressure space. I am using multigrid preconditioned CG for both the subdomain solves. While the subdomain solve on the velocity space converges in 4-5 iterations and is independent of mesh-size, the pressure solve is not mesh-size independent. Relevant information:
>
> Pressure space operator has Neumann boundary conditions.
>
> Coarse-grid operators are being generated using the Galerkin approach (A = P*Af*Pt) for both of the subdomains.
>
> For the pressure space, the jacobi and sor smoothers were tried with several omega and damping parameter choices.
>
> Symmetric smoothing (same number of pre- and post-smoothing iterations)
>
> Has anyone tried solving the poisson operator on the cell-centered pressure space with DMStag? Or know what might be going wrong with the mg-cg convergence?
>
> Thanks!
>
> -Gautam
>
>
More information about the petsc-users
mailing list