On Mon, 13 Oct 2008, Michael Povolotskyi wrote:

> However there is still  one  issue:  after the solving the _snes object is 
> destroyed. So, I cannot get a convergence reason after 
> PetscNonlinearSolver<T>::solve is called.
> Am I right?

Ooh - it looks like you're right.  We're calling both init() and
clear() in solve(), and the latter destroys the SNES object.

> If yes, can we store the convergence reason in the class in order to
> be able to read it after?

Ideally we ought to have a library-independent interface to query the
convergence reason, with the abstract API in the NonlinearSolver class
and a PETSc-specific implementation in the subclass.  Ideally we'd
break the enum SolveResult out of DiffSolver and extend and reuse it
here too.  If you want to write such an API, a patch would be greatly
appreciated; otherwise your only hope is to try to talk Derek into
doing it.  ;-)
---
Roy

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to