cz.cuni.jagrlib.iface
Interface SLESolver

All Superinterfaces:
Property
All Known Implementing Classes:
SLEHierarchical, SLEProgressive, SLERelaxation, SuperShootGather

public interface SLESolver
extends Property

Solver API for system of linear equations (SLE). Solver usually reads data using the SLEData interface from another module..

Since:
0.26
See Also:
SLEData, SLEDataStore

Field Summary
static java.lang.String OMEGA
          Property identifier: over-relaxation factor (non-mandatory).
static java.lang.String STEPS
          Property identifier: number of performed iteration steps (if applicable).
static java.lang.String TOTAL_RESIDUAL
          Property identifier: sum of all residual entries - accuracy of solution (non-mandatory).
 
Fields inherited from interface cz.cuni.jagrlib.iface.Property
LOGGING, STATISTICS, TEXT_DESCRIPTION
 
Method Summary
 int actualComponent()
          Get actual component number.
 double[] getSolution(double[] result)
          Reads the whole solution vector.
 double getSolution(int col)
          Reads a single unknown (element of solution vector).
 double refine(int maxIterations, boolean save)
          Refine the solution performing several iterations.
 void reset()
          Reset iterative solution algorithm (if applicable).
 void setComponent(int c)
          Set actual component (non-mandatory).
 double setEpsilon(double epsilon)
          Sets solver accuracy (whatever it means).
 void solve(boolean save)
          Solve the whole system en bloc.
 void update()
          Input data was changed, solver should adapt to it.
 
Methods inherited from interface cz.cuni.jagrlib.iface.Property
commit, get, set
 

Field Detail

OMEGA

static final java.lang.String OMEGA
Property identifier: over-relaxation factor (non-mandatory).

See Also:
Constant Field Values

STEPS

static final java.lang.String STEPS
Property identifier: number of performed iteration steps (if applicable).

See Also:
Constant Field Values

TOTAL_RESIDUAL

static final java.lang.String TOTAL_RESIDUAL
Property identifier: sum of all residual entries - accuracy of solution (non-mandatory).

See Also:
Constant Field Values
Method Detail

setEpsilon

double setEpsilon(double epsilon)
Sets solver accuracy (whatever it means). Returns the old value..


solve

void solve(boolean save)
Solve the whole system en bloc.

Parameters:
save - Solution will be saved into the associated SLEDataStore.

reset

void reset()
Reset iterative solution algorithm (if applicable).


refine

double refine(int maxIterations,
              boolean save)
Refine the solution performing several iterations.

Parameters:
maxIterations - Number of iterations requested.
save - Solution will be saved into the associated SLEDataStore.
Returns:
Achieved precision (if less than epsilon, the system has converged).

update

void update()
Input data was changed, solver should adapt to it. Usually solve(boolean) or refine(int, boolean) will be called afterwards..


getSolution

double getSolution(int col)
Reads a single unknown (element of solution vector). Non-mandatory.


getSolution

double[] getSolution(double[] result)
Reads the whole solution vector. Non-mandatory.


actualComponent

int actualComponent()
Get actual component number.


setComponent

void setComponent(int c)
Set actual component (non-mandatory).