[petsc-users] odd SNES behavior

Mark F. Adams mark.adams at columbia.edu
Wed Mar 6 21:36:43 CST 2013


> 
>  Presumbly when you call PCReset() it zeros out all the pointers. If you do not set the operators on the finest level again then it will use the "outer" operator on the smoothest level. Is this the problem?

This is not a problem but it should be a choice, right?  This app has an expensive nonlinear 'formFunction' but many apps will have fast matrix free apply-operator methods, in which case the current behavior with gamg is desired.  And having this choice being made by whether a PC is well integrated with PETSc (e.g., not hypre) is pretty awful semantics.

Is there an option that will make this happen or should I add one?  If so where should I add it? It should be in PC_MG I would think.

-pc_mg_levels_fine_use_op <false>
-pc_mg_levels_fine_use_preop <true>


More information about the petsc-users mailing list