Loading...
Searching...
No Matches
Opm::OutputCompositionalModule< TypeTag > Class Template Reference

Output module for the results black oil model writing in ECL binary format. More...

`#include <OutputCompositionalModule.hpp>`

Inheritance diagram for Opm::OutputCompositionalModule< TypeTag >:

## Public Member Functions

template<class CollectDataToIORankType>
| OutputCompositionalModule (const Simulator &simulator, const SummaryConfig &smryCfg, const CollectDataToIORankType &collectToIORank)
void | allocBuffers (const unsigned bufferSize, const unsigned reportStepNum, const bool substep, const bool log, const bool isRestart)
| Allocate memory for the scalar fields we would like to write to ECL output files.
void | assignToSolution (data::Solution &sol)
void | setupExtractors (const bool, const std::size_t)
| Setup list of active element-level data extractors.
void | clearExtractors ()
| Clear list of active element-level data extractors.
void | processElement (const ElementContext &elemCtx)
| Modify the internal buffers according to the intensive quanties relevant for an element.
void | processElementFlows (const ElementContext &)
void | processElementBlockData (const ElementContext &)
template<class ActiveIndex, class CartesianIndex>
void | processFluxes (const ElementContext &, ActiveIndex &&, CartesianIndex &&)
| Capture connection fluxes, particularly to account for inter-region flows.
void | initializeFluxData ()
| Prepare for capturing connection fluxes, particularly to account for inter-region flows.
void | finalizeFluxData ()
| Finalize capturing connection fluxes.
const InterRegFlowMap & | getInterRegFlows () const
| Get read-only access to collection of inter-region flows.
void | updateFluidInPlace (const unsigned, const IntensiveQuantities &, const double)
Public Member Functions inherited from Opm::GenericOutputBlackoilModule< GetPropType< TypeTag, Properties::FluidSystem > >
void | outputTimeStamp (const std::string &lbl, double elapsed, int rstep, boost::posix_time::ptime currentDate)
void | prepareDensityAccumulation ()
| Clear internal arrays for parallel accumulation of per-region phase density averages.
void | accumulateDensityParallel ()
| Run cross-rank parallel accumulation of per-region phase density running sums (average values).
void | outputCumLog (std::size_t reportStepNum, const bool connData)
void | outputProdLog (std::size_t reportStepNum, const bool connData)
void | outputInjLog (std::size_t reportStepNum, const bool connData)
void | outputMSWLog (std::size_t reportStepNum)
void | calc_initial_inplace (const Parallel::Communication &comm)
Inplace | calc_inplace (std::map< std::string, double > &miscSummaryData, std::map< std::string, std::vector< double > > &regionData, const Parallel::Communication &comm)
void | outputWellspecReport (const std::vector< std::string > &changedWells, const std::size_t reportStepNum, const double elapsed, boost::posix_time::ptime currentDate) const
void | outputErrorLog (const Parallel::Communication &comm) const
void | addRftDataToWells (data::Wells &wellDatas, std::size_t reportStepNum, const Parallel::Communication &comm)
void | assignToSolution (data::Solution &sol)
| Move all buffers to data::Solution.
void | setRestart (const data::Solution &sol, unsigned elemIdx, unsigned globalDofIndex)
Scalar | getSolventSaturation (unsigned elemIdx) const
Scalar | getSolventRsw (unsigned elemIdx) const
Scalar | getPolymerConcentration (unsigned elemIdx) const
Scalar | getFoamConcentration (unsigned elemIdx) const
Scalar | getSaltConcentration (unsigned elemIdx) const
Scalar | getSaltSaturation (unsigned elemIdx) const
Scalar | getPermFactor (unsigned elemIdx) const
const std::vector< Scalar > & | getFluidPressure () const
const BioeffectsContainer< Scalar > & | getBioeffects () const
const FlowsContainer< FluidSystem > & | getFlows () const
bool | needInterfaceFluxes (const bool isSubStep) const
const std::map< std::pair< std::string, int >, double > & | getBlockData ()
std::map< std::pair< std::string, int >, double > & | getExtraBlockData ()
const std::optional< Inplace > & | initialInplace () const
bool | localDataValid () const
void | invalidateLocalData ()
void | validateLocalData ()
void | serializeOp (Serializer &serializer)
RSTConv & | getConv ()
void | assignGlobalFieldsToSolution (data::Solution &sol)
| Assign fields that are in global numbering to the solution.

## Additional Inherited Members

Public Types inherited from Opm::GenericOutputBlackoilModule< GetPropType< TypeTag, Properties::FluidSystem > >
using | Scalar
Static Public Member Functions inherited from Opm::GenericOutputBlackoilModule< GetPropType< TypeTag, Properties::FluidSystem > >
static void | registerParameters ()
| Register all run-time parameters for the Vtk output module.
Protected Types inherited from Opm::GenericOutputBlackoilModule< GetPropType< TypeTag, Properties::FluidSystem > >
enum |
enum |
enum |
enum |
enum |
using | ScalarBuffer
using | StringBuffer
using | Dir
Protected Member Functions inherited from Opm::GenericOutputBlackoilModule< GetPropType< TypeTag, Properties::FluidSystem > >

GenericOutputBlackoilModule (const EclipseState &eclState, const Schedule &schedule, const SummaryConfig &summaryConfig, const SummaryState &summaryState, const std::string &moduleVersionName, RSTConv::LocalToGlobalCellFunc globalCell, const Parallel::Communication &comm, bool enableEnergy, bool enableTemperature, bool enableMech, bool enableSolvent, bool enablePolymer, bool enableFoam, bool enableBrine, bool enableSaltPrecipitation, bool enableExtbo, bool enableBioeffects)

void | doAllocBuffers (unsigned bufferSize, unsigned reportStepNum, const bool substep, const bool log, const bool isRestart, const EclHysteresisConfig *hysteresisConfig, unsigned numOutputNnc=0, std::map< std::string, int > rstKeywords={})
void | makeRegionSum (Inplace &inplace, const std::string &region_name, const Parallel::Communication &comm) const
Inplace | accumulateRegionSums (const Parallel::Communication &comm)
void | updateSummaryRegionValues (const Inplace &inplace, std::map< std::string, double > &miscSummaryData, std::map< std::string, std::vector< double > > &regionData) const
void | setupBlockData (std::function< bool(int)> isCartIdxOnThisRank)
void | setupExtraBlockData (const std::size_t reportStepNum, std::function< bool(int)> isCartIdxOnThisRank)
Static Protected Member Functions inherited from Opm::GenericOutputBlackoilModule< GetPropType< TypeTag, Properties::FluidSystem > >
static bool | isOutputCreationDirective_ (const std::string &keyword)
static ScalarBuffer | regionSum (const ScalarBuffer &property, const std::vector< int > &regionId, const std::size_t maxNumberOfRegions, const Parallel::Communication &comm)
static int | regionMax (const std::vector< int > &region, const Parallel::Communication &comm)
static void | update (Inplace &inplace, const std::string &region_name, const Inplace::Phase phase, const std::size_t ntFip, const ScalarBuffer &values)
static Scalar | sum (const ScalarBuffer &v)
Protected Attributes inherited from Opm::GenericOutputBlackoilModule< GetPropType< TypeTag, Properties::FluidSystem > >
const EclipseState & | eclState_
const Schedule & | schedule_
const SummaryState & | summaryState_
SummaryConfig | summaryConfig_
InterRegFlowMap | interRegionFlows_
LogOutputHelper< Scalar > | logOutput_
bool | enableEnergy_
bool | enableTemperature_
bool | enableMech_
bool | enableSolvent_
bool | enablePolymer_
bool | enableFoam_
bool | enableBrine_
bool | enableSaltPrecipitation_
bool | enableExtbo_
bool | enableBioeffects_
bool | forceDisableFipOutput_
bool | forceDisableFipresvOutput_
bool | computeFip_
FIPContainer< FluidSystem > | fipC_
std::unordered_map< std::string, std::vector< int > > | regions_
std::unordered_map< Inplace::Phase, std::vector< SummaryConfigNode > > | regionNodes_
std::vector< SummaryConfigNode > | RPRNodes_
std::vector< SummaryConfigNode > | RPRPNodes_
std::vector< int > | failedCellsPb_
std::vector< int > | failedCellsPd_
ScalarBuffer | gasFormationVolumeFactor_
ScalarBuffer | hydrocarbonPoreVolume_
ScalarBuffer | pressureTimesPoreVolume_
ScalarBuffer | pressureTimesHydrocarbonVolume_
ScalarBuffer | dynamicPoreVolume_
ScalarBuffer | rPorV_
ScalarBuffer | fluidPressure_
ScalarBuffer | temperature_
ScalarBuffer | rs_
ScalarBuffer | rsw_
ScalarBuffer | rv_
ScalarBuffer | rvw_
ScalarBuffer | overburdenPressure_
ScalarBuffer | oilSaturationPressure_
ScalarBuffer | drsdtcon_
ScalarBuffer | sSol_
ScalarBuffer | rswSol_
ScalarBuffer | cPolymer_
ScalarBuffer | cFoam_
ScalarBuffer | cSalt_
ScalarBuffer | pSalt_
ScalarBuffer | permFact_
ExtboContainer< Scalar > | extboC_
ScalarBuffer | soMax_
ScalarBuffer | swMax_
ScalarBuffer | sgmax_
ScalarBuffer | shmax_
ScalarBuffer | somin_
ScalarBuffer | swmin_
ScalarBuffer | ppcw_
ScalarBuffer | gasDissolutionFactor_
ScalarBuffer | oilVaporizationFactor_
ScalarBuffer | gasDissolutionFactorInWater_
ScalarBuffer | waterVaporizationFactor_
ScalarBuffer | bubblePointPressure_
ScalarBuffer | dewPointPressure_
ScalarBuffer | rockCompPorvMultiplier_
ScalarBuffer | minimumOilPressure_
ScalarBuffer | saturatedOilFormationVolumeFactor_
ScalarBuffer | rockCompTransMultiplier_
BioeffectsContainer< Scalar > | bioeffectsC_
ScalarBuffer | pcgw_
ScalarBuffer | pcow_
ScalarBuffer | pcog_
MechContainer< Scalar > | mech_
std::array< ScalarBuffer, numPhases > | saturation_
std::array< ScalarBuffer, numPhases > | invB_
std::array< ScalarBuffer, numPhases > | density_
std::array< ScalarBuffer, numPhases > | viscosity_
std::array< ScalarBuffer, numPhases > | relativePermeability_
TracerContainer< FluidSystem > | tracerC_
std::array< ScalarBuffer, numPhases > | residual_
FlowsContainer< FluidSystem > | flowsC_
RFTContainer< FluidSystem > | rftC_
RSTConv | rst_conv_
| Helper class for RPTRST CONV.
std::map< std::pair< std::string, int >, double > | blockData_
std::map< std::pair< std::string, int >, double > | extraBlockData_
std::optional< Inplace > | initialInplace_
bool | local_data_valid_
std::optional< RegionPhasePoreVolAverage > | regionAvgDensity_
Static Protected Attributes inherited from Opm::GenericOutputBlackoilModule< GetPropType< TypeTag, Properties::FluidSystem > >
static constexpr int | gasPhaseIdx
static constexpr int | oilPhaseIdx
static constexpr int | waterPhaseIdx

## Detailed Description

template<class TypeTag>
class Opm::OutputCompositionalModule< TypeTag >

Output module for the results black oil model writing in ECL binary format.

## Member Function Documentation

## processFluxes()

template<class TypeTag>
template<class ActiveIndex, class CartesianIndex>

void Opm::OutputCompositionalModule< TypeTag >::processFluxes | ( | const ElementContext & | ,
|  | ActiveIndex && | ,
|  | CartesianIndex && | )

inline

Capture connection fluxes, particularly to account for inter-region flows.

Template Parameters

  ActiveIndex | Callable type, typically a lambda, that enables retrieving the active index, on the local MPI rank, of a particular cell/element. Must support a function call operator of the form int operator()(const Element& elem) const
  CartesianIndex | Callable type, typically a lambda, that enables retrieving the globally unique Cartesian index of a particular cell/element given its active index on the local MPI rank. Must support a function call operator of the form int operator()(const int activeIndex) const

Parameters

  [in] | elemCtx | Primary lookup structure for per-cell/element dynamic information.
  [in] | activeIndex | Mapping from cell/elements to linear indices on local MPI rank.
  [in] | cartesianIndex | Mapping from active index on local MPI rank to globally unique Cartesian cell/element index.

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

- opm/simulators/flow/OutputCompositionalModule.hpp