|
My Project
|
Output module for the results black oil model writing in ECL binary format. More...
#include <OutputBlackoilModule.hpp>
Public Member Functions | |
| template<class CollectDataToIORankType > | |
| OutputBlackOilModule (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 | processElementMech (const ElementContext &elemCtx) |
| void | processElement (const ElementContext &elemCtx) |
| Modify the internal buffers according to the intensive quanties relevant for an element. | |
| void | processElementFlows (const ElementContext &elemCtx) |
| void | processElementBlockData (const ElementContext &elemCtx) |
| 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 > > | |
| Scalar * | getPRESSURE_ptr (void) |
| int | getPRESSURE_size (void) |
| 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) |
| void | outputProdLog (std::size_t reportStepNum) |
| void | outputInjLog (std::size_t reportStepNum) |
| Inplace | calc_inplace (std::map< std::string, double > &miscSummaryData, std::map< std::string, std::vector< double > > ®ionData, const Parallel::Communication &comm) |
| 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 | outputErrorLog (const Parallel::Communication &comm) const |
| void | addRftDataToWells (data::Wells &wellDatas, std::size_t reportStepNum) |
| 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 |
| Scalar | getMicrobialConcentration (unsigned elemIdx) const |
| Scalar | getOxygenConcentration (unsigned elemIdx) const |
| Scalar | getUreaConcentration (unsigned elemIdx) const |
| Scalar | getBiofilmConcentration (unsigned elemIdx) const |
| Scalar | getCalciteConcentration (unsigned elemIdx) const |
| const std::array< FlowsData< double >, 3 > & | getFlowsn () const |
| bool | hasFlowsn () const |
| bool | hasFlows () const |
| bool | hasBlockFlows () const |
| bool | anyFlows () const |
| const std::array< FlowsData< double >, 3 > & | getFloresn () const |
| bool | hasFloresn () const |
| bool | hasFlores () const |
| bool | anyFlores () const |
| bool | needInterfaceFluxes (const bool isSubStep) const |
| const std::map< std::pair< std::string, int >, double > & | getBlockData () |
| const Inplace & | initialInplace () const |
| bool | localDataValid () const |
| void | invalidateLocalData () |
| void | validateLocalData () |
| void | setCnvData (const std::vector< std::vector< int > > &data) |
| void | serializeOp (Serializer &serializer) |
| void | assignGlobalFieldsToSolution (data::Solution &sol) |
| Assign fields that are in global numbering to the solution. | |
Static Public Member Functions | |
| static void | registerParameters () |
| Register all run-time parameters for the Vtk output module. | |
Additional Inherited Members | |
Public Types inherited from Opm::GenericOutputBlackoilModule< GetPropType< TypeTag, Properties::FluidSystem > > | |
| using | Scalar = typename FluidSystem::Scalar |
Protected Types inherited from Opm::GenericOutputBlackoilModule< GetPropType< TypeTag, Properties::FluidSystem > > | |
| enum | |
| enum | |
| enum | |
| enum | |
| enum | |
| enum | |
| enum | |
| enum | |
| using | ScalarBuffer = std::vector< Scalar > |
| using | StringBuffer = std::vector< std::string > |
| using | Dir = FaceDir::DirEnum |
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, bool enableEnergy, bool enableTemperature, bool enableMech, bool enableSolvent, bool enablePolymer, bool enableFoam, bool enableBrine, bool enableSaltPrecipitation, bool enableExtbo, bool enableMICP) | |
| void | doAllocBuffers (unsigned bufferSize, unsigned reportStepNum, const bool substep, const bool log, const bool isRestart, const bool vapparsActive, const bool enablePCHysteresis, const bool enableNonWettingHysteresis, const bool enableWettingHysteresis, unsigned numTracers, const std::vector< bool > &enableSolTracers, unsigned numOutputNnc) |
| 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) |
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 | enableTemperature_ |
| bool | enableMech_ |
| bool | enableSolvent_ |
| bool | enablePolymer_ |
| bool | enableFoam_ |
| bool | enableBrine_ |
| bool | enableSaltPrecipitation_ |
| bool | enableExtbo_ |
| bool | enableMICP_ |
| bool | forceDisableFipOutput_ |
| bool | forceDisableFipresvOutput_ |
| bool | computeFip_ |
| struct Opm::GenericOutputBlackoilModule::OutputFIPRestart | outputFipRestart_ |
| bool | anyFlows_ |
| bool | anyFlores_ |
| bool | blockFlows_ |
| bool | enableFlows_ |
| bool | enableFlores_ |
| bool | enableFlowsn_ |
| bool | enableFloresn_ |
| std::unordered_map< Inplace::Phase, ScalarBuffer > | fip_ |
| 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_ |
| ScalarBuffer | extboX_ |
| ScalarBuffer | extboY_ |
| ScalarBuffer | extboZ_ |
| ScalarBuffer | mFracOil_ |
| ScalarBuffer | mFracGas_ |
| ScalarBuffer | mFracCo2_ |
| 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_ |
| ScalarBuffer | cMicrobes_ |
| ScalarBuffer | cOxygen_ |
| ScalarBuffer | cUrea_ |
| ScalarBuffer | cBiofilm_ |
| ScalarBuffer | cCalcite_ |
| ScalarBuffer | pcgw_ |
| ScalarBuffer | pcow_ |
| ScalarBuffer | pcog_ |
| ScalarBuffer | mechPotentialForce_ |
| ScalarBuffer | mechPotentialPressForce_ |
| ScalarBuffer | mechPotentialTempForce_ |
| ScalarBuffer | dispX_ |
| ScalarBuffer | dispY_ |
| ScalarBuffer | dispZ_ |
| ScalarBuffer | stressXX_ |
| ScalarBuffer | stressYY_ |
| ScalarBuffer | stressZZ_ |
| ScalarBuffer | stressXY_ |
| ScalarBuffer | stressXZ_ |
| ScalarBuffer | stressYZ_ |
| ScalarBuffer | delstressXX_ |
| ScalarBuffer | delstressYY_ |
| ScalarBuffer | delstressZZ_ |
| ScalarBuffer | delstressXY_ |
| ScalarBuffer | delstressXZ_ |
| ScalarBuffer | delstressYZ_ |
| ScalarBuffer | strainXX_ |
| ScalarBuffer | strainYY_ |
| ScalarBuffer | strainZZ_ |
| ScalarBuffer | strainXY_ |
| ScalarBuffer | strainXZ_ |
| ScalarBuffer | strainYZ_ |
| 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_ |
| std::vector< ScalarBuffer > | freeTracerConcentrations_ |
| std::vector< ScalarBuffer > | solTracerConcentrations_ |
| std::array< ScalarBuffer, numPhases > | residual_ |
| std::array< std::array< ScalarBuffer, numPhases >, 6 > | flows_ |
| std::array< std::array< ScalarBuffer, numPhases >, 6 > | flores_ |
| std::array< FlowsData< double >, 3 > | floresn_ |
| std::array< FlowsData< double >, 3 > | flowsn_ |
| std::map< std::size_t, Scalar > | oilConnectionPressures_ |
| std::map< std::size_t, Scalar > | waterConnectionSaturations_ |
| std::map< std::size_t, Scalar > | gasConnectionSaturations_ |
| std::map< std::pair< std::string, int >, double > | blockData_ |
| std::vector< std::vector< int > > | cnvData_ |
| Data for CNV_xxx arrays. | |
| std::optional< Inplace > | initialInplace_ |
| bool | local_data_valid_ |
| std::optional< RegionPhasePoreVolAverage > | regionAvgDensity_ |
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 constexpr auto getPropValue() get the value data member of a property Definition propertysystem.hh:242 |
| 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. |