KPSSetPostSolve(),  There is no SNESSetPostSolve()  but there could/should be.

   Barry

  Note inside the SNESSolve there are a bunch of pre and post hooks, don't get 
the confused with an outside SNESSetPostSolve()

> On Jul 28, 2020, at 1:12 PM, Fande Kong <fdkong...@gmail.com> wrote:
> 
> One alternative is to support a plugable KSP/SNESReasonView system. We then 
> could hook up KSP/SNESReasonView_MOOSE.
> 
> We could call our views from SNES/KSP"done"Solve as well if such a system is 
> not affordable.  What are the final functions we should call, where we 
> guarantee SNES/KSP is already done? 
> 
> Thanks,
> 
> Fande,
> 
> On Tue, Jul 28, 2020 at 12:02 PM Barry Smith <bsm...@petsc.dev 
> <mailto:bsm...@petsc.dev>> wrote:
> 
>   Alex,
> 
>     The actual printing is done with SNESReasonView() and KSPReasonView() I 
> would suggest copying those files to Moose with a name change and removing 
> all the code you don't want. Then you can call your versions immediately 
> after SNESSolve() and KSPSolve().
> 
>    Barry
> 
> 
> > On Jul 28, 2020, at 10:43 AM, Alexander Lindsay <alexlindsay...@gmail.com 
> > <mailto:alexlindsay...@gmail.com>> wrote:
> > 
> > To help debug the many emails we get about solves that fail to converge, in 
> > MOOSE we recently appended `-snes_converged_reason -ksp_converged_reason` 
> > for every call to `SNESSolve`. Of course, now we have users complaining 
> > about the new text printed to their screens that they didn't have before. 
> > Some of them have made a reasonable request to only print the convergence 
> > reason when the solve has actually failed to converge. Is there some way we 
> > can only print the reason if we've diverged, e.g. if reason < 0 ?
> > 
> > Alex
> 

Reply via email to