Hi, I'm trying to solve steady Navier-Stokes for different Reynolds
numbers. My options table

-dm_moose_fieldsplit_names u,p
-dm_moose_nfieldsplits 2
-fieldsplit_p_dm_moose_vars pressure
-fieldsplit_p_ksp_type preonly
-fieldsplit_p_pc_type jacobi
-fieldsplit_u_dm_moose_vars vel_x,vel_y
-fieldsplit_u_ksp_type preonly
-fieldsplit_u_pc_hypre_type boomeramg
-fieldsplit_u_pc_type hypre
-pc_fieldsplit_schur_fact_type full
-pc_fieldsplit_schur_precondition selfp
-pc_fieldsplit_type schur
-pc_type fieldsplit

works wonderfully for a low Reynolds number of 2.2. The solver performance
crushes LU as I scale up the problem. However, not surprisingly this
options table struggles when I bump the Reynolds number to 220. I've read
that use of AIR (approximate ideal restriction) can improve performance for
advection dominated problems. I've tried
setting -pc_hypre_boomeramg_restriction_type 1 for a simple diffusion
problem and the option works fine. However, when applying it to my
field-split preconditioned Navier-Stokes system, I get immediate
non-convergence:

 0 Nonlinear |R| = 1.033077e+03
      0 Linear |R| = 1.033077e+03
  Linear solve did not converge due to DIVERGED_NANORINF iterations 0
Nonlinear solve did not converge due to DIVERGED_LINEAR_SOLVE iterations 0

Does anyone have an idea as to why this might be happening? If not, I'd
take a suggestion on where to set a breakpoint to start my own
investigation. Alternatively, I welcome other preconditioning suggestions
for an advection dominated problem.

Alex

Reply via email to