Loading [MathJax]/extensions/tex2jax.js
1.7.3
Geostatistics & Machine Learning toolbox | https://gstlearn.org
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
CorGneiting Class Reference

This class describes the Gneiting correlation function. More...

#include <CorGneiting.hpp>

Inheritance diagram for CorGneiting:
ACov ASpaceObject ICloneable AStringable

Detailed Description

This class describes the Gneiting correlation function.

Public Member Functions

 CorGneiting (const CorAniso *covS, const CorAniso *covTemp, double separability=1.0)
 
 CorGneiting (const CorGneiting &r)
 
CorGneitingoperator= (const CorGneiting &r)
 
virtual ~CorGneiting ()
 
bool isConsistent (const ASpace *space) const override
 
virtual int getNVar () const override
 ACov Interface.
 
- Public Member Functions inherited from ACov
 ACov (const CovContext &ctxt=CovContext())
 
 ACov (const ACov &r)
 
ACovoperator= (const ACov &r)
 
virtual ~ACov ()
 
virtual bool isIndexable () const
 
bool isNoStat () const
 
virtual void loadInfoValues ()
 
const CovContextgetContext () const
 
void setContext (const CovContext &ctxt)
 
void updateFromContext ()
 
virtual void copyCovContext (const CovContext &ctxt)
 
void initFromContext ()
 
CovContext getContextCopy () 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)
 
double evalCov (const SpacePoint &p1, const SpacePoint &p2, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 Calculate the covariance between two variables and two points (general case)
 
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) const
 
void attachNoStatDb (const Db *db)
 
virtual bool isOptimEnabled () const
 Functions linked to Optimization during Covariance calculations.
 
void optimizationPreProcess (int mode, const std::vector< SpacePoint > &ps) const
 
SpacePointoptimizationLoadInPlace (int iech, int mode, int rank) const
 
void optimizationPostProcess () const
 
void optimizationSetTarget (SpacePoint &pt) 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
 Functions for evaluating Covariances.
 
MatrixSymmetric eval0Mat (const CovCalcMode *mode=nullptr) const
 
MatrixSymmetric evalCovMat0 (const Db *db, int iech, const KrigOpt &krigopt=KrigOpt()) const
 Functions for evaluating Covariance Matrices either in place or not.
 
MatrixDense evalCovMat (const Db *db1, const Db *db2=nullptr, int ivar0=-1, int jvar0=-1, const VectorInt &nbgh1=VectorInt(), const VectorInt &nbgh2=VectorInt(), const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
MatrixSymmetric evalCovMatSym (const Db *db1, const VectorInt &nbgh1=VectorInt(), int ivar0=-1, const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
MatrixSparseevalCovMatSparse (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, bool cleanOptim=true, double eps=EPSILON3) const
 
int evalCovMat0InPlace (MatrixSymmetric &mat, const Db *db, int iech, const KrigOpt &krigopt=KrigOpt()) const
 
int evalCovMatInPlace (MatrixDense &mat, const Db *db1, const Db *db2=nullptr, int ivar0=-1, int jvar0=-1, const VectorInt &nbgh1=VectorInt(), const VectorInt &nbgh2=VectorInt(), const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
int evalCovMatSymInPlace (MatrixSymmetric &mat, const Db *db1, const VectorInt &nbgh1=VectorInt(), int ivar0=-1, const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
int evalCovMatInPlaceFromIdx (MatrixDense &mat, const Db *db1, const Db *db2, const VectorVectorInt &index1, const VectorVectorInt &index2, const VectorInt &nbgh2=VectorInt(), const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
int evalCovMatSymInPlaceFromIdx (MatrixSymmetric &mat, const Db *db1, const VectorVectorInt &index1, const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
int evalCovMatRHSInPlaceFromIdx (MatrixDense &mat, const Db *db1, const Db *db2, const VectorVectorInt &index1, const int iech2=-1, const KrigOpt &krigopt=KrigOpt(), bool cleanOptim=true) const
 
int evalCovVecRHSInPlace (vect vect, const Db *db2, const VectorInt &index1, int iech2, const KrigOpt &krigopt, SpacePoint &pin, SpacePoint &pout, VectorDouble &tabwork, double lambda=1.) const
 
virtual int addEvalCovVecRHSInPlace (vect vect, const VectorInt &index1, const int iech2, const KrigOpt &krigopt, SpacePoint &pin, SpacePoint &pout, VectorDouble &tabwork, double lambda=1.) const
 
void eval0CovMatBiPointInPlace (MatrixSymmetric &mat, const CovCalcMode *mode) 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 evalIvarNlag (const VectorDouble &vec_step, const VectorDouble &dir=VectorDouble(), int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixSquare evalNvarIpas (double step, const VectorDouble &dir=VectorDouble(), const CovCalcMode *mode=nullptr) const
 
MatrixSquare 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 evalIsoIvarNlag (const VectorDouble &vec_step, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixSquare 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
 
MatrixSquare 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
 
MatrixSquare evalCxvM (const SpacePoint &p1, const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), const VectorDouble &x0=VectorDouble(), const CovCalcMode *mode=nullptr) const
 
void evalPointToDb (VectorDouble &values, const SpacePoint &p1, const Db *db2, int ivar=0, int jvar=0, bool useSel=true, const VectorInt &nbgh2=VectorInt(), const CovCalcMode *mode=nullptr) const
 
void evalPointToDbAsSP (VectorDouble &values, 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
 
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
 
double evaluateOneGeneric (const CovInternal *covint, const VectorDouble &d1=VectorDouble(), double weight=1., const CovCalcMode *mode=nullptr) const
 
double calculateStDev (Db *db1, int iech1, Db *db2, int iech2, bool verbose=false, double factor=1., const CovCalcMode *mode=nullptr) const
 
void evaluateMatInPlace (const CovInternal *covint, const VectorDouble &d1, MatrixSquare &covtab, bool flag_init=false, double weight=1., const CovCalcMode *mode=nullptr) const
 
VectorDouble evaluateFromDb (Db *db, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
double evaluateOneIncr (double hh, const VectorDouble &codir=VectorDouble(), int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const
 
VectorDouble sample (const VectorDouble &h, const VectorDouble &codir=VectorDouble(), int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr, const CovInternal *covint=nullptr) const
 
VectorDouble sampleUnitary (const VectorDouble &hh, int ivar=0, int jvar=0, VectorDouble codir=VectorDouble(), const CovCalcMode *mode=nullptr) const
 
VectorDouble envelop (const VectorDouble &hh, int ivar=0, int jvar=0, int isign=1, VectorDouble codir=VectorDouble(), const CovCalcMode *mode=nullptr) const
 
int buildVmapOnDbGrid (DbGrid *dbgrid, const NamingConvention &namconv=NamingConvention("VMAP")) const
 
double gofToVario (const Vario *vario, bool verbose=true) const
 
void manage (const Db *db1, const Db *db2) const
 
void load (const SpacePoint &p, bool case1) const
 
virtual void updateCovByMesh (int imesh, bool aniso=true) const
 
virtual double getValue (const EConsElem &econs, int iv1, int iv2) const
 
void makeStationary ()
 
virtual int makeElemNoStat (const EConsElem &econs, int iv1, int iv2, const AFunctional *func=nullptr, const Db *db=nullptr, const String &namecol=String())
 
void createNoStatTab ()
 
void informMeshByMesh (const AMesh *amesh) const
 
void informMeshByApex (const AMesh *amesh) const
 
VectorDouble informCoords (const VectorVectorDouble &coords, const EConsElem &econs, int iv1=0, int iv2=0) const
 
void informDbIn (const Db *dbin) const
 
void informDbOut (const Db *dbout) const
 
virtual void updateCovByPoints (int icas1, int iech1, int icas2, int iech2)
 
int getNDim (int ispace=-1) const
 
void optimizationPreProcessForData (const Db *db1=nullptr) const
 
virtual void setOptimEnabled (bool enabled) const
 
bool checkAndManageNoStatDb (const Db *db, const String &namecol)
 
std::shared_ptr< const DbgetDbNoStat () const
 
const DbgetDbNoStatRaw () const
 
void setNoStatDbIfNecessary (const Db *db)
 
void setNoStatDbIfNecessary (std::shared_ptr< const Db > &db)
 
- Public Member Functions inherited from ASpaceObject
 ASpaceObject (const ASpaceSharedPtr &space=ASpaceSharedPtr())
 
 ASpaceObject (const ASpaceObject &r)
 
ASpaceObjectoperator= (const ASpaceObject &r)
 
virtual ~ASpaceObject ()
 
virtual String toString (const AStringFormat *strfmt=nullptr) const override
 AStringable interface.
 
ASpaceSharedPtr getSpace () const
 Accessor to the current object space context.
 
bool isConsistent () const
 Indicate if I am consistent with my current space context.
 
VectorDouble getUnitaryVector () const
 Return unitary vector for the current space context.
 
bool isConsistent (const ASpaceSharedPtr &space) const
 Indicate if I am consistent with the provided space.
 
unsigned int getNDim (int ispace=-1) const
 Shortcuts to ASpace methods.
 
const VectorDoublegetOrigin (int ispace=-1) const
 Return the current space context origin coordinates.
 
double getDistance (const SpacePoint &p1, const SpacePoint &p2, int ispace=0) const
 Return the distance between two space points for the current space context.
 
VectorDouble getDistances (const SpacePoint &p1, const SpacePoint &p2) const
 Return all the distances (space composits) between two space points for the current space context.
 
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.
 
- 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
 

Additional Inherited Members

- Static Public Member Functions inherited from ACov
static void gofDisplay (double gof, bool byValue=true, const VectorDouble &thresholds={2., 5., 10., 100})
 

Constructor & Destructor Documentation

◆ CorGneiting() [1/2]

CorGneiting::CorGneiting ( const CorAniso covS,
const CorAniso covTemp,
double  separability = 1.0 
)

◆ CorGneiting() [2/2]

CorGneiting::CorGneiting ( const CorGneiting r)

◆ ~CorGneiting()

CorGneiting::~CorGneiting ( )
virtual

Member Function Documentation

◆ getNVar()

virtual int CorGneiting::getNVar ( ) const
inlineoverridevirtual

ACov Interface.

Reimplemented from ACov.

◆ isConsistent()

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

Implements ASpaceObject.

◆ operator=()

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

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