no.uib.cipr.matrix.sparse
Class AbstractIterativeSolver

java.lang.Object
  extended by no.uib.cipr.matrix.sparse.AbstractIterativeSolver
All Implemented Interfaces:
IterativeSolver
Direct Known Subclasses:
BiCG, BiCGstab, CG, CGS, Chebyshev, GMRES, IR, QMR

public abstract class AbstractIterativeSolver
extends java.lang.Object
implements IterativeSolver

Partial implementation of an iterative solver


Field Summary
protected  IterationMonitor iter
          Iteration monitor
protected  Preconditioner M
          Preconditioner to use
 
Constructor Summary
AbstractIterativeSolver()
          Constructor for AbstractIterativeSolver.
 
Method Summary
protected  void checkSizes(Matrix A, Vector b, Vector x)
          Checks sizes of input data for IterativeSolver.solve(Matrix, Vector, Vector).
 IterationMonitor getIterationMonitor()
          Gets the iteration monitor
 Preconditioner getPreconditioner()
          Gets preconditioner
 void setIterationMonitor(IterationMonitor iter)
          Sets iteration monitor
 void setPreconditioner(Preconditioner M)
          Sets preconditioner
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface no.uib.cipr.matrix.sparse.IterativeSolver
solve
 

Field Detail

M

protected Preconditioner M
Preconditioner to use


iter

protected IterationMonitor iter
Iteration monitor

Constructor Detail

AbstractIterativeSolver

public AbstractIterativeSolver()
Constructor for AbstractIterativeSolver. Does not use preconditioning, and uses the default linear iteration object.

Method Detail

setPreconditioner

public void setPreconditioner(Preconditioner M)
Description copied from interface: IterativeSolver
Sets preconditioner

Specified by:
setPreconditioner in interface IterativeSolver
Parameters:
M - Preconditioner to use

getPreconditioner

public Preconditioner getPreconditioner()
Description copied from interface: IterativeSolver
Gets preconditioner

Specified by:
getPreconditioner in interface IterativeSolver
Returns:
Current preconditioner

getIterationMonitor

public IterationMonitor getIterationMonitor()
Description copied from interface: IterativeSolver
Gets the iteration monitor

Specified by:
getIterationMonitor in interface IterativeSolver
Returns:
Current iteration monitor

setIterationMonitor

public void setIterationMonitor(IterationMonitor iter)
Description copied from interface: IterativeSolver
Sets iteration monitor

Specified by:
setIterationMonitor in interface IterativeSolver
Parameters:
iter - Iteration monitor

checkSizes

protected void checkSizes(Matrix A,
                          Vector b,
                          Vector x)
Checks sizes of input data for IterativeSolver.solve(Matrix, Vector, Vector). Throws an exception if the sizes does not match.