1.11.1
CCC
 
Loading...
Searching...
No Matches
gstlrn::CorFactorized Class Reference

This class describes the Covariance as a list of elementary covariances defined on sub spaces where the calculation rule is simple: the returned value is the product of each elementary covariance function evaluated between the projection of the two points on the attached subspace. More...

#include <CorFactorized.hpp>

Inheritance diagram for gstlrn::CorFactorized:
gstlrn::ACov gstlrn::ICloneable gstlrn::AStringable gstlrn::ASerializable

Detailed Description

This class describes the Covariance as a list of elementary covariances defined on sub spaces where the calculation rule is simple: the returned value is the product of each elementary covariance function evaluated between the projection of the two points on the attached subspace.

Public Member Functions

 CorFactorized (const CovContext &ctxt=CovContext())
 
 CorFactorized (const CorFactorized &r)
 
CorFactorizedoperator= (const CorFactorized &r)
 
virtual ~CorFactorized ()
 
double eval0 (Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const override
 Interface for ACov.
 
String toString (const AStringFormat *strfmt=nullptr) const override
 Interface for AStringable Interface.
 
Id getNFac () const override
 CorFactorized Interface.
 
virtual void addFactor (const ACov &cov, const MatrixDense &proj)
 
void deleteAllFactors ()
 
const ACovgetCovariance (Id ifac) const
 
MatrixDense getProjection (Id ifac=0) const override
 
bool isValidForSimulation (const ESimuType &simuType) const override
 
SpectrumOnRNsimulateOnRN (Id ns=1000) const override
 
- Public Member Functions inherited from gstlrn::ACov
 ACov (const CovContext &ctxt=CovContext())
 
 ACov (const ACov &r)
 
ACovoperator= (const ACov &r)
 
virtual ~ACov ()
 
String getNFName () const override
 ASerializable Interface.
 
virtual Id getNVar () const
 ACov Interface.
 
virtual bool isIndexable () const
 
bool isNoStat () const
 
const CovContextgetContext () const
 
void setContext (const CovContext &ctxt)
 
void updateFromContext ()
 
virtual void copyCovContext (const CovContext &ctxt)
 
void initFromContext ()
 
CovContext getContextCopy () const
 
double evalCov (const SpacePoint &p1, const SpacePoint &p2, Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 Calculate the covariance between two variables and two points (general case)
 
virtual bool isFactorized () const
 Interface for spectral simulation on RN.
 
virtual double evalSpectrumOnRN (const 1 &freq, Id ivar=0, Id jvar=0) const
 
virtual MatrixDense simulateSpectralOmega (Id ns) const
 
virtual double evalSpectrumRatio (const 1 &freq, Id ivar, Id jvar, const ACov *cov0=nullptr) const
 
virtual evalSpectrumOnSphere (Id n, bool ScaleDistanceByRadius=false, bool flagScale=true) const
 Interface for spectral simulation on the sphere in R3 (S2)
 
virtual double evalCovOnSphere (double alpha, Id degree=50, bool scaleDistanceByRadius=true, const CovCalcMode *mode=nullptr) const
 
 evalCovGrad (const SpacePoint &p1, const SpacePoint &p2, Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr)
 
virtual void updateCovByPoints (Id icas1, Id iech1, Id icas2, Id iech2) const
 
void attachNoStatDb (const Db *db)
 
ASpaceSharedPtr getSpace () const
 
ESpaceType getSpaceType () const
 
virtual bool isConsistent (const ASpace *space) const
 
virtual bool isOptimEnabled () const
 Functions linked to Optimization during Covariance calculations.
 
void optimizationPreProcess (Id mode, const std::vector< SpacePoint > &ps) const
 
SpacePointoptimizationLoadInPlace (Id iech, Id mode, Id rank) const
 
void optimizationPostProcess () const
 
void optimizationSetTarget (SpacePoint &pt) const
 
 eval (const std::vector< SpacePoint > &vec_p1, const std::vector< SpacePoint > &vec_p2, Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 Functions for evaluating Covariances.
 
MatrixSymmetric eval0Mat (const CovCalcMode *mode=nullptr) const
 
MatrixSymmetric evalCovMat0 (const Db *db, Id 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, Id ivar0=-1, Id jvar0=-1, const 1 &nbgh1=1(), const 1 &nbgh2=1(), const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
MatrixSymmetric evalCovMatSym (const Db *db1, const 1 &nbgh1=1(), Id ivar0=-1, const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
MatrixSparseevalCovMatSparse (const Db *db1_arg, const Db *db2_arg=nullptr, Id ivar0=-1, Id jvar0=-1, const 1 &nbgh1=1(), const 1 &nbgh2=1(), const CovCalcMode *mode=nullptr, bool cleanOptim=true, double eps=EPSILON3) const
 
Id evalCovMat0InPlace (MatrixSymmetric &mat, const Db *db, Id iech, const KrigOpt &krigopt=KrigOpt()) const
 
Id evalCovMatInPlace (MatrixDense &mat, const Db *db1, const Db *db2=nullptr, Id ivar0=-1, Id jvar0=-1, const 1 &nbgh1=1(), const 1 &nbgh2=1(), const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
Id evalCovMatSymInPlace (MatrixSymmetric &mat, const Db *db1, const 1 &nbgh1=1(), Id ivar0=-1, const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
Id evalCovMatInPlaceFromIdx (MatrixDense &mat, const Db *db1, const Db *db2, const 1 &index1, const 1 &index2, const 1 &nbgh2=1(), const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
Id evalCovMatSymInPlaceFromIdx (MatrixSymmetric &mat, const Db *db1, const 1 &index1, const CovCalcMode *mode=nullptr, bool cleanOptim=true) const
 
Id evalCovMatRHSInPlaceFromIdx (MatrixDense &mat, const Db *db1, const Db *db2, const 1 &index1, const Id iech2=-1, const KrigOpt &krigopt=KrigOpt(), bool cleanOptim=true) const
 
Id evalCovVecRHSInPlace (vect vect, const RankHandler &rank, Id iech2, const KrigOpt &krigopt, SpacePoint &pin, SpacePoint &pout, 1 &tabwork, double lambda=1., const ECalcMember &calcMember=ECalcMember::RHS) const
 
Id evalCovMatOptimInPlace (MatrixDense &mat, const Db *dbin, const RankHandler &rankhandler, const KrigOpt &krigopt, const ECalcMember &calcMember, 1 &tabwork, double lambda=1.) const
 
virtual Id addEvalCovVecRHSInPlace (vect vect, const 1 &index1, const Id iech2, const KrigOpt &krigopt, SpacePoint &pin, SpacePoint &pout, 1 &tabwork, double lambda=1., const ECalcMember &calcMember=ECalcMember::RHS) const
 
void eval0CovMatBiPointInPlace (MatrixSymmetric &mat, const CovCalcMode *mode) const
 
double evalIvarIpas (double step, const 1 &dir=1(), Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
double evalIvarIpasIncr (const 1 &dincr, Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
 evalIvarNlag (const 1 &vec_step, const 1 &dir=1(), Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixSquare evalNvarIpas (double step, const 1 &dir=1(), const CovCalcMode *mode=nullptr) const
 
MatrixSquare evalNvarIpasIncr (const 1 &dincr, const CovCalcMode *mode=nullptr) const
 
double evalIsoIvarIpas (double step, Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
 evalIsoIvarNlag (const 1 &vec_step, Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixSquare evalIsoNvarIpas (double step, const CovCalcMode *mode=nullptr) const
 
double evalCvv (const 1 &ext, const 1 &ndisc, const 1 &angles=1(), Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
double evalCvvShift (const 1 &ext, const 1 &ndisc, const 1 &shift, const 1 &angles=1(), Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixSquare evalCvvM (const 1 &ext, const 1 &ndisc, const 1 &angles=1(), const CovCalcMode *mode=nullptr) const
 
double evalCxv (const SpacePoint &p1, const 1 &ext, const 1 &ndisc, const 1 &angles=1(), const 1 &x0=1(), Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
double evalCxv (const Db *db, const 1 &ext, const 1 &ndisc, const 1 &angles=1(), const 1 &x0=1(), Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
MatrixSquare evalCxvM (const SpacePoint &p1, const 1 &ext, const 1 &ndisc, const 1 &angles=1(), const 1 &x0=1(), const CovCalcMode *mode=nullptr) const
 
void evalPointToDb (1 &values, const SpacePoint &p1, const Db *db2, Id ivar=0, Id jvar=0, bool useSel=true, const 1 &nbgh2=1(), const CovCalcMode *mode=nullptr) const
 
void evalPointToDbAsSP (1 &values, const std::vector< SpacePoint > &p1s, const SpacePoint &p2, Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
double evalAverageDbToDb (const Db *db1, const Db *db2, Id ivar=0, Id jvar=0, double eps=0., Id seed=434132, const CovCalcMode *mode=nullptr) const
 
double evalAverageIncrToIncr (const 1 &d1, const 1 &d2, Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
double evalAveragePointToDb (const SpacePoint &p1, const Db *db2, Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
double extensionVariance (const Db *db, const 1 &ext, const 1 &ndisc, const 1 &angles=1(), const 1 &x0=1(), Id ivar=0, Id jvar=0) const
 
double samplingDensityVariance (const Db *db, const 1 &ext, const 1 &ndisc, const 1 &angles=1(), const 1 &x0=1(), Id ivar=0, Id jvar=0) const
 
double specificVolume (const Db *db, double mean, const 1 &ext, const 1 &ndisc, const 1 &angles=1(), const 1 &x0=1(), Id ivar=0, Id jvar=0) const
 
double coefficientOfVariation (const Db *db, double volume, double mean, const 1 &ext, const 1 &ndisc, const 1 &angles=1(), const 1 &x0=1(), Id ivar=0, Id jvar=0) const
 
double specificVolumeFromCoV (Db *db, double cov, double mean, const 1 &ext, const 1 &ndisc, const 1 &angles=1(), const 1 &x0=1(), Id ivar=0, Id jvar=0) const
 
double evaluateOneGeneric (const CovInternal *covint, const 1 &d1=1(), double weight=1., const CovCalcMode *mode=nullptr) const
 
double calculateStDev (Db *db1, Id iech1, Db *db2, Id iech2, bool verbose=false, double factor=1., const CovCalcMode *mode=nullptr) const
 
void evaluateMatInPlace (const CovInternal *covint, const 1 &d1, MatrixSquare &covtab, bool flag_init=false, double weight=1., const CovCalcMode *mode=nullptr) const
 
 evaluateFromDb (Db *db, Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
double evaluateOneIncr (double hh, const 1 &codir=1(), Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr) const
 
 sample (const 1 &h, const 1 &codir=1(), Id ivar=0, Id jvar=0, const CovCalcMode *mode=nullptr, const CovInternal *covint=nullptr) const
 
 sampleUnitary (const 1 &hh, Id ivar=0, Id jvar=0, 1 codir=1(), const CovCalcMode *mode=nullptr) const
 
 envelop (const 1 &hh, Id ivar=0, Id jvar=0, Id isign=1, 1 codir=1(), const CovCalcMode *mode=nullptr) const
 
Id 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 (Id imesh, bool aniso=true) const
 
virtual double getValue (const EConsElem &econs, Id iv1, Id iv2) const
 
void makeStationary ()
 
virtual Id makeElemNoStat (const EConsElem &econs, Id iv1, Id 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
 
 informCoords (const 1 &coords, const EConsElem &econs, Id iv1=0, Id iv2=0) const
 
void informDbIn (const Db *dbin) const
 
void informDbOut (const Db *dbout) const
 
virtual Id getNDim (Id 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)
 
virtual void appendParams (ListParams &listParams, std::vector< covmaptype > *gradFuncs=nullptr)
 
virtual void updateCov ()
 
virtual void initParams (const MatrixSymmetric &vars, double href=1.)
 
- Public Member Functions inherited from gstlrn::ICloneable
 ICloneable ()
 
virtual ~ICloneable ()
 
virtual ICloneableclone () const =0
 
std::shared_ptr< ICloneablecloneShared () const
 
std::unique_ptr< ICloneablecloneUnique () const
 
- Public Member Functions inherited from gstlrn::AStringable
 AStringable ()
 
 AStringable (const AStringable &r)
 
AStringableoperator= (const AStringable &r)
 
virtual ~AStringable ()
 
virtual void display (const AStringFormat *strfmt=nullptr) const final
 
virtual void display (Id level) const final
 
void printConcreteClassName () const
 
- Public Member Functions inherited from gstlrn::ASerializable
 ASerializable ()
 
 ASerializable (const ASerializable &r)=default
 
ASerializableoperator= (const ASerializable &r)=default
 
 ASerializable (ASerializable &&r) noexcept=default
 
ASerializableoperator= (ASerializable &&r) noexcept=default
 
virtual ~ASerializable ()=default
 
bool dumpToNF (const String &NFFilename, const EFormatNF &format=EFormatNF::fromKey("DEFAULT")) const
 Dump the contents of an object into an Output File using a given Output NF Format.
 
void setDefaultFormatNF (const EFormatNF &format)
 

Static Public Member Functions

static CorFactorizedcreate (const CovContext &ctxt)
 ICloneable Interface.
 
- Static Public Member Functions inherited from gstlrn::ACov
static void gofDisplay (double gof, bool byValue=true, const 1 &thresholds={2., 5., 10., 100})
 
- Static Public Member Functions inherited from gstlrn::ASerializable
static String buildFileName (Id status, const String &filename, bool ensureDirExist=false)
 
static String getFileIdentity (const String &filename, bool verbose=false)
 
static void setPrefixName (const String &prefixName)
 
static void unsetPrefixName ()
 
static const StringgetPrefixName ()
 

Constructor & Destructor Documentation

◆ CorFactorized() [1/2]

gstlrn::CorFactorized::CorFactorized ( const CovContext ctxt = CovContext())

◆ CorFactorized() [2/2]

gstlrn::CorFactorized::CorFactorized ( const CorFactorized r)

◆ ~CorFactorized()

gstlrn::CorFactorized::~CorFactorized ( )
virtual

Member Function Documentation

◆ addFactor()

void gstlrn::CorFactorized::addFactor ( const ACov cov,
const MatrixDense proj 
)
virtual

◆ create()

CorFactorized * gstlrn::CorFactorized::create ( const CovContext ctxt)
static

ICloneable Interface.

◆ deleteAllFactors()

void gstlrn::CorFactorized::deleteAllFactors ( )

◆ eval0()

double gstlrn::CorFactorized::eval0 ( Id  ivar = 0,
Id  jvar = 0,
const CovCalcMode mode = nullptr 
) const
overridevirtual

Interface for ACov.

Reimplemented from gstlrn::ACov.

◆ getCovariance()

const ACov * gstlrn::CorFactorized::getCovariance ( Id  ifac) const

◆ getNFac()

Id gstlrn::CorFactorized::getNFac ( ) const
overridevirtual

CorFactorized Interface.

Reimplemented from gstlrn::ACov.

◆ getProjection()

MatrixDense gstlrn::CorFactorized::getProjection ( Id  ifac = 0) const
overridevirtual

Reimplemented from gstlrn::ACov.

◆ isValidForSimulation()

bool gstlrn::CorFactorized::isValidForSimulation ( const ESimuType &  simuType) const
overridevirtual

Reimplemented from gstlrn::ACov.

◆ operator=()

CorFactorized & gstlrn::CorFactorized::operator= ( const CorFactorized r)

◆ simulateOnRN()

SpectrumOnRN * gstlrn::CorFactorized::simulateOnRN ( Id  ns = 1000) const
overridevirtual

Reimplemented from gstlrn::ACov.

◆ toString()

String gstlrn::CorFactorized::toString ( const AStringFormat strfmt = nullptr) const
overridevirtual

Interface for AStringable Interface.

Reimplemented from gstlrn::AStringable.


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