opm-simulators
Loading...
Searching...
No Matches
Opm::FlowGenericVanguard Class Reference
Inheritance diagram for Opm::FlowGenericVanguard:
Opm::FlowBaseVanguard< TypeTag > Opm::AluGridVanguard< TypeTag > Opm::CpGridVanguard< TypeTag > Opm::PolyhedralGridVanguard< TypeTag >

Classes

struct  SimulationModelParams

Public Types

using ParallelWellStruct = std::vector<std::pair<std::string,bool>>

Public Member Functions

 FlowGenericVanguard ()
 Constructor.
 FlowGenericVanguard (SimulationModelParams &&params)
 ~FlowGenericVanguard ()
 Destructor.
double setupTime ()
 Returns the wall time required to set up the simulator before it was born.
void defineSimulationModel (SimulationModelParams &&params)
 Set the simulation configuration objects.
const EclipseState & eclState () const
 Return a reference to the internalized ECL deck.
EclipseState & eclState ()
const Schedule & schedule () const
 Return a reference to the object that managages the ECL schedule.
Schedule & schedule ()
const SummaryConfig & summaryConfig () const
 Return a reference to the object that determines which quantities ought to be put into the ECL summary output.
SummaryState & summaryState ()
 Returns the summary state.
const SummaryState & summaryState () const
Action::State & actionState ()
 Returns the action state.
const Action::State & actionState () const
UDQState & udqState ()
 Returns the udq state.
const UDQState & udqState () const
std::unique_ptr< WellTestState > transferWTestState ()
const std::string & caseName () const
 Returns the name of the case.
Dune::EdgeWeightMethod edgeWeightsMethod () const
 Parameter deciding the edge-weight strategy of the load balancer.
int numJacobiBlocks () const
 Number of blocks in the Block-Jacobi preconditioner.
bool ownersFirst () const
 Parameter that decide if cells owned by rank are ordered before ghost cells.
bool edgeConformal () const
bool enableDistributedWells () const
 Whether perforations of a well might be distributed.
bool enableEclOutput () const
 Whether or not to emit result files that are compatible with a commercial reservoir simulator.
const ParallelWellStruct & parallelWells () const
 Retrieve collection (a vector of pairs) of well names and whether or not the corresponding well objects are perforated on the current rank.
template<class Serializer>
void serializeOp (Serializer &serializer)
bool operator== (const FlowGenericVanguard &rhs) const

Static Public Member Functions

static SimulationModelParams serializationTestParams ()
static std::string canonicalDeckPath (const std::string &caseName)
 Returns the canonical path to a deck file.
static void readDeck (const std::string &filename)
 Read a deck.
static void setCommunication (std::unique_ptr< Opm::Parallel::Communication > comm)
 Set global communication.
static Parallel::Communication & comm ()
 Obtain global communicator.

Static Public Attributes

static SimulationModelParams modelParams_

Protected Member Functions

void updateOutputDir_ (std::string outputDir, bool enableEclCompatFile)
void updateNOSIM_ (std::string_view enableDryRun)
bool drsdtconEnabled () const
std::unordered_map< std::size_t, const NumericalAquiferCell * > allAquiferCells () const
void init ()

Static Protected Member Functions

template<class Scalar>
static void registerParameters_ ()

Protected Attributes

double setupTime_
std::string caseName_
std::string fileName_
Dune::EdgeWeightMethod edgeWeightsMethod_
bool ownersFirst_
bool edgeConformal_
bool enableDistributedWells_
bool enableEclOutput_
bool allow_splitting_inactive_wells_
std::string ignoredKeywords_
std::optional< int > outputInterval_
bool useMultisegmentWell_
bool enableExperiments_
std::unique_ptr< SummaryState > summaryState_
std::unique_ptr< UDQState > udqState_
std::unique_ptr< Action::State > actionState_
std::unique_ptr< WellTestState > wtestState_
std::shared_ptr< Python > python
std::shared_ptr< EclipseState > eclState_
std::shared_ptr< Schedule > eclSchedule_
std::shared_ptr< SummaryConfig > eclSummaryConfig_
ParallelWellStruct parallelWells_
 Information about wells in parallel.

Static Protected Attributes

static std::unique_ptr< Parallel::Communication > comm_

Constructor & Destructor Documentation

◆ FlowGenericVanguard()

Opm::FlowGenericVanguard::FlowGenericVanguard ( )

Constructor.

Needs to be in compile unit.

◆ ~FlowGenericVanguard()

Opm::FlowGenericVanguard::~FlowGenericVanguard ( )
default

Destructor.

Empty, but needs to be in compile unit.

Member Function Documentation

◆ actionState()

Action::State & Opm::FlowGenericVanguard::actionState ( )
inline

Returns the action state.

The ActionState keeps track of how many times the various actions have run.

◆ canonicalDeckPath()

std::string Opm::FlowGenericVanguard::canonicalDeckPath ( const std::string & caseName)
static

Returns the canonical path to a deck file.

The input can either be the canonical deck file name or the name of the case (i.e., without the .DATA extension)

◆ caseName()

const std::string & Opm::FlowGenericVanguard::caseName ( ) const
inline

Returns the name of the case.

i.e., the all-uppercase version of the file name from which the deck is loaded with the ".DATA" suffix removed.

◆ parallelWells()

const ParallelWellStruct & Opm::FlowGenericVanguard::parallelWells ( ) const
inline

Retrieve collection (a vector of pairs) of well names and whether or not the corresponding well objects are perforated on the current rank.

Will only have usable values for CpGrid.

◆ readDeck()

void Opm::FlowGenericVanguard::readDeck ( const std::string & filename)
static

Read a deck.

Parameters
filenamefile to read

◆ summaryState()

SummaryState & Opm::FlowGenericVanguard::summaryState ( )
inline

Returns the summary state.

The summary state is a small container object for computed, ready to use summary values. The values will typically be used by the UDQ, WTEST and ACTIONX calculations.

◆ udqState()

UDQState & Opm::FlowGenericVanguard::udqState ( )
inline

Returns the udq state.

The UDQState keeps track of the result of UDQ evaluations.

Member Data Documentation

◆ parallelWells_

ParallelWellStruct Opm::FlowGenericVanguard::parallelWells_
protected

Information about wells in parallel.

For each well in the model there is an entry with its name and a boolean indicating whether it perforates local cells.


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