1.4.0
CCC
 
ACov Class Referenceabstract

Class containing the Covariance part of the Model. More...

#include <ACov.hpp>

Inheritance diagram for ACov:
ASpaceObject AStringable ACovAnisoList CovAniso CovLMC CovLMGradient ACovGradient CovLMCAnamorphosis CovLMCConvolution CovLMCTapering CovGradientFunctional CovGradientNumerical

Detailed Description

Class containing the Covariance part of the Model.

It is the uppermost class of the Covariance Tree and is conceived as simple as possible on purpose (in order to let the user defined its own version if necessary): it must simply be able to return its value between two end-point (see eval method).

It is mainly implemented in CovAniso.hpp or ACovAnisoList.hpp

Public Member Functions

 ACov (const ASpace *space=nullptr)
 
 ACov (const ACov &r)
 
ACovoperator= (const ACov &r)
 
virtual ~ACov ()
 
virtual int getNVariables () const =0
 ACov Interface. More...
 
virtual bool isIndexable () const
 
virtual bool isNoStat () const
 
virtual double eval0 (int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const =0
 Calculate the covariance between two variables for 0-distance (stationary case) More...
 
virtual void eval0MatInPlace (MatrixSquareGeneral &mat, const CovCalcMode *mode=nullptr) const
 Calculate the matrix of covariances for 0-distance (stationary case) More...
 
virtual double eval (const SpacePoint &p1, const SpacePoint &p2, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const =0
 Calculate the covariance between two variables and two points (general case) More...
 
virtual void evalMatInPlace (const SpacePoint &p1, const SpacePoint &p2, MatrixSquareGeneral &mat, const CovCalcMode *mode=nullptr) const
 Calculate the matrix of covariances between two points (general case) More...
 
virtual void evalMatOptimInPlace (int icas1, int iech1, int icas2, int iech2, MatrixSquareGeneral &mat, const CovCalcMode *mode=nullptr) const =0
 Calculate the matrix of covariances between two points given by indices (optim) More...
 
virtual bool isOptimEnabled () const
 Tell if the use of Optimization is enabled or not. More...
 
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 setOptimEnabled (bool isOptimEnabled)
 
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
 
- 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...
 
virtual bool isConsistent (const ASpace *space) const =0
 Indicate if I am consistent with the provided space. 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...
 
double getDistance1D (const SpacePoint &p1, const SpacePoint &p2, int idim) const
 Return the distance along one direction between two space points. 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
 

Constructor & Destructor Documentation

◆ ACov() [1/2]

ACov::ACov ( const ASpace space = nullptr)

◆ ACov() [2/2]

ACov::ACov ( const ACov r)

◆ ~ACov()

ACov::~ACov ( )
virtual

Member Function Documentation

◆ coefficientOfVariation()

double ACov::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

Calculate the Coefficient of Variation

Parameters
dbSet of data points
volumeSpecific production volume
meanValue of the Mean
extTarget Block extension
ndiscVector of discretization
anglesOptional rotation angle for block
x0Optional origin of the Block
ivarRank of the first variable
jvarRank of the second variable
Returns

◆ eval() [1/2]

virtual double ACov::eval ( const SpacePoint p1,
const SpacePoint p2,
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const
pure virtual

Calculate the covariance between two variables and two points (general case)

Implemented in CovLMCConvolution, CovLMCAnamorphosis, CovGradientNumerical, CovAniso, ACovAnisoList, and CovLMCTapering.

◆ eval() [2/2]

VectorDouble ACov::eval ( const std::vector< SpacePoint > &  vec_p1,
const std::vector< SpacePoint > &  vec_p2,
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const

◆ eval0()

virtual double ACov::eval0 ( int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const
pure virtual

Calculate the covariance between two variables for 0-distance (stationary case)

Implemented in CovLMCTapering, CovLMCConvolution, CovLMCAnamorphosis, CovGradientNumerical, CovAniso, and ACovAnisoList.

◆ eval0Mat()

MatrixSquareGeneral ACov::eval0Mat ( const CovCalcMode mode = nullptr) const

◆ eval0MatInPlace()

void ACov::eval0MatInPlace ( MatrixSquareGeneral mat,
const CovCalcMode mode = nullptr 
) const
virtual

Calculate the matrix of covariances for 0-distance (stationary case)

Calculate the Matrix of covariance for zero distance

Parameters
matCovariance matrix (Dimension: nvar * nvar)
modeCalculation Options
Remarks
: Matrix 'mat' should be dimensioned and initialized beforehand

Reimplemented in CovLMGradient, CovLMCTapering, CovLMCConvolution, CovLMCAnamorphosis, CovAniso, and ACovAnisoList.

◆ evalAverageDbToDb()

double ACov::evalAverageDbToDb ( const Db db1,
const Db db2,
int  ivar = 0,
int  jvar = 0,
double  eps = 0.,
int  seed = 434132,
const CovCalcMode mode = nullptr 
) const

Calculate the (weighted) average Covariance between samples of two Dbs, for a pair of variables

Parameters
db1Pointer to the first Db
db2Pointer to the second Db
ivarRank of the first variables
jvarRank of the second variable
epsEpsilon used for randomization in calculation of CVV (optional)
seedSeed for the randomization
modeCovCalcMode structure
Returns

◆ evalAverageIncrToIncr()

double ACov::evalAverageIncrToIncr ( const VectorVectorDouble d1,
const VectorVectorDouble d2,
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const

◆ evalAveragePointToDb()

double ACov::evalAveragePointToDb ( const SpacePoint p1,
const Db db2,
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const

Calculate the (weighted) average Covariance between a point and a Db for a pair of variables

Parameters
p1Point location
db2Pointer to the second Db
ivarRank of the first variables
jvarRank of the second variable
modeCovCalcMode structure
Returns

◆ evalCovMatrix()

MatrixRectangular ACov::evalCovMatrix ( 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 
)

Establish the covariance matrix between two Dbs Takes into account selection and heterotopy

Returns
Dense matrix containing the covariance matrix
Parameters
[in]db1First Db
[in]db2Second Db (= db1 if absent)
[in]ivar0Rank of the first variable (-1 for all variables)
[in]jvar0Rank of the second variable (-1 for all variables)
[in]nbgh1Vector of indices of active samples in db1 (optional)
[in]nbgh2Vector of indices of active samples in db2 (optional)
[in]modeCovCalcMode structure
Remarks
If a Db does not contain any Z-variable defined, the covariance
cannot treat possible heterotopy and therefore uses all samples
The returned matrix if dimension to nrows * ncols where
each term is the product of the number of active samples
by the number of samples where the variable is defined
Note
'dbin' and 'dbout' cannot be made 'const' as they can be updated
due to the presence of 'nostat'

◆ evalCovMatrixSparse()

MatrixSparse * ACov::evalCovMatrixSparse ( 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,
double  eps = EPSILON3 
)

Establish the covariance matrix between two Dbs where samples are selected by ranks The output is stored in a Sparse Matrix

Returns
Sparse matrix containing the covariance matrix
Parameters
[in]db1First Db
[in]db2Second Db
[in]ivar0Rank of the first variable (-1: all variables)
[in]jvar0Rank of the second variable (-1: all variables)
[in]nbgh1Array giving ranks of selected samples (optional)
[in]nbgh2Array giving ranks of selected samples (optional)
[in]modeCovCalcMode structure
[in]epsTolerance for discarding a covariance value
Remarks
The covariance matrix (returned) must be freed by calling routine
The covariance matrix is established for the first variable
and returned as a covariance
As the ranks are used, no test is performed on any selection
but only ranks positive or null are considered

◆ evalCovMatrixSymmetric()

MatrixSquareSymmetric ACov::evalCovMatrixSymmetric ( const Db db1,
int  ivar0,
const VectorInt nbgh1,
const CovCalcMode mode 
)

Establish the covariance matrix within a Db Takes into account selection and heterotopy This method takes advantage of calculating covariance between a Db and itself

Returns
Dense matrix containing the covariance matrix
Parameters
[in]db1First Db
[in]ivar0Rank of the first variable (-1 for all variables)
[in]nbgh1Vector of indices of active samples in db1 (optional)
[in]modeCovCalcMode structure
Remarks
If a Db does not contain any Z-variable defined, the covariance
cannot treat possible heterotopy and therefore uses all samples
The returned matrix if dimension to nrows * ncols where
each term is the product of the number of active samples
by the number of samples where the variable is defined

◆ evalCovOnSphere()

virtual double ACov::evalCovOnSphere ( double  alpha,
int  degree = 50,
bool  flagScaleDistance = false,
const CovCalcMode mode = nullptr 
) const
inlinevirtual

Reimplemented in CovAniso.

◆ evalCvv()

double ACov::evalCvv ( const VectorDouble ext,
const VectorInt ndisc,
const VectorDouble angles = VectorDouble(),
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const

Average covariance over a block

Parameters
extVector of Block extensions
ndiscVector of Block discretization
anglesVector of rotation angles
ivarRank of the first variable
jvarRank of the second variable
modeCovCalcMode structure
Returns

◆ evalCvvM()

MatrixSquareGeneral ACov::evalCvvM ( const VectorDouble ext,
const VectorInt ndisc,
const VectorDouble angles = VectorDouble(),
const CovCalcMode mode = nullptr 
) const

◆ evalCvvShift()

double ACov::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

Average covariance between a block and the same block shifted

Parameters
extVector of Block extensions
ndiscVector of Block discretization
anglesVector of rotation angles
shiftShift between the two blocks
ivarRank of the first variable
jvarRank of the second variable
modeCovCalcMode structure
Returns

◆ evalCxv() [1/2]

double ACov::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

◆ evalCxv() [2/2]

double ACov::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

Average covariance over a block

Parameters
p1Point location
extVector of Block extensions
ndiscVector of Block discretization
anglesVector of rotation angles
x0Vector for origin of block
ivarRank of the first variable
jvarRank of the second variable
modeCovCalcMode structure
Returns

◆ evalCxvM()

MatrixSquareGeneral ACov::evalCxvM ( const SpacePoint p1,
const VectorDouble ext,
const VectorInt ndisc,
const VectorDouble angles = VectorDouble(),
const VectorDouble x0 = VectorDouble(),
const CovCalcMode mode = nullptr 
) const

◆ evalIsoIvarIpas()

double ACov::evalIsoIvarIpas ( double  step,
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const

Covariance for a given unit global distance (without anisotropy) for a pair of variables and a single step

Parameters
ivarRank of the first variable
jvarRank of the second variable
stepStep value
modeCovCalcMode structure
Returns

TODO : Not true whatever the space

◆ evalIsoIvarNpas()

VectorDouble ACov::evalIsoIvarNpas ( const VectorDouble vec_step,
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const

Covariance for a given unit global distance (without anisotropy) for a pair of variables and a set of steps

Parameters
ivar
jvar
vec_step
mode
Returns

◆ evalIsoNvarIpas()

MatrixSquareGeneral ACov::evalIsoNvarIpas ( double  step,
const CovCalcMode mode = nullptr 
) const

Covariance for a given unit global distance (without anisotropy) for a set of variables and a single step

Parameters
stepStep value
modeCovCalcMode structure
Returns

◆ evalIvarIpas()

double ACov::evalIvarIpas ( double  step,
const VectorDouble dir = VectorDouble(),
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const

Covariance from a given point (center) in a given direction (dir *step)

Parameters
ivarRank of the first variable
jvarRank of the second variable
stepStep value
dirDirection definition
modeCovCalcMode structure
Returns

◆ evalIvarIpasIncr()

double ACov::evalIvarIpasIncr ( const VectorDouble dincr,
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const

◆ evalIvarNpas()

VectorDouble ACov::evalIvarNpas ( const VectorDouble vec_step,
const VectorDouble dir = VectorDouble(),
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const

Covariance vector from a given point (center) in a given direction (dir * steps) for a pair of variables and a set of steps

Parameters
ivarRank of the first variable
jvarRank of the second variable
vec_stepVector of step values
dirDirection definition
modeCovCalcMode structure
Returns

◆ evalMat()

MatrixSquareGeneral ACov::evalMat ( const SpacePoint p1,
const SpacePoint p2,
const CovCalcMode mode = nullptr 
) const

◆ evalMatInPlace()

void ACov::evalMatInPlace ( const SpacePoint p1,
const SpacePoint p2,
MatrixSquareGeneral mat,
const CovCalcMode mode = nullptr 
) const
virtual

Calculate the matrix of covariances between two points (general case)

Calculate the Matrix of covariance between two space points

Parameters
p1Reference of the first space point
p2Reference of the second space point
matCovariance matrix (Dimension: nvar * nvar)
modeCalculation Options
Remarks
: Matrix 'mat' should be dimensioned and initialized beforehand

Reimplemented in CovLMGradient, CovLMCTapering, CovLMCConvolution, CovLMCAnamorphosis, CovAniso, and ACovAnisoList.

◆ evalMatOptimInPlace()

virtual void ACov::evalMatOptimInPlace ( int  icas1,
int  iech1,
int  icas2,
int  iech2,
MatrixSquareGeneral mat,
const CovCalcMode mode = nullptr 
) const
pure virtual

Calculate the matrix of covariances between two points given by indices (optim)

Implemented in CovAniso, and ACovAnisoList.

◆ evalNvarIpas()

MatrixSquareGeneral ACov::evalNvarIpas ( double  step,
const VectorDouble dir = VectorDouble(),
const CovCalcMode mode = nullptr 
) const

Covariance Matrix from a given point (center) in a given direction (dir * step) for a set of variables and a given step

Parameters
stepStep value
dirDirection definition
modeCovCalcMode structure
Returns

◆ evalNvarIpasIncr()

MatrixSquareGeneral ACov::evalNvarIpasIncr ( const VectorDouble dincr,
const CovCalcMode mode = nullptr 
) const

◆ evalPointToDb()

VectorDouble ACov::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

Calculate the Covariance vector between a Point and all the samples of a Db, for a pair of variables

Parameters
p1Point location
db2Pointer to the second Db
ivarRank of the first variables
jvarRank of the second variable
useSelWhen TRUE, the returned vector is reduced to active samples Otherwise, returns TEST for masked samples
nbgh2Vector of indices of active samples in db2 (optional)
modeCovCalcMode structure
Returns

◆ evalPointToDbAsSP()

VectorDouble ACov::evalPointToDbAsSP ( const std::vector< SpacePoint > &  p1s,
const SpacePoint p2,
int  ivar = 0,
int  jvar = 0,
const CovCalcMode mode = nullptr 
) const

◆ evalSpectrum()

virtual double ACov::evalSpectrum ( const VectorDouble freq,
int  ivar,
int  jvar 
) const
inlinevirtual

Reimplemented in CovAniso.

◆ evalSpectrumOnSphere()

virtual VectorDouble ACov::evalSpectrumOnSphere ( int  n,
bool  flagNormDistance = false,
bool  flagCumul = false 
) const
inlinevirtual

Reimplemented in CovAniso.

◆ extensionVariance()

double ACov::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

Variance of Extension of a set of points and the block

Parameters
dbReference Data Base
extVector giving the extensions of the target block
ndiscVector giving the discretization
anglesVector for the rotation angles of the block (optional)
x0Optional origin of the Block
ivarRank of the first variable
jvarRank of the second variable
Returns

◆ getNVariables()

virtual int ACov::getNVariables ( ) const
pure virtual

ACov Interface.

Implemented in CovAniso, and ACovAnisoList.

◆ isIndexable()

virtual bool ACov::isIndexable ( ) const
inlinevirtual

Reimplemented in ACovAnisoList.

◆ isNoStat()

virtual bool ACov::isNoStat ( ) const
inlinevirtual

Reimplemented in CovAniso, and ACovAnisoList.

◆ isOptimEnabled()

virtual bool ACov::isOptimEnabled ( ) const
inlinevirtual

Tell if the use of Optimization is enabled or not.

Reimplemented in CovLMGradient, CovLMCTapering, CovLMCConvolution, and CovLMCAnamorphosis.

◆ manage()

void ACov::manage ( const Db db1,
const Db db2 
) const
inline

◆ operator=()

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

◆ samplingDensityVariance()

double ACov::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

Calculate the Sampling Density Variance

Parameters
dbSet of data points
extBlock extension
ndiscDiscretization
anglesOptional rotation angles for the Block
x0Optional origin of the block
ivarRank of the first variable
jvarRank of the second variable
Returns

◆ setOptimEnabled()

void ACov::setOptimEnabled ( bool  isOptimEnabled)
inline

◆ specificVolume()

double ACov::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

Calculate the Specific Volume

Parameters
dbSet of data points
meanValue of the Mean
extTarget Block extension
ndiscVector of discretization
anglesOptional rotation angle for block
x0Optional origin of the Block
ivarRank of the first variable
jvarRank of the second variable
Returns

◆ specificVolumeFromCoV()

double ACov::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

Derive the Specific volume for a given CoV

Parameters
dbSet of data points
covTarget Coefficient of Variation
meanValue of the Mean
extTarget Block extension
ndiscVector of discretization
anglesOptional rotation angle for block
x0Optional origin of the Block
ivarRank of the first variable
jvarRank of the second variable
Returns

◆ updateCovByPoints()

virtual void ACov::updateCovByPoints ( int  icas1,
int  iech1,
int  icas2,
int  iech2 
)
inlinevirtual

Reimplemented in CovAniso, and ACovAnisoList.


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