[CIG-SHORT] Nonlinear solve did not converge

Brad Aagaard baagaard at usgs.gov
Wed Oct 22 11:27:47 PDT 2014


On 10/22/2014 10:12 AM, Marcelo Contreras wrote:
> Dear Brad,
>
> I´m following some examples that include  laws friction  for a 3D subduction
> model (interseismic).  Using petsc parameter from example step13.cfg (Slip
> weakening) there is no convergence (linear).

What happens with the parameters from step13.cfg? Does the linear solve 
residual blow up, decrease towards some constant value, or decrease but 
it hits the maximum number of iterations?

  Now with the folllowing parameters
> I have solution (see figura1.png attached)
> # ejemplo
> snes_view = true
> ksp_monitor_true_residual = true
> fs_pc_type = fieldsplit
> fs_pc_fieldsplit_schur_precondition = user
> fs_pc_fieldsplit_real_diagonal = true
> fs_pc_fieldsplit_type = schur
> fs_pc_fieldsplit_schur_factorization_type = full
> fs_fieldsplit_0_ksp_type = preonly
> fs_fieldsplit_0_pc_type = ml
> fs_fieldsplit_1_ksp_type = gmres
> fs_fieldsplit_1_ksp_rtol = 1.0e-05
> fs_fieldsplit_1_pc_type = jacobi

The field split in PyLith v2.0 uses names for the fields, not numbers, 
so you would need:

 > fs_fieldsplit_displacement_ksp_type = preonly
 > fs_fieldsplit_displacement_pc_type = ml
 > fs_fieldsplit_lagrange_multiplier_ksp_type = gmres
 > fs_fieldsplit_lagrange_multiplier_ksp_rtol = 1.0e-05
 > fs_fieldsplit_lagrange_multiplier_pc_type = jacobi

> # Convergence parameters.
> ksp_rtol = 1.0e-20
> ksp_atol = 1.0e-09
> ksp_max_it = 300
> ksp_gmres_restart = 50

See examples/3d/hex8/step14.cfg for tolerances. You need zero_tolerance 
to be greater than the KSP atol and less than the SNES atol. You can 
increase the values (multiply by 10 or even 100) but the relative sizes 
should be the same as in step14.


> The problem stars when I activate "solver = pylith.problems.SolverNonlinear” the
> error is " Nonlinear solve did not converge”. Petsc parameters are: (Using
> parameters in step13.cfg didn’t work)

If you see this happening, you should turn on the monitoring of the 
inner solves to diagnose things further. Matt can help you with this.

Regards,
Brad



More information about the CIG-SHORT mailing list