1.5.1
CCC
 
CovGneiting Class Reference

This class describes an elementary covariance. More...

#include <CovGneiting.hpp>

Inheritance diagram for CovGneiting:
ACov ICloneable ASpaceObject AStringable

Detailed Description

This class describes an elementary covariance.

This covariance is described through the following list of parameters:

  • the covariance type: the list of these types is provided in ECov.hpp
  • the largest set of parameters for any covariance: range(s), anisotropy angle(s), third parameter. Some of these parameters do not make sense, depending on the covariance type: e.g. the range for nugget effect, the third parameter for a spherical structure, ... All these parameters are processed and stored as a tensor in order to avoid repetitive calculations.
  • the sill. This comes as a square symmetric matrix whose dimension is equal to the number of variables.

Public Member Functions

 CovGneiting (const CovAniso *covS, const CovAniso *covTemp, double separability=1.0)
 
 CovGneiting (const CovGneiting &r)
 
CovGneitingoperator= (const CovGneiting &r)
 
virtual ~CovGneiting ()
 
bool isConsistent (const ASpace *space) const override
 Indicate if I am consistent with the provided space. More...
 
virtual double eval (const SpacePoint &p1, const SpacePoint &p2, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const override
 ACov Interface. More...
 
virtual int getNVariables () const override
 ACov Interface. More...
 
void optimizationSetTargetByIndex (int iech) const override
 
- Public Member Functions inherited from ACov
 ACov (const ASpace *space=nullptr)
 
 ACov (const ACov &r)
 
ACovoperator= (const ACov &r)
 
virtual ~ACov ()
 
virtual bool isIndexable () const
 
virtual bool isNoStat () const
 
virtual double eval0 (int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 Calculate the covariance between two variables for 0-distance (stationary case) More...
 
virtual void eval0CovMatBiPointInPlace (MatrixSquareGeneral &mat, const CovCalcMode *mode=nullptr) const
 Calculate the matrix of covariances for 0-distance (stationary case) More...
 
virtual void addEval0CovMatBiPointInPlace (MatrixSquareGeneral &mat, const CovCalcMode *mode=nullptr) const
 
virtual void evalCovMatBiPointInPlace (MatrixSquareGeneral &mat, const SpacePoint &p1, const SpacePoint &p2, const CovCalcMode *mode=nullptr) const
 Calculate the matrix of covariances between two points (general case) More...
 
virtual void addEvalCovMatBiPointInPlace (MatrixSquareGeneral &mat, const SpacePoint &pwork1, const SpacePoint &pwork2, const CovCalcMode *mode) const
 
void evalCovKriging (MatrixSquareGeneral &mat, SpacePoint &pwork1, SpacePoint &pout, const CovCalcMode *mode=nullptr) const
 
virtual double evalCovOnSphere (double alpha, int degree=50, bool flagScaleDistance=false, const CovCalcMode *mode=nullptr) const
 
virtual VectorDouble evalSpectrumOnSphere (int n, bool flagNormDistance=false, bool flagCumul=false) const
 
virtual double evalSpectrum (const VectorDouble &freq, int ivar, int jvar) const
 
virtual void updateCovByPoints (int icas1, int iech1, int icas2, int iech2)
 
void optimizationSetTarget (const SpacePoint &pt) const
 
void optimizationPreProcess (const Db *db) const
 
void optimizationPreProcess (const std::vector< SpacePoint > &p) const
 
void optimizationPostProcess () const
 
virtual bool isOptimEnabled () const
 
VectorDouble eval (const std::vector< SpacePoint > &vec_p1, const std::vector< SpacePoint > &vec_p2, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixSquareGeneral eval0Mat (const CovCalcMode *mode=nullptr) const
 
MatrixSquareGeneral evalMat (const SpacePoint &p1, const SpacePoint &p2, const CovCalcMode *mode=nullptr) const
 
double evalIvarIpas (double step, const VectorDouble &dir=VectorDouble(), int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
double evalIvarIpasIncr (const VectorDouble &dincr, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
VectorDouble evalIvarNpas (const VectorDouble &vec_step, const VectorDouble &dir=VectorDouble(), int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixSquareGeneral evalNvarIpas (double step, const VectorDouble &dir=VectorDouble(), const CovCalcMode *mode=nullptr) const
 
MatrixSquareGeneral evalNvarIpasIncr (const VectorDouble &dincr, const CovCalcMode *mode=nullptr) const
 
double evalIsoIvarIpas (double step, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
VectorDouble evalIsoIvarNpas (const VectorDouble &vec_step, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixSquareGeneral evalIsoNvarIpas (double step, const CovCalcMode *mode=nullptr) const
 
double evalCvv (const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
double evalCvvShift (const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &shift, const VectorDouble &angles=VectorDouble(), int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixSquareGeneral evalCvvM (const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), const CovCalcMode *mode=nullptr) const
 
double evalCxv (const SpacePoint &p1, const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), const VectorDouble &x0=VectorDouble(), int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
double evalCxv (const Db *db, const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), const VectorDouble &x0=VectorDouble(), int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixSquareGeneral evalCxvM (const SpacePoint &p1, const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), const VectorDouble &x0=VectorDouble(), const CovCalcMode *mode=nullptr) const
 
VectorDouble evalPointToDb (const SpacePoint &p1, const Db *db2, int ivar=0, int jvar=0, bool useSel=true, const VectorInt &nbgh2=VectorInt(), const CovCalcMode *mode=nullptr) const
 
VectorDouble evalPointToDbAsSP (const std::vector< SpacePoint > &p1s, const SpacePoint &p2, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
double evalAverageDbToDb (const Db *db1, const Db *db2, int ivar=0, int jvar=0, double eps=0., int seed=434132, const CovCalcMode *mode=nullptr) const
 
double evalAverageIncrToIncr (const VectorVectorDouble &d1, const VectorVectorDouble &d2, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
double evalAveragePointToDb (const SpacePoint &p1, const Db *db2, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixRectangular evalCovMatrix (const Db *db1_arg, const Db *db2_arg=nullptr, int ivar0=-1, int jvar0=-1, const VectorInt &nbgh1=VectorInt(), const VectorInt &nbgh2=VectorInt(), const CovCalcMode *mode=nullptr)
 
MatrixSquareSymmetric evalCovMatrixSymmetric (const Db *db1, int ivar0, const VectorInt &nbgh1, const CovCalcMode *mode)
 
MatrixSparseevalCovMatrixSparse (const Db *db1_arg, const Db *db2_arg=nullptr, int ivar0=-1, int jvar0=-1, const VectorInt &nbgh1=VectorInt(), const VectorInt &nbgh2=VectorInt(), const CovCalcMode *mode=nullptr, double eps=EPSILON3)
 
double extensionVariance (const Db *db, const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), const VectorDouble &x0=VectorDouble(), int ivar=0, int jvar=0) const
 
double samplingDensityVariance (const Db *db, const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), const VectorDouble &x0=VectorDouble(), int ivar=0, int jvar=0) const
 
double specificVolume (const Db *db, double mean, const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), const VectorDouble &x0=VectorDouble(), int ivar=0, int jvar=0) const
 
double coefficientOfVariation (const Db *db, double volume, double mean, const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), const VectorDouble &x0=VectorDouble(), int ivar=0, int jvar=0) const
 
double specificVolumeFromCoV (Db *db, double cov, double mean, const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), const VectorDouble &x0=VectorDouble(), int ivar=0, int jvar=0) const
 
void manage (const Db *db1, const Db *db2) const
 
void load (const SpacePoint &p, bool case1) const
 
void loadAndAddEvalCovMatBiPointInPlace (MatrixSquareGeneral &mat, const SpacePoint &p1, const SpacePoint &p2, const CovCalcMode *mode=nullptr) const
 
double loadAndEval (const SpacePoint &p1, const SpacePoint &p2, int ivar, int jvar, const CovCalcMode *mode) const
 
- Public Member Functions inherited from ASpaceObject
 ASpaceObject (const ASpace *space=nullptr)
 
 ASpaceObject (const ASpace &space)
 
 ASpaceObject (const ASpaceObject &r)
 
ASpaceObjectoperator= (const ASpaceObject &r)
 
virtual ~ASpaceObject ()
 
virtual String toString (const AStringFormat *strfmt=nullptr) const override
 AStringable interface. More...
 
const ASpacegetSpace () const
 Accessor to the current object space context. More...
 
bool isConsistent () const
 Indicate if I am consistent with my current space context. More...
 
VectorDouble getUnitaryVector () const
 Return unitary vector for the current space context. More...
 
unsigned int getNDim (int ispace=-1) const
 Shortcuts to ASpace methods. More...
 
const VectorDoublegetOrigin (int ispace=-1) const
 Return the current space context origin coordinates. More...
 
double getDistance (const SpacePoint &p1, const SpacePoint &p2, int ispace=0) const
 Return the distance between two space points for the current space context. More...
 
VectorDouble getDistances (const SpacePoint &p1, const SpacePoint &p2) const
 Return all the distances (space composits) between two space points for the current space context. More...
 
VectorDouble getIncrement (const SpacePoint &p1, const SpacePoint &p2, int ispace=0) const
 Return the increment vector between two space points for the current space context. More...
 
- Public Member Functions inherited from AStringable
 AStringable ()
 
 AStringable (const AStringable &r)
 
AStringableoperator= (const AStringable &r)
 
virtual ~AStringable ()
 
virtual void display (const AStringFormat *strfmt=nullptr) const final
 
virtual void display (int level) const final
 
- Public Member Functions inherited from ICloneable
 ICloneable ()
 
virtual ~ICloneable ()
 
virtual ICloneableclone () const =0
 

Constructor & Destructor Documentation

◆ CovGneiting() [1/2]

CovGneiting::CovGneiting ( const CovAniso covS,
const CovAniso covTemp,
double  separability = 1.0 
)

◆ CovGneiting() [2/2]

CovGneiting::CovGneiting ( const CovGneiting r)

◆ ~CovGneiting()

CovGneiting::~CovGneiting ( )
virtual

Member Function Documentation

◆ eval()

double CovGneiting::eval ( const SpacePoint p1,
const SpacePoint p2,
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const
overridevirtual

ACov Interface.

Implements ACov.

◆ getNVariables()

virtual int CovGneiting::getNVariables ( ) const
inlineoverridevirtual

ACov Interface.

Implements ACov.

◆ isConsistent()

bool CovGneiting::isConsistent ( const ASpace space) const
inlineoverridevirtual

Indicate if I am consistent with the provided space.

Implements ASpaceObject.

◆ operator=()

CovGneiting & CovGneiting::operator= ( const CovGneiting r)

◆ optimizationSetTargetByIndex()

void CovGneiting::optimizationSetTargetByIndex ( int  iech) const
overridevirtual

Reimplemented from ACov.


The documentation for this class was generated from the following files: