#include <ALinearOpMulti.hpp>
|
| | ALinearOpMulti (int nitermax=1000, double eps=EPSILON8) |
| |
| | ALinearOpMulti (const ALinearOpMulti &m) |
| |
| ALinearOpMulti & | operator= (const ALinearOpMulti &m) |
| |
| virtual | ~ALinearOpMulti () |
| |
| virtual void | evalInverse (const VectorVectorDouble &inv, VectorVectorDouble &outv) const |
| |
| void | evalDirect (const VectorVectorDouble &inv, VectorVectorDouble &outv) const |
| |
| void | initLk (const VectorVectorDouble &inv, VectorVectorDouble &outv) const |
| |
| virtual int | sizes () const =0 |
| |
| virtual int | size (int) const =0 |
| |
| void | setNIterMax (int nitermax) |
| |
| void | setEps (double eps) |
| |
| void | setPrecond (const ALinearOpMulti *precond, int status) |
| |
| void | resetStatCG () const |
| |
| void | printStatCG () const |
| |
| void | _linearComb (double val1, const VectorVectorDouble &in1, double val2, const VectorVectorDouble &in2, VectorVectorDouble &outv) const |
| |
| void | prodScalar (double val, const VectorVectorDouble &inv, VectorVectorDouble &outv) const |
| |
| void | addProdScalar (double val, const VectorVectorDouble &inv, VectorVectorDouble &outv) const |
| |
| void | _copyVals (const VectorVectorDouble &inv, VectorVectorDouble &outv) const |
| |
| void | _updated () const |
| |
| double | innerProduct (const VectorDouble &x, const VectorDouble &y) const |
| |
| double | innerProduct (const VectorVectorDouble &x, const VectorVectorDouble &y) const |
| |
| double | max (const VectorVectorDouble &vect) const |
| |
| void | fillVal (VectorVectorDouble &vect, double val) const |
| |
| void | diff (const VectorVectorDouble &, const VectorVectorDouble &, VectorVectorDouble &) const |
| |
| void | sum (const VectorVectorDouble &, const VectorVectorDouble &, VectorVectorDouble &) const |
| |
| void | _initPublic () const |
| |
◆ ALinearOpMulti() [1/2]
| ALinearOpMulti::ALinearOpMulti |
( |
int |
nitermax = 1000, |
|
|
double |
eps = EPSILON8 |
|
) |
| |
◆ ALinearOpMulti() [2/2]
◆ ~ALinearOpMulti()
| ALinearOpMulti::~ALinearOpMulti |
( |
| ) |
|
|
virtual |
◆ _copyVals()
◆ _evalDirect()
◆ _init()
| void ALinearOpMulti::_init |
( |
| ) |
const |
|
protected |
This method intends to size the different working arrays.
◆ _initPublic()
| void ALinearOpMulti::_initPublic |
( |
| ) |
const |
◆ _linearComb()
outv = val1 * in1 + val2 in2
◆ _updated()
| void ALinearOpMulti::_updated |
( |
| ) |
const |
◆ addProdScalar()
◆ diff()
◆ evalDirect()
Evaluate the product: 'outv' = Q * 'inv'
- Parameters
-
| [in] | inv | Array of input values |
| [out] | outv | Array of output values |
◆ evalInverse()
Evaluate the product: 'outv' = Q^{-1} * 'inv' by conjugate gradient
- Parameters
-
| [in] | inv | Array of input values |
| [out] | outv | Array of output values. Will be used as initial value if _userInitialValue is true. |
◆ fillVal()
◆ initLk()
◆ innerProduct() [1/2]
Returns the inner product between 'x' and 'y'
- Parameters
-
| [in] | x | First array |
| [in] | y | Second array |
◆ innerProduct() [2/2]
Returns the inner product between 'x' and 'y'
- Parameters
-
| [in] | x | First array |
| [in] | y | Second array |
◆ max()
◆ operator=()
◆ printStatCG()
| void ALinearOpMulti::printStatCG |
( |
void |
| ) |
const |
Print out the Conjugate Gradient statistics
Trigger the printout of the statistics
◆ prodScalar()
◆ resetStatCG()
| void ALinearOpMulti::resetStatCG |
( |
void |
| ) |
const |
Reset the Conjugate Gradient statistics
Reset the statistics
◆ setEps()
| void ALinearOpMulti::setEps |
( |
double |
eps | ) |
|
|
inline |
◆ setNIterMax()
| void ALinearOpMulti::setNIterMax |
( |
int |
nitermax | ) |
|
|
inline |
◆ setPrecond()
| void ALinearOpMulti::setPrecond |
( |
const ALinearOpMulti * |
precond, |
|
|
int |
status |
|
) |
| |
Define the Pre-Conditioner facility
- Parameters
-
| [in] | precond | Pointer to a ALinearOp operator |
| [in] | status | Status of this Pre-conditioner
- 0 : not defined and therefore not used
- -1 : Pre-conditioner is the Q_{-1}
- 1 : Pre-conditioner is the Q
|
◆ size()
| virtual int ALinearOpMulti::size |
( |
int |
| ) |
const |
|
pure virtual |
◆ sizes()
| virtual int ALinearOpMulti::sizes |
( |
| ) |
const |
|
pure virtual |
◆ sum()
◆ _eps
| double ALinearOpMulti::_eps |
|
private |
◆ _initialized
| bool ALinearOpMulti::_initialized |
|
mutableprivate |
◆ _niterCG
| int ALinearOpMulti::_niterCG |
|
mutableprivate |
◆ _nIterMax
| int ALinearOpMulti::_nIterMax |
|
private |
◆ _numberCG
| int ALinearOpMulti::_numberCG |
|
mutableprivate |
◆ _p
◆ _precond
◆ _precondStatus
| bool ALinearOpMulti::_precondStatus |
|
private |
◆ _r
◆ _temp
◆ _timeCG
| double ALinearOpMulti::_timeCG |
|
mutableprivate |
◆ _userInitialValue
| bool ALinearOpMulti::_userInitialValue |
|
private |
◆ _z
The documentation for this class was generated from the following files: