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

#include <RuleShift.hpp>

Inheritance diagram for gstlrn::RuleShift:
gstlrn::Rule gstlrn::AStringable gstlrn::ASerializable gstlrn::ICloneable

Public Member Functions

 RuleShift ()
 
 RuleShift (const RuleShift &m)
 
RuleShiftoperator= (const RuleShift &m)
 
virtual ~RuleShift ()
 
String getNFName () const override
 ICloneable Interface.
 
String displaySpecific () const override
 
Id resetFromNames (const VectorString &nodnames, const 1 &shift)
 
Id resetFromFaciesCount (Id nfacies, const 1 &shift)
 
Id particularities (Db *db, const Db *dbprop, Model *model, Id flag_grid_check, Id flag_stat) const override
 
Id gaus2facResult (const PropDef &propdef, Db *dbout, const VectorBool &flag_used, Id ipgs, Id isimu, Id nbsimu) const override
 
Id evaluateBounds (const PropDef &propdef, Db *dbin, Db *dbout, Id isimu, Id igrf, Id ipgs, Id nbsimu) const override
 
bool checkModel (const Model *model, Id nvar=0) const override
 
double getShDown () const
 
double getShDsup () const
 
double getSlope () const
 
const & getShift () const
 
double getShift (Id idim) const
 
- Public Member Functions inherited from gstlrn::Rule
 Rule (double rho=0.)
 
 Rule (const 1 &icodes)
 Create a Rule from a vector of integers.
 
 Rule (const Rule &m)
 
Ruleoperator= (const Rule &m)
 
virtual ~Rule ()
 
String toString (const AStringFormat *strfmt=nullptr) const override
 ICloneable Interface.
 
Id resetFromNames (const VectorString &nodnames, double rho=0.)
 
Id resetFromFaciesCount (Id nfacies, double rho=0.)
 
virtual Id gaus2facData (const PropDef &propdef, Db *dbin, Db *dbout, const VectorBool &flag_used, Id ipgs, Id isimu, Id nbsimu) const
 
Id getFlagProp () const
 
const ERule & getModeRule () const
 
double getRho () const
 
const NodegetMainNode () const
 
void setFlagProp (Id flagProp)
 
void setRho (double rho) const
 
void setModeRule (const ERule &modeRule)
 TODO : Check if mutable is really necessary.
 
Id setProportions (const 1 &proportions=1(), bool flagGaussian=true) const
 
Id statistics (Id verbose, Id *node_tot, Id *nfac_tot, Id *nmax_tot, Id *ny1_tot, Id *ny2_tot, double *prop_tot) const
 
Id getNFacies () const
 
Id getNGRF () const
 
Id getNY1 () const
 
Id getNY2 () const
 
bool isYUsed (Id igrf) const
 
VectorBool whichGRFUsed () const
 
double getProportion (Id facies)
 
std::array< double, 4 > getThresh (Id facies) const
 
 getThreshFromRectangle (Id rect, Id *facies)
 
Id getFaciesFromGaussian (double y1, double y2) const
 
 getNodes () const
 
void updateShift () const
 
VectorString getFaciesNames () const
 
 getFaciesColors () const
 
 getFaciesValues () const
 
String getFaciesName (Id facies) const
 
Id getFaciesColor (Id facies) const
 
Id getFaciesValue (Id facies) const
 
String getFaciesColorName (Id facies) const
 
double getScore () const
 
void setFaciesNames (const VectorString &facnames)
 
void setFaciesColors (const 1 &faccols)
 
void setFaciesValues (const 1 &facvalues)
 
void setFaciesName (Id facies, const String &name)
 
void setFaciesValue (Id facies, Id value)
 
void setFaciesColorByName (Id facies, const String &color)
 
void setFaciesColorByHexa (Id facies, const String &hexa)
 
void setFaciesColorByInt (Id facies, const Id &value)
 
void setCharacteristics (Id facies, const String &name=String(), const String &color=String(), Id value=ITEST)
 Define the characteristics of a given facies.
 
void setScore (double score)
 
String namesPrint () 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)
 
- Public Member Functions inherited from gstlrn::ICloneable
 ICloneable ()
 
virtual ~ICloneable ()
 
virtual ICloneableclone () const =0
 
std::shared_ptr< ICloneablecloneShared () const
 
std::unique_ptr< ICloneablecloneUnique () const
 

Static Public Member Functions

static RuleShiftcreateFromNames (const VectorString &nodnames, const 1 &shift)
 
- Static Public Member Functions inherited from gstlrn::Rule
static Rulecreate (double rho=0.)
 
static RulecreateFromNF (const String &NFFilename, bool verbose=true)
 
static RulecreateFromNames (const VectorString &nodnames, double rho=0.)
 
static RulecreateFromFaciesCount (Id nfacies, double rho=0.)
 
- 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

◆ RuleShift() [1/2]

gstlrn::RuleShift::RuleShift ( )

◆ RuleShift() [2/2]

gstlrn::RuleShift::RuleShift ( const RuleShift m)

◆ ~RuleShift()

gstlrn::RuleShift::~RuleShift ( )
virtual

Member Function Documentation

◆ checkModel()

bool gstlrn::RuleShift::checkModel ( const Model model,
Id  nvar = 0 
) const
overridevirtual

Reimplemented from gstlrn::Rule.

◆ createFromNames()

RuleShift * gstlrn::RuleShift::createFromNames ( const VectorString nodnames,
const 1 &  shift 
)
static

◆ displaySpecific()

String gstlrn::RuleShift::displaySpecific ( ) const
overridevirtual

Reimplemented from gstlrn::Rule.

◆ evaluateBounds()

Id gstlrn::RuleShift::evaluateBounds ( const PropDef propdef,
Db dbin,
Db dbout,
Id  isimu,
Id  igrf,
Id  ipgs,
Id  nbsimu 
) const
overridevirtual

Set the bounds and possibly add replicates

Returns
Error return code
Parameters
[in]propdefPropDef structure
[in]dbinDb structure
[in]dboutDb grid structure
[in]isimuRank of the simulation (if EProcessOper::CONDITIONAL)
[in]igrfRank of the GRF
[in]ipgsRank of the GS
[in]nbsimuNumber of simulations (if EProcessOper::CONDITIONAL)

Reimplemented from gstlrn::Rule.

◆ gaus2facResult()

Id gstlrn::RuleShift::gaus2facResult ( const PropDef propdef,
Db dbout,
const VectorBool flag_used,
Id  ipgs,
Id  isimu,
Id  nbsimu 
) const
overridevirtual

Combine the underlying GRF into a facies value

Returns
Error return code
Parameters
[in]propdefPropDef structure
[in]dboutDb output structure
[in]flag_used1 if the gaussian is used; 0 otherwise
[in]ipgsRank of the PGS
[in]isimuRank of the simulation
[in]nbsimuNumber of simulations
Remarks
Attributes ELoc::FACIES and ELoc::SIMU are mandatory

Reimplemented from gstlrn::Rule.

◆ getNFName()

String gstlrn::RuleShift::getNFName ( ) const
inlineoverridevirtual

ICloneable Interface.

ASerializable Interface

Reimplemented from gstlrn::Rule.

◆ getShDown()

double gstlrn::RuleShift::getShDown ( ) const
inline

◆ getShDsup()

double gstlrn::RuleShift::getShDsup ( ) const
inline

◆ getShift() [1/2]

const & gstlrn::RuleShift::getShift ( ) const
inline

◆ getShift() [2/2]

double gstlrn::RuleShift::getShift ( Id  idim) const
inline

◆ getSlope()

double gstlrn::RuleShift::getSlope ( ) const
inline

◆ operator=()

RuleShift & gstlrn::RuleShift::operator= ( const RuleShift m)

◆ particularities()

Id gstlrn::RuleShift::particularities ( Db db,
const Db dbprop,
Model model,
Id  flag_grid_check,
Id  flag_stat 
) const
overridevirtual

Define the particularities of the PGS model

Returns
Error return code
Parameters
[in]dbDb structure
[in]dbpropDb structure used for proportions
[in]modelModel structure (only used for shift option)
[in]flag_grid_check1 if grid is compulsory; 0 otherwise (only for SHIFT)
[in]flag_stat1 for stationary; 0 otherwise

Reimplemented from gstlrn::Rule.

◆ resetFromFaciesCount()

Id gstlrn::RuleShift::resetFromFaciesCount ( Id  nfacies,
const 1 &  shift 
)

Definition of the Lithotype RuleShift

Parameters
nfaciesNumber of facies
shiftVector defining the shift

◆ resetFromNames()

Id gstlrn::RuleShift::resetFromNames ( const VectorString nodnames,
const 1 &  shift 
)

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