Package no.uib.cipr.matrix.sparse
Class AbstractIterationMonitor
- java.lang.Object
-
- no.uib.cipr.matrix.sparse.AbstractIterationMonitor
-
- All Implemented Interfaces:
IterationMonitor
- Direct Known Subclasses:
DefaultIterationMonitor
public abstract class AbstractIterationMonitor extends java.lang.Object implements IterationMonitor
Partial implementation of an iteration reporter
-
-
Field Summary
Fields Modifier and Type Field Description protected int
iter
Iteration numberprotected Vector.Norm
normType
Vector-normprotected IterationReporter
reporter
Iteration reporterprotected double
residual
Current residual
-
Constructor Summary
Constructors Constructor Description AbstractIterationMonitor()
Constructor for AbstractIterationMonitor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
converged(double r)
Checks for convergenceboolean
converged(double r, Vector x)
Checks for convergenceboolean
converged(Vector r)
Checks for convergenceboolean
converged(Vector r, Vector x)
Checks for convergenceprotected abstract boolean
convergedI(double r)
protected abstract boolean
convergedI(double r, Vector x)
IterationReporter
getIterationReporter()
Returns current iteration reporterVector.Norm
getNormType()
Returns the vector-norm in useboolean
isFirst()
Returns true for the first iterationint
iterations()
Number of iterations performedvoid
next()
Increases iteration counterdouble
residual()
Returns current residualvoid
setFirst()
Resets the iterationvoid
setIterationReporter(IterationReporter monitor)
Sets new iteration reportervoid
setNormType(Vector.Norm normType)
Sets the vector-norm to calculate with
-
-
-
Field Detail
-
iter
protected int iter
Iteration number
-
normType
protected Vector.Norm normType
Vector-norm
-
reporter
protected IterationReporter reporter
Iteration reporter
-
residual
protected double residual
Current residual
-
-
Method Detail
-
setFirst
public void setFirst()
Description copied from interface:IterationMonitor
Resets the iteration- Specified by:
setFirst
in interfaceIterationMonitor
-
isFirst
public boolean isFirst()
Description copied from interface:IterationMonitor
Returns true for the first iteration- Specified by:
isFirst
in interfaceIterationMonitor
-
next
public void next()
Description copied from interface:IterationMonitor
Increases iteration counter- Specified by:
next
in interfaceIterationMonitor
-
iterations
public int iterations()
Description copied from interface:IterationMonitor
Number of iterations performed- Specified by:
iterations
in interfaceIterationMonitor
-
converged
public boolean converged(Vector r, Vector x) throws IterativeSolverNotConvergedException
Description copied from interface:IterationMonitor
Checks for convergence- Specified by:
converged
in interfaceIterationMonitor
- Parameters:
r
- Residual-vectorx
- State-vector- Returns:
- True if converged
- Throws:
IterativeSolverNotConvergedException
-
converged
public boolean converged(double r, Vector x) throws IterativeSolverNotConvergedException
Description copied from interface:IterationMonitor
Checks for convergence- Specified by:
converged
in interfaceIterationMonitor
- Parameters:
r
- Residual-normx
- State-vector- Returns:
- True if converged
- Throws:
IterativeSolverNotConvergedException
-
converged
public boolean converged(double r) throws IterativeSolverNotConvergedException
Description copied from interface:IterationMonitor
Checks for convergence- Specified by:
converged
in interfaceIterationMonitor
- Parameters:
r
- Residual-norm- Returns:
- True if converged
- Throws:
IterativeSolverNotConvergedException
-
convergedI
protected abstract boolean convergedI(double r, Vector x) throws IterativeSolverNotConvergedException
-
convergedI
protected abstract boolean convergedI(double r) throws IterativeSolverNotConvergedException
-
converged
public boolean converged(Vector r) throws IterativeSolverNotConvergedException
Description copied from interface:IterationMonitor
Checks for convergence- Specified by:
converged
in interfaceIterationMonitor
- Parameters:
r
- Residual-vector- Returns:
- True if converged
- Throws:
IterativeSolverNotConvergedException
-
getNormType
public Vector.Norm getNormType()
Description copied from interface:IterationMonitor
Returns the vector-norm in use- Specified by:
getNormType
in interfaceIterationMonitor
-
setNormType
public void setNormType(Vector.Norm normType)
Description copied from interface:IterationMonitor
Sets the vector-norm to calculate with- Specified by:
setNormType
in interfaceIterationMonitor
-
getIterationReporter
public IterationReporter getIterationReporter()
Description copied from interface:IterationMonitor
Returns current iteration reporter- Specified by:
getIterationReporter
in interfaceIterationMonitor
-
setIterationReporter
public void setIterationReporter(IterationReporter monitor)
Description copied from interface:IterationMonitor
Sets new iteration reporter- Specified by:
setIterationReporter
in interfaceIterationMonitor
-
residual
public double residual()
Description copied from interface:IterationMonitor
Returns current residual- Specified by:
residual
in interfaceIterationMonitor
-
-