Thanks for the advice! I'll probably base my development on the MOOSE enums.
Dana
On Wed, Feb 12, 2014 at 8:54 PM, Derek Gaston wrote:
> We have this (a huge enum) in MOOSE already.
>
> Here's what we're currently using:
>
> enum MooseNonlinearConvergenceReason
> {
> MOOSE_NONLINEAR_ITERATIN
We have this (a huge enum) in MOOSE already.
Here's what we're currently using:
enum MooseNonlinearConvergenceReason
{
MOOSE_NONLINEAR_ITERATING = 0,
MOOSE_CONVERGED_FNORM_ABS = 2,
MOOSE_CONVERGED_FNORM_RELATIVE = 3,
MOOSE_CONVERGED_SNORM_RELATIVE = 4,
MOOSE_DIVERGED_FUNCTION_
Hehe ok sounds good! I'll probably start with some PETSc-specific fix for
the time being. I'll get back to you when I have a generic patch.
Cheers,
Dana
On Wed, Feb 12, 2014 at 5:05 PM, Roy Stogner wrote:
>
> On Wed, 12 Feb 2014, Dana Christen wrote:
>
> I need a way to retrieve the "convergen
That's a good point to take into consideration. We could imagine a large
enum with all possible flags returned by the solvers and have a generic
get_convergence_reason() function. The return value could be OR'd / AND'd
against any flag. This speaks in favor of a common Solver base class...
Dana
On Wed, Feb 12, 2014 at 9:05 AM, Roy Stogner wrote:
>
> On Wed, 12 Feb 2014, Dana Christen wrote:
>
> > I need a way to retrieve the "convergence reason" flag provided by the
> PETSc iterative solvers from libMesh. Currently, the only way to access
> > this information is to print it with
> PetscL
On Wed, 12 Feb 2014, Dana Christen wrote:
> I need a way to retrieve the "convergence reason" flag provided by the PETSc
> iterative solvers from libMesh. Currently, the only way to access
> this information is to print it with
> PetscLinearSolver::print_converged_reason(), which is not very co
Hello,
I need a way to retrieve the "convergence reason" flag provided by the
PETSc iterative solvers from libMesh. Currently, the only way to access
this information is to print it with
PetscLinearSolver::print_converged_reason(), which is not very convenient.
I've been thinking about extending t