We don’t currently have the concept of “matrix-vector product failed due to 
funky thing like domain error” therefor end the current linear solve and also 
the nonlinear solve but without an error condition. 

   I’m open to any suggestions, but not comfortable with reorganizing PETSc 
errors as exceptions that can be “handled” though I suppose even that could be 
revisited. 

   Barry

On Aug 31, 2014, at 10:32 PM, Derek Gaston <[email protected]> wrote:

> On Sun, Aug 24, 2014 at 11:45 PM, Barry Smith <[email protected]> wrote:
>      What are your current needs? Do you want the program to just end in this 
> case or do you want some kind of recovery when the matrix-free multiply 
> causes a domain error?
> 
>   Barry
> 
> Sorry it took me a while to get back... and I really appreciate al of the 
> discussion surrounding this issue!
> 
> Currently what I need is for everything about the nonlinear solve (which is 
> typically JFNK) to stop - but for the program to _not_ exit.  In particular I 
> need to never run another residual evaluation for this nonlinear solve 
> (because something made it into an invalid state).
> 
> As a workaround I have tried returning various "diverged" statuses in my 
> linear and nonlinear convergence checks... but it still has a pesky problem 
> where there are a couple more residual evaluations at the "end" of the 
> nonlinear solve.
> 
> I may be able to work around that... but if there was any way that I could do 
> a "snes->stop = true;" and have the whole thing just STOP (immediately, with 
> no questions asked).... that would be cool :-)
> 
> Thanks!
> 
> Derek
> 

Reply via email to