This class is just a specialization of PrecisionOp when the shift Operator is built with sparse matrices and therefore algebra can be performed with Cholesky. It allows to return the precision matrix as a Sparse Matrix.
|
| | PrecisionOpMatrix (ShiftOpMatrix *shiftop=nullptr, const CovAniso *cova=nullptr, bool verbose=false) |
| |
| | PrecisionOpMatrix (const AMesh *mesh, CovAniso *cova, bool verbose=false) |
| |
| virtual | ~PrecisionOpMatrix () |
| |
| void | evalInverse (const constvect vecin, std::vector< double > &vecout) override |
| |
| int | _addSimulateToDest (const constvect whitenoise, vect outv) const override |
| |
| int | _addToDest (const constvect inv, vect outv) const override |
| |
| double | getLogDeterminant (int nbsimu=1) override |
| |
| VectorDouble | extractDiag () const override |
| |
| void | evalDeriv (const constvect inv, vect outv, int iapex, int igparam, const EPowerPT &power) override |
| |
| void | evalDerivOptim (vect outv, int iapex, int igparam, const EPowerPT &power) override |
| |
| void | gradYQX (const constvect X, const constvect Y, vect result, const EPowerPT &power) override |
| |
| void | gradYQXOptim (const constvect X, const constvect Y, vect result, const EPowerPT &power) override |
| |
| const MatrixSparse * | getQ () const |
| |
| const MatrixSparse * | getS () const |
| |
| | PrecisionOp () |
| |
| | PrecisionOp (AShiftOp *shiftop, const CovAniso *cova, bool verbose=false) |
| |
| | PrecisionOp (const AMesh *mesh, CovAniso *cova, bool stencil=false, bool verbose=false) |
| |
| | PrecisionOp (const PrecisionOp &pmat) |
| |
| PrecisionOp & | operator= (const PrecisionOp &pmat) |
| |
| virtual | ~PrecisionOp () |
| |
| virtual std::pair< double, double > | getRangeEigenVal (int ndiscr=100) |
| |
| int | reset (const AShiftOp *shiftop, const CovAniso *cova=nullptr, bool verbose=false) |
| |
| VectorVectorDouble | simulate (int nbsimu=1) |
| |
| void | evalPower (const constvect inm, vect outm, const EPowerPT &power=EPowerPT::fromKey("ONE")) |
| |
| VectorDouble | computeCov (int imesh) |
| |
| VectorDouble | simulateOne () |
| |
| int | getSize () const override |
| |
| bool | getTraining () const |
| |
| void | setTraining (bool tr) |
| |
| AShiftOp * | getShiftOp () const |
| |
| VectorDouble | getPolyCoeffs (const EPowerPT &power) |
| |
| void | setPolynomialFromPoly (APolynomial *polynomial) |
| |
| bool | isCovaDefined () const |
| |
| VectorDouble | getCoeffs () |
| |
| void | evalPower (const VectorDouble &inv, VectorDouble &outv, const EPowerPT &power=EPowerPT::fromKey("ONE")) |
| |
| | ASimulable () |
| |
| virtual | ~ASimulable () |
| |
| int | evalSimulate (const VectorDouble &whitenoise, VectorDouble &outv) const |
| |
| VectorDouble | evalSimulate (const VectorDouble &whitenoise) const |
| |
| VectorDouble | simulate () const |
| |
| int | evalSimulate (const constvect whitenoise, vect result) const |
| |
| int | addSimulateToDest (const constvect whitenoise, vect outv) const |
| |
| | ALinearOp () |
| |
| | ALinearOp (const ALinearOp &op)=delete |
| |
| virtual | ~ALinearOp () |
| |
| int | evalDirect (const VectorDouble &inv, VectorDouble &outv) const |
| |
| VectorDouble | evalDirect (const VectorDouble &in) const |
| |
| virtual void | multiplyByValueAndAddDiagonal (double v1=1., double v2=0.) |
| |
| virtual void | resetModif () |
| |
| void | setUseFactor (bool usefactor) |
| |
| int | evalDirect (constvect inv, vect outv) const |
| |
| int | addToDest (const constvect inv, vect outv) const |
| |
| int | addToDest (const Eigen::VectorXd &inv, Eigen::VectorXd &outv) const |
| |