gstlearn
1.0.0
CCC
|
TODO : Create AModel which inherits from ACov ? More...
#include <Model.hpp>
Public Member Functions | |
Model (const CovContext &ctxt=CovContext()) | |
Model (int nvar, int ndim=2) | |
Model (const Model &m) | |
Model & | operator= (const Model &m) |
virtual | ~Model () |
virtual String | toString (const AStringFormat *strfmt=nullptr) const override |
ICloneable interface. More... | |
int | resetFromDb (const Db *db) |
void | setCovList (const ACovAnisoList *covalist) |
void | addCov (const CovAniso *cov) |
void | addCovFromParam (const ECov &type, double range=0., double sill=1., double param=1., const VectorDouble &ranges=VectorDouble(), const VectorDouble &sills=VectorDouble(), const VectorDouble &angles=VectorDouble(), bool flagRange=true) |
void | delCova (int icov) |
void | delAllCovas () |
void | setDriftList (const DriftList *driftlist) |
void | setDriftIRF (int order=0, int nfex=0) |
void | addDrift (const ADrift *drift) |
void | setDrifts (const VectorString &driftSymbols) |
void | delDrift (int rank) |
void | delAllDrifts () |
int | setAnam (const AAnam *anam, const VectorInt &strcnt=VectorInt()) |
int | unsetAnam () |
bool | isFlagGradient () const |
bool | isFlagGradientNumerical () const |
bool | isFlagGradientFunctional () const |
bool | isFlagLinked () const |
CovAniso | extractCova (int icov) const |
void | switchToGradient () |
const ACovAnisoList * | getCovAnisoList () const |
TODO : to be removed (encapsulation of ACovAnisoList) More... | |
const CovAniso * | getCova (unsigned int icov) const |
CovAniso * | getCova (unsigned int icov) |
int | getCovaNumber () const |
const ECov & | getCovaType (int icov) const |
const MatrixSquareSymmetric | getSillValues (int icov) const |
double | getSill (int icov, int ivar, int jvar) const |
double | getParam (int icov) const |
bool | isCovaFiltered (int icov) const |
bool | isStationary () const |
String | getCovName (int icov) const |
int | getGradParamNumber (int icov) const |
double | getTotalSill (int ivar, int jvar) const |
double | getBallRadius () const |
const AnamHermite * | getAnamHermite () const |
double | getMaximumDistance () const |
int | getCovaMinIRFOrder () const |
bool | hasAnam () const |
const AAnam * | getAnam () const |
bool | isChangeSupportDefined () const |
void | normalize (double sill) |
bool | hasNugget () const |
VectorInt | getActiveCovList () const |
VectorInt | getAllActiveCovList () const |
void | setTapeRange (double range) |
void | setIsOptimEnabled (bool flagOptim) |
bool | isOptimEnabled () const |
double | eval0 (int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const |
MatrixSquareGeneral | eval0Nvar (const CovCalcMode *mode=nullptr) const |
void | eval0MatInPlace (MatrixSquareGeneral &mat, const CovCalcMode *mode=nullptr) const |
double | eval (const SpacePoint &p1, const SpacePoint &p2, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) const |
MatrixSquareGeneral | evalNvarIpas (double step, const VectorDouble &dir=VectorDouble(), const VectorDouble ¢er=VectorDouble(), const CovCalcMode *mode=nullptr) const |
MatrixSquareGeneral | evalMat (const SpacePoint &p1, const SpacePoint &p2, const CovCalcMode *mode=nullptr) const |
void | evalMatInPlace (const SpacePoint &p1, const SpacePoint &p2, MatrixSquareGeneral &mat, const CovCalcMode *mode=nullptr) const |
MatrixSquareGeneral | evalNvarIpasIncr (const VectorDouble &dincr, const CovCalcMode *mode=nullptr) const |
VectorDouble | evalIvarNpas (const VectorDouble &vec_step, const VectorDouble &dir=VectorDouble(), int ivar=0, int jvar=0, const VectorDouble ¢er=VectorDouble(), const CovCalcMode *mode=nullptr) const |
double | evalIvarIpas (double step, const VectorDouble &dir=VectorDouble(), int ivar=0, int jvar=0, const VectorDouble ¢er=VectorDouble(), 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) |
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) |
MatrixSquareGeneral | evalCxvM (const SpacePoint &p1, const VectorDouble &ext, const VectorInt &ndisc, const VectorDouble &angles=VectorDouble(), const VectorDouble &x0=VectorDouble(), const CovCalcMode *mode=nullptr) |
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) |
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, 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) |
MatrixRectangular | evalCovMatrix (const Db *db1, const Db *db2=nullptr, int ivar=0, int jvar=0, const VectorInt &nbgh1=VectorInt(), const VectorInt &nbgh2=VectorInt(), const CovCalcMode *mode=nullptr) |
void | evalMatOptimInPlace (int iech1, int iech2, MatrixSquareGeneral &mat, const CovCalcMode *mode=nullptr) const |
VectorVectorDouble | evalCovMatrixOptim (const Db *db1, const Db *db2=nullptr, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) |
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) |
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 | evalZAndGradients (const SpacePoint &p1, const SpacePoint &p2, double &covVal, VectorDouble &covGp, VectorDouble &covGG, const CovCalcMode *mode=nullptr, bool flagGrad=false) const |
void | evalZAndGradients (const VectorDouble &vec, double &covVal, VectorDouble &covGp, VectorDouble &covGG, const CovCalcMode *mode=nullptr, bool flagGrad=false) const |
void | setSill (int icov, int ivar, int jvar, double value) |
void | setCovaFiltered (int icov, bool filtered) |
void | setActiveFactor (int iclass) |
int | getActiveFactor () const |
int | getAnamNClass () const |
const DriftList * | getDriftList () const |
TODO : to be removed (encapsulation of DriftList) More... | |
const ADrift * | getDrift (int il) const |
ADrift * | getDrift (int il) |
int | getDriftNumber () const |
int | getExternalDriftNumber () const |
int | getRankFext (int il) const |
const VectorDouble & | getDriftCoefs () const |
double | getDriftCoef (int ivar, int il, int ib) const |
int | getDriftEquationNumber () const |
bool | isDriftFiltered (unsigned int il) const |
bool | isDriftDefined (const VectorInt &powers, int rank_fex=0) const |
bool | isDriftDifferentDefined (const VectorInt &powers, int rank_fex=-1) const |
int | getDriftMaxIRFOrder (void) const |
void | resetDriftCoef () |
void | setDriftCoef (int ivar, int il, int ib, double coeff) |
void | setDriftFiltered (int il, bool filtered) |
VectorDouble | getDriftByColumn (const Db *db, int ib, bool useSel=true) |
VectorVectorDouble | getDrifts (const Db *db, bool useSel=true) |
double | evalDrift (const Db *db, int iech, int il, const ECalcMember &member=ECalcMember::fromKey("LHS")) const |
VectorDouble | evalDriftVec (const Db *db, int iech, const ECalcMember &member=ECalcMember::fromKey("LHS")) const |
VectorDouble | evalDrifts (const Db *db, const VectorDouble &coeffs, int ivar=0, bool useSel=false) const |
void | evalDriftVecInPlace (const Db *db, int iech, const ECalcMember &member, VectorDouble &drftab) const |
double | _evalDriftCoef (const Db *db, int iech, int ivar, const double *coef) const |
const CovContext & | getContext () const |
TODO : to be removed (encapsulation of Context) More... | |
const VectorDouble & | getMeans () const |
double | getMean (int ivar) const |
const VectorDouble & | getCovar0s () const |
double | getCovar0 (int ivar, int jvar) const |
double | getField () const |
int | getDimensionNumber () const |
void | setMeans (const VectorDouble &mean) |
void | setMean (double mean, int ivar=0) |
void | setCovar0s (const VectorDouble &covar0) |
void | setCovar0 (int ivar, int jvar, double covar0) |
void | setField (double field) |
const ANoStat * | getNoStat () const |
Shortcut for Non-stationary. More... | |
int | addNoStat (const ANoStat *anostat) |
int | isNoStat () const |
int | getNoStatElemNumber () const |
int | addNoStatElem (int igrf, int icov, const EConsElem &type, int iv1, int iv2) |
int | addNoStatElems (const VectorString &codes) |
CovParamId | getCovParamId (int ipar) const |
const EModelProperty & | getCovMode () const |
Model * | duplicate () const |
Model * | reduce (const VectorInt &validVars) const |
int | getVariableNumber () const |
int | hasExternalCov () const |
MatrixSquareSymmetric | covMatrixM (Db *db1, Db *db2=nullptr, int ivar=-1, int jvar=-1, const CovCalcMode *mode=nullptr) |
VectorDouble | covMatrixV (Db *db1, Db *db2=nullptr, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) |
void | covMatrix (VectorDouble &covmat, Db *db1, Db *db2=nullptr, int ivar=0, int jvar=0, const CovCalcMode *mode=nullptr) |
VectorDouble | sample (const VectorDouble &hh, int ivar=0, int jvar=0, VectorDouble codir=VectorDouble(), const CovCalcMode *mode=nullptr) |
VectorDouble | sampleUnitary (const VectorDouble &hh, int ivar=0, int jvar=0, VectorDouble codir=VectorDouble(), const CovCalcMode *mode=nullptr) |
VectorDouble | envelop (const VectorDouble &hh, int ivar=0, int jvar=0, int isign=1, VectorDouble codir=VectorDouble(), const CovCalcMode *mode=nullptr) |
int | fitFromCovIndices (Vario *vario, const VectorECov &types=ECov::fromKeys({"EXPONENTIAL"}), const Constraints &constraints=Constraints(), Option_VarioFit optvar=Option_VarioFit(), Option_AutoFit mauto=Option_AutoFit(), bool verbose=false) |
int | fit (Vario *vario, const VectorECov &types=ECov::fromKeys({"SPHERICAL"}), const Constraints &constraints=Constraints(), Option_VarioFit optvar=Option_VarioFit(), Option_AutoFit mauto=Option_AutoFit(), bool verbose=false) |
int | fitFromVMap (DbGrid *dbmap, const VectorECov &types=ECov::fromKeys({"SPHERICAL"}), const Constraints &constraints=Constraints(), Option_VarioFit optvar=Option_VarioFit(), Option_AutoFit mauto=Option_AutoFit(), bool verbose=false) |
double | gofToVario (const Vario *vario, bool verbose=true) |
void | gofDisplay (double gof, bool byValue=true, const VectorDouble &thresholds={2., 5., 10., 100}) |
VectorECov | initCovList (const VectorInt &covranks) |
bool | isValid () const |
Public Member Functions inherited from AStringable | |
AStringable () | |
AStringable (const AStringable &r) | |
AStringable & | operator= (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 ASerializable | |
ASerializable () | |
ASerializable (const ASerializable &r) | |
ASerializable & | operator= (const ASerializable &r) |
virtual | ~ASerializable () |
bool | deserialize (std::istream &is, bool verbose=true) |
bool | serialize (std::ostream &os, bool verbose=true) const |
bool | dumpToNF (const String &neutralFilename, bool verbose=false) const |
Public Member Functions inherited from ICloneable | |
ICloneable () | |
virtual | ~ICloneable () |
virtual ICloneable * | clone () const =0 |
Static Public Member Functions | |
static Model * | create (const CovContext &ctxt=CovContext()) |
static Model * | createFromEnvironment (int nvar, int ndim=2) |
static Model * | createFromParam (const ECov &type=ECov::fromKey("NUGGET"), double range=1., double sill=1., double param=1., const VectorDouble &ranges=VectorDouble(), const VectorDouble &sills=VectorDouble(), const VectorDouble &angles=VectorDouble(), const ASpace *space=nullptr, bool flagRange=true) |
static Model * | createFromDb (const Db *db) |
static Model * | createFromNF (const String &neutralFilename, bool verbose=true) |
Static Public Member Functions inherited from ASerializable | |
static String | buildFileName (int status, const String &filename, bool ensureDirExist=false) |
static String | getHomeDirectory (const String &sub="") |
static String | getWorkingDirectory () |
static String | getTestData (const String &subdir, const String &filename) |
static String | getFileIdentity (const String &filename, bool verbose=false) |
static void | setContainerName (bool useDefault, const String &containerName="", bool verbose=false) |
static void | unsetContainerName () |
static void | setPrefixName (const String &prefixName) |
static void | unsetPrefixName () |
static const String & | getContainerName () |
static const String & | getPrefixName () |
static bool | createDirectory (const String &dir) |
static String | getExecDirectory () |
static String | getDirectory (const String &path) |
Protected Member Functions | |
virtual bool | _deserialize (std::istream &is, bool verbose=false) override |
Interface to ASerializable. More... | |
virtual bool | _serialize (std::ostream &os, bool verbose=false) const override |
String | _getNFName () const override |
const ACovAnisoList * | _castInCovAnisoListConst (int icov=-1) const |
ACovAnisoList * | _castInCovAnisoList (int icov=-1) |
Protected Member Functions inherited from ASerializable | |
bool | _fileOpenWrite (const String &filename, std::ofstream &os, bool verbose=false) const |
bool | _fileOpenRead (const String &filename, std::ifstream &is, bool verbose=false) const |
Private Member Functions | |
void | _clear () |
void | _create () |
void | _copyCovContext () |
Private Attributes | |
ACov * | _cova |
DriftList * | _driftList |
CovContext | _ctxt |
Additional Inherited Members | |
Static Protected Member Functions inherited from ASerializable | |
static bool | _commentWrite (std::ostream &os, const String &comment) |
template<typename T > | |
static bool | _recordWrite (std::ostream &os, const String &title, const T &val) |
template<typename T > | |
static bool | _recordWriteVec (std::ostream &os, const String &title, const VectorT< T > &vec) |
template<typename T > | |
static bool | _recordRead (std::istream &is, const String &title, T &val) |
template<typename T > | |
static bool | _recordReadVec (std::istream &is, const String &title, VectorT< T > &vec, int nvalues) |
static bool | _onlyBlanks (char *string) |
static bool | _tableRead (std::istream &is, const String &string, int ntab, double *tab) |
static bool | _tableWrite (std::ostream &os, const String &string, int ntab, const VectorDouble &tab) |
TODO : Create AModel which inherits from ACov ?
Model::Model | ( | const CovContext & | ctxt = CovContext() | ) |
Model::Model | ( | int | nvar, |
int | ndim = 2 |
||
) |
Model::Model | ( | const Model & | m | ) |
|
virtual |
|
protected |
|
protected |
This internal function tries to cast the member '_cova' into a pointer to ACovAnisoList and checks the validity of the argument 'icov' which gives the rank within this list
icov | Rank of the CovAniso (to be checked if >= 0) |
|
private |
|
private |
|
private |
|
overrideprotectedvirtual |
Interface to ASerializable.
TODO : Force SpaceRN creation (deserialization doesn't know yet how to manage other space types)
Implements ASerializable.
double Model::_evalDriftCoef | ( | const Db * | db, |
int | iech, | ||
int | ivar, | ||
const double * | coef | ||
) | const |
|
inlineoverrideprotectedvirtual |
Implements ASerializable.
|
overrideprotectedvirtual |
Implements ASerializable.
void Model::addCov | ( | const CovAniso * | cov | ) |
void Model::addCovFromParam | ( | const ECov & | type, |
double | range = 0. , |
||
double | sill = 1. , |
||
double | param = 1. , |
||
const VectorDouble & | ranges = VectorDouble() , |
||
const VectorDouble & | sills = VectorDouble() , |
||
const VectorDouble & | angles = VectorDouble() , |
||
bool | flagRange = true |
||
) |
void Model::addDrift | ( | const ADrift * | drift | ) |
int Model::addNoStat | ( | const ANoStat * | anostat | ) |
Define Non-stationary parameters
anostat | ANoStat pointer will be duplicated |
int Model::addNoStatElem | ( | int | igrf, |
int | icov, | ||
const EConsElem & | type, | ||
int | iv1, | ||
int | iv2 | ||
) |
int Model::addNoStatElems | ( | const VectorString & | codes | ) |
|
inline |
void Model::covMatrix | ( | VectorDouble & | covmat, |
Db * | db1, | ||
Db * | db2 = nullptr , |
||
int | ivar = 0 , |
||
int | jvar = 0 , |
||
const CovCalcMode * | mode = nullptr |
||
) |
Calculate the covariance matrix between active samples of Db1 and active samples of Db2.
covmat | Returned matrix (returned as a vector). |
db1 | First Data Base |
db2 | Second Data Base (if not provided, the first Db is provided instead) |
ivar | Rank of the first variable (all variables if not defined) |
jvar | Rank of the second variable (all variables if not defined) |
mode | CovCalcMode structure |
MatrixSquareSymmetric Model::covMatrixM | ( | Db * | db1, |
Db * | db2 = nullptr , |
||
int | ivar = -1 , |
||
int | jvar = -1 , |
||
const CovCalcMode * | mode = nullptr |
||
) |
VectorDouble Model::covMatrixV | ( | Db * | db1, |
Db * | db2 = nullptr , |
||
int | ivar = 0 , |
||
int | jvar = 0 , |
||
const CovCalcMode * | mode = nullptr |
||
) |
|
static |
|
static |
|
static |
void Model::delAllCovas | ( | ) |
void Model::delAllDrifts | ( | ) |
void Model::delCova | ( | int | icov | ) |
void Model::delDrift | ( | int | rank | ) |
Model * Model::duplicate | ( | ) | const |
VectorDouble Model::envelop | ( | const VectorDouble & | hh, |
int | ivar = 0 , |
||
int | jvar = 0 , |
||
int | isign = 1 , |
||
VectorDouble | codir = VectorDouble() , |
||
const CovCalcMode * | mode = nullptr |
||
) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
VectorVectorDouble Model::evalCovMatrixOptim | ( | const Db * | db1, |
const Db * | db2 = nullptr , |
||
int | ivar = 0 , |
||
int | jvar = 0 , |
||
const CovCalcMode * | mode = nullptr |
||
) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
double Model::evalDrift | ( | const Db * | db, |
int | iech, | ||
int | il, | ||
const ECalcMember & | member = ECalcMember::fromKey("LHS") |
||
) | const |
Evaluate a given drift function for a given sample
db | Db structure |
iech | Rank of the target sample |
il | Rank of the drift function |
member | Member type (used to check filtering) |
VectorDouble Model::evalDrifts | ( | const Db * | db, |
const VectorDouble & | coeffs, | ||
int | ivar = 0 , |
||
bool | useSel = false |
||
) | const |
A vector of the drift evaluation
db | Db structure |
coeffs | Vector of drift coefficients |
ivar | Variable rank (used for constant drift value) |
useSel | When TRUE, only non masked samples are returned |
VectorDouble Model::evalDriftVec | ( | const Db * | db, |
int | iech, | ||
const ECalcMember & | member = ECalcMember::fromKey("LHS") |
||
) | const |
void Model::evalDriftVecInPlace | ( | const Db * | db, |
int | iech, | ||
const ECalcMember & | member, | ||
VectorDouble & | drftab | ||
) | const |
|
inline |
|
inline |
|
inline |
|
inline |
void Model::evalMatOptimInPlace | ( | int | iech1, |
int | iech2, | ||
MatrixSquareGeneral & | mat, | ||
const CovCalcMode * | mode = nullptr |
||
) | const |
|
inline |
|
inline |
|
inline |
|
inline |
void Model::evalZAndGradients | ( | const SpacePoint & | p1, |
const SpacePoint & | p2, | ||
double & | covVal, | ||
VectorDouble & | covGp, | ||
VectorDouble & | covGG, | ||
const CovCalcMode * | mode = nullptr , |
||
bool | flagGrad = false |
||
) | const |
void Model::evalZAndGradients | ( | const VectorDouble & | vec, |
double & | covVal, | ||
VectorDouble & | covGp, | ||
VectorDouble & | covGG, | ||
const CovCalcMode * | mode = nullptr , |
||
bool | flagGrad = false |
||
) | const |
|
inline |
CovAniso Model::extractCova | ( | int | icov | ) | const |
int Model::fit | ( | Vario * | vario, |
const VectorECov & | types = ECov::fromKeys({"SPHERICAL"}) , |
||
const Constraints & | constraints = Constraints() , |
||
Option_VarioFit | optvar = Option_VarioFit() , |
||
Option_AutoFit | mauto = Option_AutoFit() , |
||
bool | verbose = false |
||
) |
Automatic Fitting procedure from an experimental Variogram
vario | Experimental variogram to be fitted |
types | Vector of ECov |
constraints | Set of Constraints |
optvar | Set of options |
mauto | Special parameters for Automatic fitting procedure (instance of Option_AutoFit), for exemple wmode (type of weighting function) |
verbose | Verbose option |
TODO : What to do with that ?
int Model::fitFromCovIndices | ( | Vario * | vario, |
const VectorECov & | types = ECov::fromKeys({"EXPONENTIAL"}) , |
||
const Constraints & | constraints = Constraints() , |
||
Option_VarioFit | optvar = Option_VarioFit() , |
||
Option_AutoFit | mauto = Option_AutoFit() , |
||
bool | verbose = false |
||
) |
Automatic Fitting procedure
vario | Experimental variogram to be fitted |
types | Vector of ECov integer values |
constraints | Set of Constraints |
optvar | Set of options |
mauto | Special parameters for Automatic fitting procedure |
verbose | Verbose option |
TODO : What to do with that ?
int Model::fitFromVMap | ( | DbGrid * | dbmap, |
const VectorECov & | types = ECov::fromKeys({"SPHERICAL"}) , |
||
const Constraints & | constraints = Constraints() , |
||
Option_VarioFit | optvar = Option_VarioFit() , |
||
Option_AutoFit | mauto = Option_AutoFit() , |
||
bool | verbose = false |
||
) |
Automatic Fitting procedure from A Variogram Map stored on a DbGrid
dbmap | DbGrid containing the Variogram Map |
types | Vector of ECov |
constraints | Set of Constraints |
optvar | Set of options |
mauto | Special parameters for Automatic fitting procedure (instance of Option_AutoFit), for exemple wmode (type of weighting function) |
verbose | Verbose option |
VectorInt Model::getActiveCovList | ( | ) | const |
int Model::getActiveFactor | ( | ) | const |
VectorInt Model::getAllActiveCovList | ( | ) | const |
const AAnam * Model::getAnam | ( | ) | const |
const AnamHermite * Model::getAnamHermite | ( | ) | const |
int Model::getAnamNClass | ( | ) | const |
double Model::getBallRadius | ( | ) | const |
|
inline |
TODO : to be removed (encapsulation of Context)
CovAniso * Model::getCova | ( | unsigned int | icov | ) |
const CovAniso * Model::getCova | ( | unsigned int | icov | ) | const |
int Model::getCovaMinIRFOrder | ( | ) | const |
const ACovAnisoList * Model::getCovAnisoList | ( | ) | const |
TODO : to be removed (encapsulation of ACovAnisoList)
int Model::getCovaNumber | ( | ) | const |
|
inline |
|
inline |
const ECov & Model::getCovaType | ( | int | icov | ) | const |
const EModelProperty & Model::getCovMode | ( | ) | const |
String Model::getCovName | ( | int | icov | ) | const |
CovParamId Model::getCovParamId | ( | int | ipar | ) | const |
|
inline |
ADrift * Model::getDrift | ( | int | il | ) |
const ADrift * Model::getDrift | ( | int | il | ) | const |
VectorDouble Model::getDriftByColumn | ( | const Db * | db, |
int | ib, | ||
bool | useSel = true |
||
) |
double Model::getDriftCoef | ( | int | ivar, |
int | il, | ||
int | ib | ||
) | const |
const VectorDouble & Model::getDriftCoefs | ( | ) | const |
int Model::getDriftEquationNumber | ( | ) | const |
int Model::getDriftMaxIRFOrder | ( | void | ) | const |
int Model::getDriftNumber | ( | ) | const |
VectorVectorDouble Model::getDrifts | ( | const Db * | db, |
bool | useSel = true |
||
) |
int Model::getExternalDriftNumber | ( | ) | const |
|
inline |
int Model::getGradParamNumber | ( | int | icov | ) | const |
double Model::getMaximumDistance | ( | ) | const |
|
inline |
|
inline |
const ANoStat * Model::getNoStat | ( | ) | const |
Shortcut for Non-stationary.
int Model::getNoStatElemNumber | ( | ) | const |
double Model::getParam | ( | int | icov | ) | const |
int Model::getRankFext | ( | int | il | ) | const |
double Model::getSill | ( | int | icov, |
int | ivar, | ||
int | jvar | ||
) | const |
const MatrixSquareSymmetric Model::getSillValues | ( | int | icov | ) | const |
double Model::getTotalSill | ( | int | ivar, |
int | jvar | ||
) | const |
|
inline |
void Model::gofDisplay | ( | double | gof, |
bool | byValue = true , |
||
const VectorDouble & | thresholds = {2., 5., 10., 100} |
||
) |
Printout of statement concerning the Quality of the GOF
gof | Value of the Gof |
byValue | true: display GOF value; false: print its quality level |
thresholds | Vector giving the Quality thresholds |
double Model::gofToVario | ( | const Vario * | vario, |
bool | verbose = true |
||
) |
Evaluate the Goodness-of_fit of the Model on the Experimental Variogram It is expressed as the average departure between Model and Variogram scaled to the variance. As this variance may be poorly calculated (< gmax / 5), it may be replaced by the largest value (gmax) divided by 2 (highly non_stationary cases).
vario | Experimental variogram |
verbose | Verbose flag |
bool Model::hasAnam | ( | ) | const |
int Model::hasExternalCov | ( | ) | const |
bool Model::hasNugget | ( | ) | const |
VectorECov Model::initCovList | ( | const VectorInt & | covranks | ) |
bool Model::isChangeSupportDefined | ( | ) | const |
bool Model::isCovaFiltered | ( | int | icov | ) | const |
bool Model::isDriftDefined | ( | const VectorInt & | powers, |
int | rank_fex = 0 |
||
) | const |
bool Model::isDriftDifferentDefined | ( | const VectorInt & | powers, |
int | rank_fex = -1 |
||
) | const |
bool Model::isDriftFiltered | ( | unsigned int | il | ) | const |
bool Model::isFlagGradient | ( | ) | const |
bool Model::isFlagGradientFunctional | ( | ) | const |
bool Model::isFlagGradientNumerical | ( | ) | const |
bool Model::isFlagLinked | ( | ) | const |
int Model::isNoStat | ( | ) | const |
|
inline |
bool Model::isStationary | ( | ) | const |
bool Model::isValid | ( | ) | const |
void Model::normalize | ( | double | sill | ) |
|
inline |
int Model::resetFromDb | ( | const Db * | db | ) |
VectorDouble Model::sample | ( | const VectorDouble & | hh, |
int | ivar = 0 , |
||
int | jvar = 0 , |
||
VectorDouble | codir = VectorDouble() , |
||
const CovCalcMode * | mode = nullptr |
||
) |
Sample a Model for given variable(s) and given direction
hh | Vector of distances |
ivar | Rank of the first variable |
jvar | Rank of the second variable |
codir | Vector of direction coefficients |
mode | CovCalMode structure |
VectorDouble Model::sampleUnitary | ( | const VectorDouble & | hh, |
int | ivar = 0 , |
||
int | jvar = 0 , |
||
VectorDouble | codir = VectorDouble() , |
||
const CovCalcMode * | mode = nullptr |
||
) |
Returns the value of the normalized covariance (by the variance/covariance value) for a given pair of variables
hh | Vector of distances |
ivar | Rank of the first variable |
jvar | Rank of the second variable |
codir | Direction coefficients |
mode | CovCalcMode structure |
|
inline |
void Model::setActiveFactor | ( | int | iclass | ) |
Defining an Anamorphosis information for the Model (in fact, this is added to ACovAnisoList part and transforms it from CovLMC to CovLMCAnamorphosis
anam | Pointer to the anamorphosis |
strcnt | Array of covariance description used for IR case |
void Model::setCovaFiltered | ( | int | icov, |
bool | filtered | ||
) |
void Model::setCovar0 | ( | int | ivar, |
int | jvar, | ||
double | covar0 | ||
) |
void Model::setCovar0s | ( | const VectorDouble & | covar0 | ) |
void Model::setCovList | ( | const ACovAnisoList * | covalist | ) |
Add a list of Covariances. This operation cleans any previously stored covariance
covalist | List of Covariances to be added |
void Model::setDriftCoef | ( | int | ivar, |
int | il, | ||
int | ib, | ||
double | coeff | ||
) |
void Model::setDriftFiltered | ( | int | il, |
bool | filtered | ||
) |
void Model::setDriftIRF | ( | int | order = 0 , |
int | nfex = 0 |
||
) |
Define the list of drift functions for:
order | Order of the IRF |
nfex | Number of External Drifts |
void Model::setDriftList | ( | const DriftList * | driftlist | ) |
Add a list of Drifts. This operation cleans any previously stored drift function
driftlist | List of Drifts to be added |
void Model::setDrifts | ( | const VectorString & | driftSymbols | ) |
void Model::setField | ( | double | field | ) |
|
inline |
void Model::setMean | ( | double | mean, |
int | ivar = 0 |
||
) |
void Model::setMeans | ( | const VectorDouble & | mean | ) |
void Model::setSill | ( | int | icov, |
int | ivar, | ||
int | jvar, | ||
double | value | ||
) |
void Model::setTapeRange | ( | double | range | ) |
|
inline |
|
inline |
void Model::switchToGradient | ( | ) |
Switch to a Model dedicated to Gradients (transforms it from CovLMC to CovLMGradient)
|
overridevirtual |
int Model::unsetAnam | ( | ) |
|
private |
|
private |
|
private |