public class FloatSSOR extends Object implements FloatPreconditioner
Constructor and Description |
---|
FloatSSOR(int n)
Constructor for SSOR.
|
FloatSSOR(int n,
boolean reverse,
float omegaF,
float omegaR)
Constructor for SSOR
|
Modifier and Type | Method and Description |
---|---|
FloatMatrix1D |
apply(FloatMatrix1D b,
FloatMatrix1D x)
Solves the approximate problem with the given right hand side.
|
void |
setMatrix(FloatMatrix2D A)
Sets the operator matrix for the preconditioner.
|
void |
setOmega(float omegaF,
float omegaR)
Sets the overrelaxation parameters
|
FloatMatrix1D |
transApply(FloatMatrix1D b,
FloatMatrix1D x)
Solves the approximate transpose problem with the given right hand side.
|
public FloatSSOR(int n, boolean reverse, float omegaF, float omegaR)
n
- Problem size (number of rows)reverse
- True to perform a reverse sweep as well as the forward sweep.
If false, this preconditioner becomes the SOR method insteadomegaF
- Overrelaxation parameter for the forward sweep. Between 0 and
2.omegaR
- Overrelaxation parameter for the backwards sweep. Between 0
and 2.public FloatSSOR(int n)
omega=1
with a backwards sweepn
- Problem size (number of rows)public void setOmega(float omegaF, float omegaR)
omegaF
- Overrelaxation parameter for the forward sweep. Between 0 and
2.omegaR
- Overrelaxation parameter for the backwards sweep. Between 0
and 2.public void setMatrix(FloatMatrix2D A)
FloatPreconditioner
setMatrix
in interface FloatPreconditioner
A
- Matrix to setup the preconditioner for. Not modifiedpublic FloatMatrix1D apply(FloatMatrix1D b, FloatMatrix1D x)
FloatPreconditioner
apply
in interface FloatPreconditioner
b
- Right hand side of problemx
- Result is stored herepublic FloatMatrix1D transApply(FloatMatrix1D b, FloatMatrix1D x)
FloatPreconditioner
transApply
in interface FloatPreconditioner
b
- Right hand side of problemx
- Result is stored hereJump to the Parallel Colt Homepage