fipy.solvers.convergence

Classes

AbsoluteToleranceConvergence(solver, ...[, ...])

Absolute tolerance satisfied.

BreakdownDivergence(solver, iterations, ...)

Method broke down.

Convergence(solver, iterations, residual, ...)

Information about why a solver converged.

ConvergenceBase(solver, iterations, ...[, ...])

Information about whether and why a solver converged.

Divergence(solver, iterations, residual, ...)

Information about why a solver diverged.

HappyBreakdownConvergence(solver, ...[, ...])

"Exact" solution found and more iterations will just make things worse.

IllConditionedDivergence(solver, iterations, ...)

Matrix was ill-conditioned.

IllConditionedPreconditionerDivergence(...)

Preconditioner is ill-conditioned.

IteratingConvergence(solver, iterations, ...)

Solve still in progress.

IterationConvergence(solver, iterations, ...)

Requested iterations complete (and no residual calculated).

IterationDivergence(solver, iterations, ...)

Exceeded maximum iterations.

LossOfAccuracyConvergence(solver, ...[, ...])

Numerical loss of precision occurred.

NullDivergence(solver, iterations, residual, ...)

Breakdown when solving the Hessenberg system within GMRES.

OutOfRangeDivergence(solver, iterations, ...)

A value became too small, too large, or invalid.

PreconditioningDivergence(solver, ...[, ...])

A problem with the preconditioner.

RHSZeroConvergence(solver, iterations, ...)

\(\vec{b} = 0\), so exact solution is \(\vec{x} = 0\).

RelativeToleranceConvergence(solver, ...[, ...])

Relative tolerance satisfied.

StagnatedDivergence(solver, iterations, ...)

The method stagnated.

ToleranceDivergence(solver, iterations, ...)

Residual norm increased too much.

Exceptions

DivergenceWarning(divergence)

class fipy.solvers.convergence.AbsoluteToleranceConvergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Convergence

Absolute tolerance satisfied.

residual < atol * scale

__str__()

Return str(self).

class fipy.solvers.convergence.BreakdownDivergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Divergence

Method broke down.

__str__()

Return str(self).

class fipy.solvers.convergence.Convergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: ConvergenceBase

Information about why a solver converged.

__str__()

Return str(self).

class fipy.solvers.convergence.ConvergenceBase(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: object

Information about whether and why a solver converged.

solver

The linear solver that was invoked.

Type:

Solver

iterations

The number of linear iterations the solver performed.

Type:

int

criterion

The Convergence test used by the solver.

Type:

str

tolerance_scale

The multiplier applied to the tolerance in order for this solver to satisfy criterion.

Type:

float

residual

The unscaled norm of the residual achieved by the solver.

Type:

float

status_code

The canonical return value for this type of convergence.

Type:

int or str

status_name

The text representation of status_code.

Type:

str

actual_code

The status value actually returned by the solver.

Type:

int or str

__str__()

Return str(self).

class fipy.solvers.convergence.Divergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: ConvergenceBase

Information about why a solver diverged.

__str__()

Return str(self).

class fipy.solvers.convergence.HappyBreakdownConvergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Convergence

“Exact” solution found and more iterations will just make things worse.

__str__()

Return str(self).

class fipy.solvers.convergence.IllConditionedDivergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Divergence

Matrix was ill-conditioned.

__str__()

Return str(self).

class fipy.solvers.convergence.IllConditionedPreconditionerDivergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: PreconditioningDivergence

Preconditioner is ill-conditioned.

__str__()

Return str(self).

class fipy.solvers.convergence.IteratingConvergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Convergence

Solve still in progress.

__str__()

Return str(self).

class fipy.solvers.convergence.IterationConvergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Convergence

Requested iterations complete (and no residual calculated).

__str__()

Return str(self).

class fipy.solvers.convergence.IterationDivergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Divergence

Exceeded maximum iterations.

__str__()

Return str(self).

class fipy.solvers.convergence.LossOfAccuracyConvergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Convergence

Numerical loss of precision occurred.

__str__()

Return str(self).

class fipy.solvers.convergence.NullDivergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Divergence

Breakdown when solving the Hessenberg system within GMRES.

__str__()

Return str(self).

class fipy.solvers.convergence.OutOfRangeDivergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Divergence

A value became too small, too large, or invalid.

__str__()

Return str(self).

class fipy.solvers.convergence.PreconditioningDivergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Divergence

A problem with the preconditioner.

__str__()

Return str(self).

class fipy.solvers.convergence.RHSZeroConvergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Convergence

\(\vec{b} = 0\), so exact solution is \(\vec{x} = 0\).

__str__()

Return str(self).

class fipy.solvers.convergence.RelativeToleranceConvergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Convergence

Relative tolerance satisfied.

residual < rtol * scale

__str__()

Return str(self).

class fipy.solvers.convergence.StagnatedDivergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Divergence

The method stagnated.

__str__()

Return str(self).

class fipy.solvers.convergence.ToleranceDivergence(solver, iterations, residual, criterion, actual_code=None, **kwargs)

Bases: Divergence

Residual norm increased too much.

__str__()

Return str(self).

Last updated on Jun 26, 2024. Created using Sphinx 7.1.2.