1.8.0
CCC
 
Loading...
Searching...
No Matches
gstlrn::SPDE Class Reference

#include <SPDE.hpp>

Detailed Description

The SPDE class provides the SPDE implementation of a univariate model defined by the sum of a nugget effect and Matern's models. Its main objectives are:

  • point kriging with or without linear drifts (SK, OK, KED, UK)
  • point simulations, conditional or non conditional
  • evaluation of the log likelihood of the model, in order to estimate the parameter using maximum likelihood

Public Member Functions

 SPDE (const Db *dbin, Model *model, bool flagKrig, bool flagSimu, Id useCholesky=-1, const SPDEParam &params=SPDEParam(), const Db *domain=nullptr)
 
 SPDE (const SPDE &r)=delete
 
SPDEoperator= (const SPDE &r)=delete
 
virtual ~SPDE ()
 
bool getFlagCholesky () const
 
bool getFlagKrig () const
 
bool getFlagSimu () const
 
const VectorMeshesgetMeshesK () const
 
const VectorMeshesgetMeshesS () const
 
const ProjMultiMatrixgetAinK () const
 
const ProjMultiMatrixgetAinS () const
 
const ProjMultiMatrixgetAoutK () const
 
const ProjMultiMatrixgetAoutS () const
 
 getDriftCoefficients () const
 
Id getSeed () const
 
Id getNMC () const
 
const SPDEOpgetSPDEOp () const
 
const MatrixSparsegetQ () const
 
const MatrixSparsegetProj () const
 
const PrecisionOpMultigetPrecisionKrig () const
 
const MatrixSparsegetInvNoise () const
 
Id defineSpdeOperator (bool verbose=false)
 
Id centerDataByDriftInPlace (1 &Z, bool verbose=false)
 
void uncenterResultByDriftInPlace (1 &result) const
 
void addNuggetToResult (1 &result) const
 Simulate nugget component and add it to one multivariate simulation.
 
Id setMeshes (bool flagForKrig, const VectorMeshes *meshes)
 
Id setProjIn (bool flagForKrig, const ProjMultiMatrix *proj)
 
Id setInvNoise (const ASimulable *invnoise)
 
Id setDbAndProjOut (Db *dbout, const ProjMultiMatrix *projK=nullptr, const ProjMultiMatrix *projS=nullptr, bool flagApply=true, bool verbose=false)
 Define the output Db as well as specific Projection matrices (optional)
 
Id makeReady (bool verbose=false)
 
 getData (bool flagCenter, bool verbose=false)
 
 kriging (const 1 &Z) const
 
 stdev (const 1 &Z) const
 
 simulate (const 1 &Z) const
 
double loglikelihood (const 1 &Z, bool verbose=false) const
 

Constructor & Destructor Documentation

◆ SPDE() [1/2]

gstlrn::SPDE::SPDE ( const Db dbin,
Model model,
bool  flagKrig,
bool  flagSimu,
Id  useCholesky = -1,
const SPDEParam params = SPDEParam(),
const Db domain = nullptr 
)

The class constructor with the following arguments:

Parameters
dbinInput file (nullptr for non conditional simulation)
modelThis compulsory argument is a LMC of Matern's (or Markov?) basic structures with possibly a nugget effect
flagKrigTRUE for Kriging (or conditional simulation)
flagSimuTRUE for simulations (either conditional or non-conditional)
useCholeskyDefine the choice regarding Cholesky
paramsSet of SPDE parameters
domainDb used to define the domain for meshing (in union with dbin)

◆ SPDE() [2/2]

gstlrn::SPDE::SPDE ( const SPDE r)
delete

◆ ~SPDE()

gstlrn::SPDE::~SPDE ( )
virtual

Member Function Documentation

◆ addNuggetToResult()

void gstlrn::SPDE::addNuggetToResult ( 1 &  result) const

Simulate nugget component and add it to one multivariate simulation.

Parameters
resultThe array containing ONE multivariate simulation
Note
The nugget component is added to each variable with its correct variance
but not accounting for the dependency across different variables.

◆ centerDataByDriftInPlace()

Id gstlrn::SPDE::centerDataByDriftInPlace ( 1 &  Z,
bool  verbose = false 
)

◆ defineSpdeOperator()

Id gstlrn::SPDE::defineSpdeOperator ( bool  verbose = false)

◆ getAinK()

const ProjMultiMatrix * gstlrn::SPDE::getAinK ( ) const
inline

◆ getAinS()

const ProjMultiMatrix * gstlrn::SPDE::getAinS ( ) const
inline

◆ getAoutK()

const ProjMultiMatrix * gstlrn::SPDE::getAoutK ( ) const
inline

◆ getAoutS()

const ProjMultiMatrix * gstlrn::SPDE::getAoutS ( ) const
inline

◆ getData()

gstlrn::SPDE::getData ( bool  flagCenter,
bool  verbose = false 
)

◆ getDriftCoefficients()

gstlrn::SPDE::getDriftCoefficients ( ) const
inline

◆ getFlagCholesky()

bool gstlrn::SPDE::getFlagCholesky ( ) const
inline

◆ getFlagKrig()

bool gstlrn::SPDE::getFlagKrig ( ) const
inline

◆ getFlagSimu()

bool gstlrn::SPDE::getFlagSimu ( ) const
inline

◆ getInvNoise()

const MatrixSparse * gstlrn::SPDE::getInvNoise ( ) const

◆ getMeshesK()

const VectorMeshes & gstlrn::SPDE::getMeshesK ( ) const
inline

◆ getMeshesS()

const VectorMeshes & gstlrn::SPDE::getMeshesS ( ) const
inline

◆ getNMC()

Id gstlrn::SPDE::getNMC ( ) const
inline

◆ getPrecisionKrig()

const PrecisionOpMulti * gstlrn::SPDE::getPrecisionKrig ( ) const

◆ getProj()

const MatrixSparse * gstlrn::SPDE::getProj ( ) const

◆ getQ()

const MatrixSparse * gstlrn::SPDE::getQ ( ) const

◆ getSeed()

Id gstlrn::SPDE::getSeed ( ) const
inline

◆ getSPDEOp()

const SPDEOp * gstlrn::SPDE::getSPDEOp ( ) const
inline

◆ kriging()

gstlrn::SPDE::kriging ( const 1 &  Z) const

◆ loglikelihood()

double gstlrn::SPDE::loglikelihood ( const 1 &  Z,
bool  verbose = false 
) const

◆ makeReady()

Id gstlrn::SPDE::makeReady ( bool  verbose = false)

◆ operator=()

SPDE & gstlrn::SPDE::operator= ( const SPDE r)
delete

◆ setDbAndProjOut()

Id gstlrn::SPDE::setDbAndProjOut ( Db dbout,
const ProjMultiMatrix projK = nullptr,
const ProjMultiMatrix projS = nullptr,
bool  flagApply = true,
bool  verbose = false 
)

Define the output Db as well as specific Projection matrices (optional)

Parameters
dboutPointer of the output 'Db'
projKProjection matrix for Kriging (optional)
projSProjection matrix for Simulations (optional)
flagApplysee Notes
verboseVerbose flag
Returns
Id
Note
If 'dbout' is not defined, this function does nothing
'flagApply' is set to TRUE when this method is used on a 'Ready' SPDE system for defining a new 'dbout' for example.

◆ setInvNoise()

Id gstlrn::SPDE::setInvNoise ( const ASimulable invnoise)

◆ setMeshes()

Id gstlrn::SPDE::setMeshes ( bool  flagForKrig,
const VectorMeshes meshes 
)

◆ setProjIn()

Id gstlrn::SPDE::setProjIn ( bool  flagForKrig,
const ProjMultiMatrix proj 
)

◆ simulate()

gstlrn::SPDE::simulate ( const 1 &  Z) const

◆ stdev()

gstlrn::SPDE::stdev ( const 1 &  Z) const

◆ uncenterResultByDriftInPlace()

void gstlrn::SPDE::uncenterResultByDriftInPlace ( 1 &  result) const

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