1.5.0
CCC
 
CalcSimuEden Class Reference

#include <CalcSimuEden.hpp>

Inheritance diagram for CalcSimuEden:
ACalcSimulation AStringable ISkinFunctions ACalcInterpolator ACalcDbToDb ACalculator

Detailed Description

Multivariate multiphase propagation into a set of components constrained by initial conditions and fluid densities

Remarks
Directions are ordered as follows :
0: +X; 1: -X; 2: +Y; 3: -Y; 4: +Z(up); 5: -Z(down)
The coding of the matrix is:
facies + nfacies * fluid
Facies: 0 (Shale), 1 to nfacies, -1 (Cork)
Fluids: 0 (undefined), 1 to nfluids, -1 (No Fluid)
Fluids should be ordered by increasing weight
A Permeability variable is a value (>=1) which divides
the velocities. This variable is optional.
A Porosity variable is a value (in [0,1]) which multiplies
the volumes. This variable is optional.
Volume_max represents the volumic part of the invaded area:
it is always <= number of cells invaded.

Public Member Functions

 CalcSimuEden (int nfacies=0, int nfluids=0, int niter=1, int nbsimu=0, int seed=4324324, bool verbose=false)
 
 CalcSimuEden (const CalcSimuEden &r)=delete
 
CalcSimuEdenoperator= (const CalcSimuEden &r)=delete
 
virtual ~CalcSimuEden ()
 
virtual String toString (const AStringFormat *strfmt=nullptr) const override
 Interface to AStringable. More...
 
int isAlreadyFilled (int ipos) const override
 Interface to ISkinFunctions. More...
 
int isToBeFilled (int ipos) const override
 
double getWeight (int ipos, int idir) const override
 
void setIndFacies (int indFacies)
 
void setIndFluid (int indFluid)
 
void setIndPerm (int indPerm)
 
void setIndPoro (int indPoro)
 
void setSpeeds (const VectorInt &speeds)
 
void setNumberMax (double numberMax)
 
void setShowFluid (bool showFluid)
 
void setVolumeMax (double volumeMax)
 
- Public Member Functions inherited from ACalcSimulation
 ACalcSimulation (int nbsimu, int seed=4324324)
 
 ACalcSimulation (const ACalcSimulation &r)=delete
 
ACalcSimulationoperator= (const ACalcSimulation &r)=delete
 
virtual ~ACalcSimulation ()
 
int getSeed () const
 
int getNbSimu () const
 
void setSeed (int seed)
 
void setNbSimu (int nbsimu)
 
- Public Member Functions inherited from ACalcInterpolator
 ACalcInterpolator ()
 
 ACalcInterpolator (const ACalcInterpolator &r)=delete
 
ACalcInterpolatoroperator= (const ACalcInterpolator &r)=delete
 
virtual ~ACalcInterpolator ()
 
void setModel (Model *model)
 
void setNeigh (ANeigh *neigh)
 
ModelgetModel () const
 
ANeighgetNeigh () const
 
bool hasModel (bool verbose=true) const
 
bool hasNeigh (bool verbose=true) const
 
- Public Member Functions inherited from ACalcDbToDb
 ACalcDbToDb (bool mustShareSameSpaceDimension=true)
 
 ACalcDbToDb (const ACalcDbToDb &r)=delete
 
ACalcDbToDboperator= (const ACalcDbToDb &r)=delete
 
virtual ~ACalcDbToDb ()
 
void setDbin (Db *dbin)
 
void setDbout (Db *dbout)
 
void setNamingConvention (const NamingConvention &namconv)
 
void setMustShareSpaceDimension (bool mustShareSpaceDimension)
 
DbgetDbin () const
 
DbgetDbout () const
 
DbGridgetGridin () const
 
DbGridgetGridout () const
 
bool hasDbin (bool verbose=true) const
 
bool hasDbout (bool verbose=true) const
 
bool isGridIn (bool verbose=true) const
 
bool isGridOut (bool verbose=true) const
 
- Public Member Functions inherited from ACalculator
 ACalculator ()
 
 ACalculator (const ACalculator &r)=delete
 
ACalculatoroperator= (const ACalculator &r)=delete
 
virtual ~ACalculator ()
 
bool run ()
 
- Public Member Functions inherited from AStringable
 AStringable ()
 
 AStringable (const AStringable &r)
 
AStringableoperator= (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 ISkinFunctions
 ISkinFunctions ()
 
virtual ~ISkinFunctions ()
 

Constructor & Destructor Documentation

◆ CalcSimuEden() [1/2]

CalcSimuEden::CalcSimuEden ( int  nfacies = 0,
int  nfluids = 0,
int  niter = 1,
int  nbsimu = 0,
int  seed = 4324324,
bool  verbose = false 
)

◆ CalcSimuEden() [2/2]

CalcSimuEden::CalcSimuEden ( const CalcSimuEden r)
delete

◆ ~CalcSimuEden()

CalcSimuEden::~CalcSimuEden ( )
virtual

Member Function Documentation

◆ getWeight()

double CalcSimuEden::getWeight ( int  ipos,
int  idir 
) const
overridevirtual

Returns the weight of a cell in a given direction

Returns
The weight
Parameters
[in]iposCell location
[in]idirDirection value

Reimplemented from ISkinFunctions.

◆ isAlreadyFilled()

int CalcSimuEden::isAlreadyFilled ( int  ipos) const
overridevirtual

Interface to ISkinFunctions.

Check if the cell is already filled with fluid

Returns
1 if the cell (filled with facies) is already filled with Fluid
Parameters
[in]iposAbsolute grid index of the input grid node

Implements ISkinFunctions.

◆ isToBeFilled()

int CalcSimuEden::isToBeFilled ( int  ipos) const
overridevirtual

Check if the cell can be filled with fluid

Returns
1 if the cell (filled with facies) can be filled with Fluid
Parameters
[in]iposAbsolute grid index of the input grid node

Implements ISkinFunctions.

◆ operator=()

CalcSimuEden& CalcSimuEden::operator= ( const CalcSimuEden r)
delete

◆ setIndFacies()

void CalcSimuEden::setIndFacies ( int  indFacies)
inline

◆ setIndFluid()

void CalcSimuEden::setIndFluid ( int  indFluid)
inline

◆ setIndPerm()

void CalcSimuEden::setIndPerm ( int  indPerm)
inline

◆ setIndPoro()

void CalcSimuEden::setIndPoro ( int  indPoro)
inline

◆ setNumberMax()

void CalcSimuEden::setNumberMax ( double  numberMax)
inline

◆ setShowFluid()

void CalcSimuEden::setShowFluid ( bool  showFluid)
inline

◆ setSpeeds()

void CalcSimuEden::setSpeeds ( const VectorInt speeds)
inline

◆ setVolumeMax()

void CalcSimuEden::setVolumeMax ( double  volumeMax)
inline

◆ toString()

String CalcSimuEden::toString ( const AStringFormat strfmt = nullptr) const
overridevirtual

Interface to AStringable.

Reimplemented from AStringable.


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