#include <PropDef.hpp>
Public Member Functions | |
| PropDef ()=default | |
| PropDef (const PropDef &m)=default | |
| PropDef & | operator= (const PropDef &m)=default |
| virtual | ~PropDef ()=default |
| void | printInfo () const |
| Id | getRank (Id ipgs, Id igrf) const |
| void | defineRuleMethod (const EProcessOper &oper) |
| void | reset () const |
| Id | proportionDefine (const Db *db, Id iech, Id isimu, Id nbsimu, Id *jech) const |
| Id | define (bool flag_facies, bool flag_stat, const std::array< Id, 2 > &ngrf, const std::array< Id, 2 > &nfac, Db *db, const Db *dbprop, const 1 &propcst) |
| Id | ruleThreshDefine (Db *db, const Rule *rule, Id facies, Id iech, Id isimu, Id nbsimu, Id flag_check, double *t1min, double *t1max, double *t2min, double *t2max) const |
| Id | ruleThreshShadowDefine (Db *db, const RuleShadow *rule, Id facies, Id iech, Id isimu, Id nbsimu, double *t1min, double *t1max, double *t2min, double *t2max, double *sh_dsup, double *sh_down) const |
| void | updateCategorical (Db *db, bool verbose, Id ipgs, Id isimu, Id nbsimu) const |
| void | scaleCategorical (Db *db, bool verbose, Id ipgs, Id nbsimu) const |
| void | transformCategorical (const Rule *rule, Db *db, bool verbose, const VectorBool &flag_used, Id ipgs, Id isimu, Id nbsimu) const |
| double | getPropFix (Id ifac) const |
Static Public Member Functions | |
| static void | updateContinuous (Db *db, bool verbose, Id isimu, Id nbsimu) |
| static void | scaleContinuous (Db *db, bool verbose, Id nbsimu) |
Public Attributes | |
| bool | _caseFacies |
| bool | _caseStat |
| bool | _casePropInterp |
| std::array< Id, 2 > | _ngrf {} |
| std::array< Id, 2 > | _nfac {} |
| Id | _nfaccur |
| Id | _nfacprod |
| EProcessOper | _mode |
| _propfix | |
| _propmem | |
| _propwrk | |
| _proploc | |
| _coor | |
| const DbGrid * | _dbprop |
|
default |
|
default |
|
virtualdefault |
| Id gstlrn::PropDef::define | ( | bool | flag_facies, |
| bool | flag_stat, | ||
| const std::array< Id, 2 > & | ngrf, | ||
| const std::array< Id, 2 > & | nfac, | ||
| Db * | db, | ||
| const Db * | dbprop, | ||
| const 1 & | propcst | ||
| ) |
Allocate or deallocate a proportion array
| [in] | flag_facies | 1 if Gibbs is used for facies |
| [in] | flag_stat | 1 if the proportions are stationary |
| [in] | ngrf | Number of GRFs for the first PGS |
| [in] | nfac | Number of facies for the first PGS |
| [in] | db | Db structure containing the data |
| [in] | dbprop | Db structure containing the proportions (only used in the non-stationary case) |
| [in] | propcst | Constant set of proportions (used if flag_stat) |
| void gstlrn::PropDef::defineRuleMethod | ( | const EProcessOper & | oper | ) |
Set the method to compute Proportions
| [in] | oper | Type of operation (EProcessOper) |
|
inline |
| void gstlrn::PropDef::printInfo | ( | ) | const |
| Id gstlrn::PropDef::proportionDefine | ( | const Db * | db, |
| Id | iech, | ||
| Id | isimu, | ||
| Id | nbsimu, | ||
| Id * | jech | ||
| ) | const |
Set the (non-stationary) proportions
| [in] | db | Db input structure |
| [in] | iech | Rank of the data in the input Db |
| [in] | isimu | Rank of the simulation (EProcessOper::CONDITIONAL) |
| [in] | nbsimu | Number of simulations |
| [out] | jech | Rank of the auxiliary data in the input Db |
| void gstlrn::PropDef::reset | ( | ) | const |
| Id gstlrn::PropDef::ruleThreshDefine | ( | Db * | db, |
| const Rule * | rule, | ||
| Id | facies, | ||
| Id | iech, | ||
| Id | isimu, | ||
| Id | nbsimu, | ||
| Id | flag_check, | ||
| double * | t1min, | ||
| double * | t1max, | ||
| double * | t2min, | ||
| double * | t2max | ||
| ) | const |
Set the (non-stationary) proportions and define thresholds
| [in] | db | Db input structure |
| [in] | rule | Rule structure |
| [in] | facies | Facies of interest (or ITEST) starting from 1 |
| [in] | iech | Rank of the data in the input Db |
| [in] | isimu | Rank of the simulation (EProcessOper::CONDITIONAL) |
| [in] | nbsimu | Number of simulations |
| [in] | flag_check | 1 if the consistency check with the actual proportion of the current facies must be done |
| [out] | t1min | Minimum threshold for Y1 |
| [out] | t1max | Maximum threshold for Y1 |
| [out] | t2min | Minimum threshold for Y2 |
| [out] | t2max | Maximum threshold for Y2 |
| Id gstlrn::PropDef::ruleThreshShadowDefine | ( | Db * | db, |
| const RuleShadow * | rule, | ||
| Id | facies, | ||
| Id | iech, | ||
| Id | isimu, | ||
| Id | nbsimu, | ||
| double * | t1min, | ||
| double * | t1max, | ||
| double * | t2min, | ||
| double * | t2max, | ||
| double * | sh_dsup, | ||
| double * | sh_down | ||
| ) | const |
Set the (non-stationary) proportions and define thresholds (for shadow only)
| [in] | db | Db input structure |
| [in] | rule | Rule structure |
| [in] | facies | Facies of interest (or ITEST) |
| [in] | iech | Rank of the data in the input Db |
| [in] | isimu | Rank of the simulation (EProcessOper::CONDITIONAL) |
| [in] | nbsimu | Number of simulations (EProcessOper::CONDITIONAL) |
| [out] | t1min | Minimum threshold for Y1 |
| [out] | t1max | Maximum threshold for Y1 |
| [out] | t2min | Minimum threshold for Y2 |
| [out] | t2max | Maximum threshold for Y2 |
| [out] | sh_dsup | Local or global upwards shift (shadow) |
| [out] | sh_down | Local or global downwards shift (shadow) |
| void gstlrn::PropDef::transformCategorical | ( | const Rule * | rule, |
| Db * | db, | ||
| bool | verbose, | ||
| const VectorBool & | flag_used, | ||
| Id | ipgs, | ||
| Id | isimu, | ||
| Id | nbsimu | ||
| ) | const |
| void gstlrn::PropDef::updateCategorical | ( | Db * | db, |
| bool | verbose, | ||
| Id | ipgs, | ||
| Id | isimu, | ||
| Id | nbsimu | ||
| ) | const |
| bool gstlrn::PropDef::_caseFacies |
| bool gstlrn::PropDef::_casePropInterp |
| bool gstlrn::PropDef::_caseStat |
|
mutable |
| const DbGrid* gstlrn::PropDef::_dbprop |
| EProcessOper gstlrn::PropDef::_mode |
| std::array<Id, 2> gstlrn::PropDef::_nfac {} |
| Id gstlrn::PropDef::_nfaccur |
| Id gstlrn::PropDef::_nfacprod |
| std::array<Id, 2> gstlrn::PropDef::_ngrf {} |
|
mutable |
|
mutable |
|
mutable |
|
mutable |