#include <SPDE.hpp>
Public Member Functions | |
SPDE (Model *model, const Db *domain, const Db *data=nullptr, const ESPDECalcMode &calcul=ESPDECalcMode::fromKey("SIMUCOND"), const AMesh *mesh=nullptr, int useCholesky=-1, SPDEParam params=SPDEParam(), bool verbose=false, bool showStats=false) | |
SPDE (const SPDE &r)=delete | |
SPDE & | operator= (const SPDE &r)=delete |
virtual | ~SPDE () |
int | compute (Db *dbout, int nbsimu=1, int seed=131351, const NamingConvention &namconv=NamingConvention("spde")) |
double | computeLogDet (int nbsimu=1, int seed=1234) const |
double | computeQuad () const |
double | computeLogLike (int nbsimu=1, int seed=131323) const |
double | computeProfiledLogLike (int nbsimu=1, int seed=131323) const |
VectorDouble | getCoeffs () |
void | setDriftCoeffs (VectorDouble coeffs) |
const PrecisionOpCs * | getPrecisionOpCs (int i=0) const |
const ProjMatrix * | getProjMatrix (int i=0) const |
const PrecisionOpMultiConditional * | getPrecisionKrig () const |
const AMesh * | getMeshingKrig (int i=0) const |
const AMesh * | getMeshingSimu (int i=0) const |
const Db * | getData () const |
Static Public Member Functions | |
static SPDE * | create (Model *model, const Db *domain, const Db *data=nullptr, const ESPDECalcMode &calcul=ESPDECalcMode::fromKey("SIMUCOND"), const AMesh *mesh=nullptr, int useCholesky=-1, SPDEParam params=SPDEParam(), bool verbose=false, bool showStats=false) |
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:
SPDE::SPDE | ( | Model * | model, |
const Db * | domain, | ||
const Db * | data = nullptr , |
||
const ESPDECalcMode & | calcul = ESPDECalcMode::fromKey("SIMUCOND") , |
||
const AMesh * | meshUser = nullptr , |
||
int | useCholesky = -1 , |
||
SPDEParam | params = SPDEParam() , |
||
bool | verbose = false , |
||
bool | showStats = false |
||
) |
The class constructor with the following arguments:
model | This compulsory argument is a LMC of Matern's (or Markov?) basic structures with possibly a nugget effect |
domain | The Db defining the space dimension and spatial limits where the SPDE model is defined |
data | The Db containing the data for conditioning (optional) |
calcul | Option from ESPDECalcMode |
meshUser | The mesh for the discretization of the domain |
useCholesky | Define the choice regarding Cholesky |
params | Set of SPDE parameters |
verbose | Verbose flag |
showStats | Display statistics for Linear Operations (when deleting the class) |
Either Domain or a Mesh can be provided:
The domain or the mesh should have the same spatial reference (ndim, manifold) than the model.
|
delete |
|
virtual |
int SPDE::compute | ( | Db * | dbout, |
int | nbsimu = 1 , |
||
int | seed = 131351 , |
||
const NamingConvention & | namconv = NamingConvention("spde") |
||
) |
double SPDE::computeLogDet | ( | int | nbsimu = 1 , |
int | seed = 1234 |
||
) | const |
double SPDE::computeLogLike | ( | int | nbsimu = 1 , |
int | seed = 131323 |
||
) | const |
double SPDE::computeProfiledLogLike | ( | int | nbsimu = 1 , |
int | seed = 131323 |
||
) | const |
double SPDE::computeQuad | ( | ) | const |
|
static |
VectorDouble SPDE::getCoeffs | ( | ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
void SPDE::setDriftCoeffs | ( | VectorDouble | coeffs | ) |