Roy,

I think it would be advisable that all libMesh users update themselves
to atleast petsc/slepc 3.0-p0. There are so many fixes/changes from
2.3.3.->3.0 that it feels like they dont utilize the full potential of
the solvers. Of course, the petsc_macro preprocessor routines would
shield the user anyhow but my point is, should we actually encourage
this ? It is harder to maintain eventually as new APIs are introduced
and the gain is quite minimal. I am sure the petsc developers will
probably agree with this too since they constantly remind the users to
upgrade to the newer version n the mailing lists. Just my 2 cents.

Vijay

On Thu, Mar 3, 2011 at 9:49 PM, Roy Stogner <royst...@ices.utexas.edu> wrote:
>
>
> On Thu, 3 Mar 2011, Roman Vetter wrote:
>
>>>> 1. Replace the contents of PetscLinearSolver::print_converged_reason() by
>>>>
>>>> KSPConvergedReason reason;
>>>> KSPGetConvergedReason(_ksp, &reason);
>>>> libMesh::out << "Linear solver convergence/divergence reason: " <<
>>>> KSPConvergedReasons[reason] << std::endl;
>>>>
>>>> or similar.
>>>
>>> This sounds like a good idea, if you want to test it and send us the
>>> patch.
>>>
>>>> 2. Remove the this->clear() call from PetscNonlinearSolver::solve().
>>>> This prevents the _snes context pointer from being destroyed. In
>>>> PetscLinearSolver, the _ksp context pointer isn't destroyed either.
>>>
>>> I'm up for this unless anyone objects.
>>>
>>>> 3. Introduce PetscNonlinearSolver::print_converged_reason()
>>>> analogously to the linear solver, using the maintained _snes pointer.
>>>
>>> Sounds good.
>>
>>
>> Since there have been no further objections, here's a patch that does
>> all of the above. I have tested both linear (with example 9 for
>> instance) and nonlinear print_converged_reason()s, they're working
>> smoothly in the scope of my testing. Also, no negative side-effects
>> have occurred to me from keeping the _snes context alive.
>>
>> You may perhaps commit the new
>> PetscLinearSolver::print_converged_reason before the rest, if you
>> prefer.
>
> This looks good to me, and is now committed.  Hopefully John etc. will
> fix it if there are any PETSc 2 compatibility issues.  ;-)
> ---
> Roy
>
> ------------------------------------------------------------------------------
> What You Don't Know About Data Connectivity CAN Hurt You
> This paper provides an overview of data connectivity, details
> its effect on application quality, and explores various alternative
> solutions. http://p.sf.net/sfu/progress-d2d
> _______________________________________________
> Libmesh-devel mailing list
> Libmesh-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/libmesh-devel
>

------------------------------------------------------------------------------
What You Don't Know About Data Connectivity CAN Hurt You
This paper provides an overview of data connectivity, details
its effect on application quality, and explores various alternative
solutions. http://p.sf.net/sfu/progress-d2d
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to