|
opm-simulators
|
Output module for the results black oil model writing in ECL binary format. More...
#include <OutputBlackoilModule.hpp>
Public Member Functions | |
| OutputBlackOilModule (const Simulator &simulator, const SummaryConfig &smryCfg, const CollectDataOnIORankType &collectOnIORank) | |
| 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 | setupExtractors (const bool isSubStep, const int reportStepNum) |
| 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 | processElementBlockData (const ElementContext &elemCtx) |
| void | outputFipAndResvLog (const Inplace &inplace, const std::size_t reportStepNum, double elapsed, boost::posix_time::ptime currentDate, const bool substep, const Parallel::Communication &comm) |
| void | outputFipAndResvLogToCSV (const std::size_t reportStepNum, const bool substep, const Parallel::Communication &comm) |
| template<class ActiveIndex, class CartesianIndex> | |
| void | processFluxes (const ElementContext &elemCtx, ActiveIndex &&activeIndex, CartesianIndex &&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. | |
| template<class FluidState> | |
| void | assignToFluidState (FluidState &fs, unsigned elemIdx) const |
| void | initHysteresisParams (Simulator &simulator, unsigned elemIdx) const |
| void | updateFluidInPlace (const ElementContext &elemCtx) |
| void | updateFluidInPlace (const unsigned globalDofIdx, const IntensiveQuantities &intQuants, const double totVolume) |
| 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 > > ®ionData, const Parallel::Communication &comm) |
| void | outputWellspecReport (const std::vector< std::string > &changedWells, const bool changedWellLists, const std::size_t reportStepNum, const double elapsed, boost::posix_time::ptime currentDate) const |
| Emit well specification report. | |
| 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 CO2H2Container< Scalar > & | getCO2H2 () 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 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, std::function< bool(const unsigned)> isInterior, const Parallel::Communication &comm, bool enableEnergy, bool constantTemperature, bool enableMech, bool enableSolvent, bool enablePolymer, bool enableFoam, bool enableBrine, bool enableSaltPrecipitation, bool enableExtbo, bool enableBioeffects, bool enableGeochemistry) | |
| 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 ®ion_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 > > ®ionData) 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 > ®ionId, const std::size_t maxNumberOfRegions, const Parallel::Communication &comm) |
| static int | regionMax (const std::vector< int > ®ion, const Parallel::Communication &comm) |
| static void | update (Inplace &inplace, const std::string ®ion_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 | constantTemperature_ |
| bool | enableMech_ |
| bool | enableSolvent_ |
| bool | enablePolymer_ |
| bool | enableFoam_ |
| bool | enableBrine_ |
| bool | enableSaltPrecipitation_ |
| bool | enableExtbo_ |
| bool | enableBioeffects_ |
| bool | enableGeochemistry_ |
| 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_ |
| CO2H2Container< Scalar > | CO2H2C_ |
| 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_ |
| GeochemistryContainer< Scalar > | geochemC_ |
| 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 |
Output module for the results black oil model writing in ECL binary format.
|
inline |
Capture connection fluxes, particularly to account for inter-region flows.
| 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
|
| [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. |