GenericOutputBlackoilModule.hpp
Go to the documentation of this file.
1// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
2// vi: set et ts=4 sw=4 sts=4:
3/*
4 This file is part of the Open Porous Media project (OPM).
5
6 OPM is free software: you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 2 of the License, or
9 (at your option) any later version.
10
11 OPM is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with OPM. If not, see <http://www.gnu.org/licenses/>.
18 Consult the COPYING file in the top-level source directory of this
19 module for the precise wording of the license and the list of
20 copyright holders.
21*/
26#ifndef OPM_GENERIC_OUTPUT_BLACK_OIL_MODULE_HPP
27#define OPM_GENERIC_OUTPUT_BLACK_OIL_MODULE_HPP
28
29#include <opm/input/eclipse/EclipseState/Grid/FaceDir.hpp>
30#include <opm/input/eclipse/EclipseState/SummaryConfig/SummaryConfig.hpp>
31
32#include <opm/output/data/Wells.hpp>
33#include <opm/output/eclipse/Inplace.hpp>
34
47
49
50#include <array>
51#include <cstddef>
52#include <functional>
53#include <map>
54#include <optional>
55#include <unordered_map>
56#include <utility>
57#include <vector>
58
59namespace Opm::Parameters {
60
61struct ForceDisableFluidInPlaceOutput { static constexpr bool value = false; };
62struct ForceDisableResvFluidInPlaceOutput { static constexpr bool value = false; };
63
64} // namespace Opm::Parameters
65
66namespace Opm {
67
68namespace data { class Solution; }
69class EclHysteresisConfig;
70class EclipseState;
71class Schedule;
72class SummaryConfig;
73class SummaryConfigNode;
74class SummaryState;
75
76template<class FluidSystem>
78public:
79 using Scalar = typename FluidSystem::Scalar;
80
81 // Virtual destructor for safer inheritance.
83
87 static void registerParameters();
88
89 void outputTimeStamp(const std::string& lbl,
90 double elapsed,
91 int rstep,
92 boost::posix_time::ptime currentDate);
93
97
101
102 // write cumulative production and injection reports to output
103 void outputCumLog(std::size_t reportStepNum,
104 const bool connData);
105
106 // write production report to output
107 void outputProdLog(std::size_t reportStepNum,
108 const bool connData);
109
110 // write injection report to output
111 void outputInjLog(std::size_t reportStepNum,
112 const bool connData);
113
114 // write msw report to output
115 void outputMSWLog(std::size_t reportStepNum);
116
117 // calculate Initial Fluid In Place
119
120 // calculate Fluid In Place
121 Inplace calc_inplace(std::map<std::string, double>& miscSummaryData,
122 std::map<std::string, std::vector<double>>& regionData,
123 const Parallel::Communication& comm);
124
145 void outputWellspecReport(const std::vector<std::string>& changedWells,
146 const bool changedWellLists,
147 const std::size_t reportStepNum,
148 const double elapsed,
149 boost::posix_time::ptime currentDate) const;
150
152
153 void addRftDataToWells(data::Wells& wellDatas,
154 std::size_t reportStepNum,
155 const Parallel::Communication& comm)
156 { this->rftC_.addToWells(wellDatas, reportStepNum, comm); }
157
161 void assignToSolution(data::Solution& sol);
162
163 void setRestart(const data::Solution& sol,
164 unsigned elemIdx,
165 unsigned globalDofIndex);
166
167 Scalar getSolventSaturation(unsigned elemIdx) const
168 {
169 if (sSol_.size() > elemIdx)
170 return sSol_[elemIdx];
171
172 return 0;
173 }
174
175 Scalar getSolventRsw(unsigned elemIdx) const
176 {
177 if (rswSol_.size() > elemIdx)
178 return rswSol_[elemIdx];
179
180 return 0;
181 }
182
183 Scalar getPolymerConcentration(unsigned elemIdx) const
184 {
185 if (cPolymer_.size() > elemIdx)
186 return cPolymer_[elemIdx];
187
188 return 0;
189 }
190
191 Scalar getFoamConcentration(unsigned elemIdx) const
192 {
193 if (cFoam_.size() > elemIdx)
194 return cFoam_[elemIdx];
195
196 return 0;
197 }
198
199 Scalar getSaltConcentration(unsigned elemIdx) const
200 {
201 if (cSalt_.size() > elemIdx)
202 return cSalt_[elemIdx];
203
204 return 0;
205 }
206
207 Scalar getSaltSaturation(unsigned elemIdx) const
208 {
209 if (pSalt_.size() > elemIdx)
210 return pSalt_[elemIdx];
211
212 return 0;
213 }
214
215 Scalar getPermFactor(unsigned elemIdx) const
216 {
217 if (permFact_.size() > elemIdx)
218 return permFact_[elemIdx];
219
220 return 0;
221 }
222
223 const std::vector<Scalar>& getFluidPressure() const
224 { return fluidPressure_; }
225
227 { return this->bioeffectsC_; }
228
230 { return this->CO2H2C_; }
231
233 { return this->flowsC_; }
234
235 bool needInterfaceFluxes([[maybe_unused]] const bool isSubStep) const
236 {
238 }
239
240 const std::map<std::pair<std::string, int>, double>& getBlockData()
241 {
242 return blockData_;
243 }
244
245 std::map<std::pair<std::string, int>, double>& getExtraBlockData()
246 {
247 return extraBlockData_;
248 }
249
250 const std::optional<Inplace>& initialInplace() const
251 {
252 return this->initialInplace_;
253 }
254
255 bool localDataValid() const{
256 return local_data_valid_;
257 }
258
260 local_data_valid_ = false;
261 }
262
264 local_data_valid_ = true;
265 }
266
267 template<class Serializer>
268 void serializeOp(Serializer& serializer)
269 {
270 serializer(initialInplace_);
271 }
272
274 { return this->rst_conv_; }
275
276 const RSTConv& getConv() const
277 { return this->rst_conv_; }
278
283 void assignGlobalFieldsToSolution(data::Solution& sol);
284
285protected:
286 using ScalarBuffer = std::vector<Scalar>;
287 using StringBuffer = std::vector<std::string>;
288 enum { numPhases = FluidSystem::numPhases };
289 enum { numComponents = FluidSystem::numComponents };
290 static constexpr int gasPhaseIdx = FluidSystem::gasPhaseIdx;
291 static constexpr int oilPhaseIdx = FluidSystem::oilPhaseIdx;
292 static constexpr int waterPhaseIdx = FluidSystem::waterPhaseIdx;
293 enum { gasCompIdx = FluidSystem::gasCompIdx };
294 enum { oilCompIdx = FluidSystem::oilCompIdx };
295 enum { waterCompIdx = FluidSystem::waterCompIdx };
296 using Dir = FaceDir::DirEnum;
297
298 GenericOutputBlackoilModule(const EclipseState& eclState,
299 const Schedule& schedule,
300 const SummaryConfig& summaryConfig,
301 const SummaryState& summaryState,
302 const std::string& moduleVersionName,
304 const Parallel::Communication& comm,
305 bool enableEnergy,
306 bool constantTemperature,
307 bool enableMech,
308 bool enableSolvent,
309 bool enablePolymer,
310 bool enableFoam,
311 bool enableBrine,
312 bool enableSaltPrecipitation,
313 bool enableExtbo,
314 bool enableBioeffects);
315
316 void doAllocBuffers(unsigned bufferSize,
317 unsigned reportStepNum,
318 const bool substep,
319 const bool log,
320 const bool isRestart,
321 const EclHysteresisConfig* hysteresisConfig,
322 unsigned numOutputNnc = 0,
323 std::map<std::string, int> rstKeywords = {});
324
325 void makeRegionSum(Inplace& inplace,
326 const std::string& region_name,
327 const Parallel::Communication& comm) const;
328
330
331 void updateSummaryRegionValues(const Inplace& inplace,
332 std::map<std::string, double>& miscSummaryData,
333 std::map<std::string, std::vector<double>>& regionData) const;
334
335 static bool isOutputCreationDirective_(const std::string& keyword);
336
337 // Sum Fip values over regions.
338 static ScalarBuffer regionSum(const ScalarBuffer& property,
339 const std::vector<int>& regionId,
340 const std::size_t maxNumberOfRegions,
341 const Parallel::Communication& comm);
342
343 static int regionMax(const std::vector<int>& region,
344 const Parallel::Communication& comm);
345
346 static void update(Inplace& inplace,
347 const std::string& region_name,
348 const Inplace::Phase phase,
349 const std::size_t ntFip,
350 const ScalarBuffer& values);
351
352 static Scalar sum(const ScalarBuffer& v);
353
354 void setupBlockData(std::function<bool(int)> isCartIdxOnThisRank);
355 void setupExtraBlockData(const std::size_t reportStepNum,
356 std::function<bool(int)> isCartIdxOnThisRank);
357
358 virtual bool isDefunctParallelWell(const std::string& wname) const = 0;
359 virtual bool isOwnedByCurrentRank(const std::string& wname) const = 0;
360 virtual bool isOnCurrentRank(const std::string& wname) const = 0;
361
362 const EclipseState& eclState_;
363 const Schedule& schedule_;
364 const SummaryState& summaryState_;
365
366 SummaryConfig summaryConfig_;
367
370
371 bool enableEnergy_{false};
373 bool enableMech_{false};
374
375 bool enableSolvent_{false};
376 bool enablePolymer_{false};
377 bool enableFoam_{false};
378 bool enableBrine_{false};
380 bool enableExtbo_{false};
381 bool enableBioeffects_{false};
382
385 bool computeFip_{false};
386
388 std::unordered_map<std::string, std::vector<int>> regions_;
389 std::unordered_map<Inplace::Phase, std::vector<SummaryConfigNode>> regionNodes_;
390
391 std::vector<SummaryConfigNode> RPRNodes_;
392 std::vector<SummaryConfigNode> RPRPNodes_;
393
394 std::vector<int> failedCellsPb_;
395 std::vector<int> failedCellsPd_;
396
442
443 // buffers for mechanical output
445
446 std::array<ScalarBuffer, numPhases> saturation_;
447 std::array<ScalarBuffer, numPhases> invB_;
448 std::array<ScalarBuffer, numPhases> density_;
449 std::array<ScalarBuffer, numPhases> viscosity_;
450 std::array<ScalarBuffer, numPhases> relativePermeability_;
451
453
454 std::array<ScalarBuffer, numPhases> residual_;
455
457
460
461 std::map<std::pair<std::string, int>, double> blockData_;
462 // Extra block data required for non-summary output reasons
463 // Example is the block pressures for RPTSCHED WELLS=2
464 std::map<std::pair<std::string, int>, double> extraBlockData_;
465
466 std::optional<Inplace> initialInplace_;
467 bool local_data_valid_{false};
468
469 std::optional<RegionPhasePoreVolAverage> regionAvgDensity_;
470};
471
472} // namespace Opm
473
474#endif // OPM_GENERIC_OUTPUT_BLACK_OIL_MODULE_HPP
Definition: BioeffectsContainer.hpp:38
Definition: CO2H2Container.hpp:38
Definition: ExtboContainer.hpp:37
Definition: FIPContainer.hpp:47
Definition: FlowsContainer.hpp:42
Definition: GenericOutputBlackoilModule.hpp:77
std::map< std::pair< std::string, int >, double > blockData_
Definition: GenericOutputBlackoilModule.hpp:461
std::array< ScalarBuffer, numPhases > relativePermeability_
Definition: GenericOutputBlackoilModule.hpp:450
const RSTConv & getConv() const
Definition: GenericOutputBlackoilModule.hpp:276
ScalarBuffer fluidPressure_
Definition: GenericOutputBlackoilModule.hpp:403
std::array< ScalarBuffer, numPhases > density_
Definition: GenericOutputBlackoilModule.hpp:448
void invalidateLocalData()
Definition: GenericOutputBlackoilModule.hpp:259
void assignGlobalFieldsToSolution(data::Solution &sol)
Assign fields that are in global numbering to the solution. \detail This is used to add fields that f...
ScalarBuffer saturatedOilFormationVolumeFactor_
Definition: GenericOutputBlackoilModule.hpp:435
bool enableFoam_
Definition: GenericOutputBlackoilModule.hpp:377
ScalarBuffer overburdenPressure_
Definition: GenericOutputBlackoilModule.hpp:409
ScalarBuffer gasDissolutionFactorInWater_
Definition: GenericOutputBlackoilModule.hpp:429
Scalar getFoamConcentration(unsigned elemIdx) const
Definition: GenericOutputBlackoilModule.hpp:191
bool enableMech_
Definition: GenericOutputBlackoilModule.hpp:373
const EclipseState & eclState_
Definition: GenericOutputBlackoilModule.hpp:362
static constexpr int gasPhaseIdx
Definition: GenericOutputBlackoilModule.hpp:290
ScalarBuffer swmin_
Definition: GenericOutputBlackoilModule.hpp:425
ScalarBuffer rockCompPorvMultiplier_
Definition: GenericOutputBlackoilModule.hpp:433
Scalar getSolventRsw(unsigned elemIdx) const
Definition: GenericOutputBlackoilModule.hpp:175
static int regionMax(const std::vector< int > &region, const Parallel::Communication &comm)
void makeRegionSum(Inplace &inplace, const std::string &region_name, const Parallel::Communication &comm) const
Scalar getSaltSaturation(unsigned elemIdx) const
Definition: GenericOutputBlackoilModule.hpp:207
RFTContainer< FluidSystem > rftC_
Definition: GenericOutputBlackoilModule.hpp:458
bool computeFip_
Definition: GenericOutputBlackoilModule.hpp:385
ScalarBuffer dewPointPressure_
Definition: GenericOutputBlackoilModule.hpp:432
LogOutputHelper< Scalar > logOutput_
Definition: GenericOutputBlackoilModule.hpp:369
std::vector< std::string > StringBuffer
Definition: GenericOutputBlackoilModule.hpp:287
bool enableBrine_
Definition: GenericOutputBlackoilModule.hpp:378
void calc_initial_inplace(const Parallel::Communication &comm)
bool forceDisableFipresvOutput_
Definition: GenericOutputBlackoilModule.hpp:384
std::vector< SummaryConfigNode > RPRNodes_
Definition: GenericOutputBlackoilModule.hpp:391
std::vector< int > failedCellsPb_
Definition: GenericOutputBlackoilModule.hpp:394
ScalarBuffer permFact_
Definition: GenericOutputBlackoilModule.hpp:418
ScalarBuffer rsw_
Definition: GenericOutputBlackoilModule.hpp:406
ScalarBuffer pcog_
Definition: GenericOutputBlackoilModule.hpp:441
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
RSTConv rst_conv_
Helper class for RPTRST CONV.
Definition: GenericOutputBlackoilModule.hpp:459
std::optional< RegionPhasePoreVolAverage > regionAvgDensity_
Definition: GenericOutputBlackoilModule.hpp:469
std::array< ScalarBuffer, numPhases > invB_
Definition: GenericOutputBlackoilModule.hpp:447
ScalarBuffer pSalt_
Definition: GenericOutputBlackoilModule.hpp:417
Scalar getPermFactor(unsigned elemIdx) const
Definition: GenericOutputBlackoilModule.hpp:215
bool enableBioeffects_
Definition: GenericOutputBlackoilModule.hpp:381
static void registerParameters()
Register all run-time parameters for the Vtk output module.
ScalarBuffer cFoam_
Definition: GenericOutputBlackoilModule.hpp:415
void serializeOp(Serializer &serializer)
Definition: GenericOutputBlackoilModule.hpp:268
ScalarBuffer bubblePointPressure_
Definition: GenericOutputBlackoilModule.hpp:431
ScalarBuffer temperature_
Definition: GenericOutputBlackoilModule.hpp:404
void outputCumLog(std::size_t reportStepNum, const bool connData)
bool enableSolvent_
Definition: GenericOutputBlackoilModule.hpp:375
ScalarBuffer ppcw_
Definition: GenericOutputBlackoilModule.hpp:426
std::optional< Inplace > initialInplace_
Definition: GenericOutputBlackoilModule.hpp:466
std::vector< Scalar > ScalarBuffer
Definition: GenericOutputBlackoilModule.hpp:286
static bool isOutputCreationDirective_(const std::string &keyword)
@ gasCompIdx
Definition: GenericOutputBlackoilModule.hpp:293
FIPContainer< FluidSystem > fipC_
Definition: GenericOutputBlackoilModule.hpp:387
ScalarBuffer rockCompTransMultiplier_
Definition: GenericOutputBlackoilModule.hpp:436
MechContainer< Scalar > mech_
Definition: GenericOutputBlackoilModule.hpp:444
Inplace calc_inplace(std::map< std::string, double > &miscSummaryData, std::map< std::string, std::vector< double > > &regionData, const Parallel::Communication &comm)
const FlowsContainer< FluidSystem > & getFlows() const
Definition: GenericOutputBlackoilModule.hpp:232
ScalarBuffer dynamicPoreVolume_
Definition: GenericOutputBlackoilModule.hpp:401
typename FluidSystem::Scalar Scalar
Definition: GenericOutputBlackoilModule.hpp:79
FaceDir::DirEnum Dir
Definition: GenericOutputBlackoilModule.hpp:296
ScalarBuffer minimumOilPressure_
Definition: GenericOutputBlackoilModule.hpp:434
bool localDataValid() const
Definition: GenericOutputBlackoilModule.hpp:255
ScalarBuffer gasFormationVolumeFactor_
Definition: GenericOutputBlackoilModule.hpp:397
std::array< ScalarBuffer, numPhases > residual_
Definition: GenericOutputBlackoilModule.hpp:454
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={})
Scalar getSolventSaturation(unsigned elemIdx) const
Definition: GenericOutputBlackoilModule.hpp:167
Scalar getSaltConcentration(unsigned elemIdx) const
Definition: GenericOutputBlackoilModule.hpp:199
bool local_data_valid_
Definition: GenericOutputBlackoilModule.hpp:467
ScalarBuffer shmax_
Definition: GenericOutputBlackoilModule.hpp:423
BioeffectsContainer< Scalar > bioeffectsC_
Definition: GenericOutputBlackoilModule.hpp:437
const Schedule & schedule_
Definition: GenericOutputBlackoilModule.hpp:363
FlowsContainer< FluidSystem > flowsC_
Definition: GenericOutputBlackoilModule.hpp:456
ExtboContainer< Scalar > extboC_
Definition: GenericOutputBlackoilModule.hpp:419
void setupExtraBlockData(const std::size_t reportStepNum, std::function< bool(int)> isCartIdxOnThisRank)
@ numPhases
Definition: GenericOutputBlackoilModule.hpp:288
ScalarBuffer oilSaturationPressure_
Definition: GenericOutputBlackoilModule.hpp:410
InterRegFlowMap interRegionFlows_
Definition: GenericOutputBlackoilModule.hpp:368
RSTConv & getConv()
Definition: GenericOutputBlackoilModule.hpp:273
void outputProdLog(std::size_t reportStepNum, const bool connData)
void addRftDataToWells(data::Wells &wellDatas, std::size_t reportStepNum, const Parallel::Communication &comm)
Definition: GenericOutputBlackoilModule.hpp:153
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 constantTemperature, bool enableMech, bool enableSolvent, bool enablePolymer, bool enableFoam, bool enableBrine, bool enableSaltPrecipitation, bool enableExtbo, bool enableBioeffects)
static ScalarBuffer regionSum(const ScalarBuffer &property, const std::vector< int > &regionId, const std::size_t maxNumberOfRegions, const Parallel::Communication &comm)
ScalarBuffer pcgw_
Definition: GenericOutputBlackoilModule.hpp:439
ScalarBuffer cPolymer_
Definition: GenericOutputBlackoilModule.hpp:414
@ waterCompIdx
Definition: GenericOutputBlackoilModule.hpp:295
void outputMSWLog(std::size_t reportStepNum)
const std::map< std::pair< std::string, int >, double > & getBlockData()
Definition: GenericOutputBlackoilModule.hpp:240
const std::vector< Scalar > & getFluidPressure() const
Definition: GenericOutputBlackoilModule.hpp:223
bool constantTemperature_
Definition: GenericOutputBlackoilModule.hpp:372
void setupBlockData(std::function< bool(int)> isCartIdxOnThisRank)
bool enablePolymer_
Definition: GenericOutputBlackoilModule.hpp:376
ScalarBuffer rvw_
Definition: GenericOutputBlackoilModule.hpp:408
std::array< ScalarBuffer, numPhases > saturation_
Definition: GenericOutputBlackoilModule.hpp:446
void outputInjLog(std::size_t reportStepNum, const bool connData)
std::unordered_map< std::string, std::vector< int > > regions_
Definition: GenericOutputBlackoilModule.hpp:388
virtual bool isOnCurrentRank(const std::string &wname) const =0
ScalarBuffer rPorV_
Definition: GenericOutputBlackoilModule.hpp:402
ScalarBuffer oilVaporizationFactor_
Definition: GenericOutputBlackoilModule.hpp:428
std::map< std::pair< std::string, int >, double > & getExtraBlockData()
Definition: GenericOutputBlackoilModule.hpp:245
std::vector< int > failedCellsPd_
Definition: GenericOutputBlackoilModule.hpp:395
Scalar getPolymerConcentration(unsigned elemIdx) const
Definition: GenericOutputBlackoilModule.hpp:183
ScalarBuffer rs_
Definition: GenericOutputBlackoilModule.hpp:405
static constexpr int oilPhaseIdx
Definition: GenericOutputBlackoilModule.hpp:291
bool enableExtbo_
Definition: GenericOutputBlackoilModule.hpp:380
ScalarBuffer drsdtcon_
Definition: GenericOutputBlackoilModule.hpp:411
static constexpr int waterPhaseIdx
Definition: GenericOutputBlackoilModule.hpp:292
ScalarBuffer sSol_
Definition: GenericOutputBlackoilModule.hpp:412
std::map< std::pair< std::string, int >, double > extraBlockData_
Definition: GenericOutputBlackoilModule.hpp:464
ScalarBuffer pressureTimesPoreVolume_
Definition: GenericOutputBlackoilModule.hpp:399
ScalarBuffer gasDissolutionFactor_
Definition: GenericOutputBlackoilModule.hpp:427
static void update(Inplace &inplace, const std::string &region_name, const Inplace::Phase phase, const std::size_t ntFip, const ScalarBuffer &values)
void validateLocalData()
Definition: GenericOutputBlackoilModule.hpp:263
std::unordered_map< Inplace::Phase, std::vector< SummaryConfigNode > > regionNodes_
Definition: GenericOutputBlackoilModule.hpp:389
std::array< ScalarBuffer, numPhases > viscosity_
Definition: GenericOutputBlackoilModule.hpp:449
Inplace accumulateRegionSums(const Parallel::Communication &comm)
const BioeffectsContainer< Scalar > & getBioeffects() const
Definition: GenericOutputBlackoilModule.hpp:226
bool forceDisableFipOutput_
Definition: GenericOutputBlackoilModule.hpp:383
void assignToSolution(data::Solution &sol)
Move all buffers to data::Solution.
ScalarBuffer soMax_
Definition: GenericOutputBlackoilModule.hpp:420
ScalarBuffer sgmax_
Definition: GenericOutputBlackoilModule.hpp:422
const SummaryState & summaryState_
Definition: GenericOutputBlackoilModule.hpp:364
ScalarBuffer somin_
Definition: GenericOutputBlackoilModule.hpp:424
ScalarBuffer hydrocarbonPoreVolume_
Definition: GenericOutputBlackoilModule.hpp:398
const std::optional< Inplace > & initialInplace() const
Definition: GenericOutputBlackoilModule.hpp:250
bool enableSaltPrecipitation_
Definition: GenericOutputBlackoilModule.hpp:379
@ oilCompIdx
Definition: GenericOutputBlackoilModule.hpp:294
ScalarBuffer waterVaporizationFactor_
Definition: GenericOutputBlackoilModule.hpp:430
void setRestart(const data::Solution &sol, unsigned elemIdx, unsigned globalDofIndex)
@ numComponents
Definition: GenericOutputBlackoilModule.hpp:289
static Scalar sum(const ScalarBuffer &v)
const CO2H2Container< Scalar > & getCO2H2() const
Definition: GenericOutputBlackoilModule.hpp:229
ScalarBuffer cSalt_
Definition: GenericOutputBlackoilModule.hpp:416
void outputTimeStamp(const std::string &lbl, double elapsed, int rstep, boost::posix_time::ptime currentDate)
virtual bool isOwnedByCurrentRank(const std::string &wname) const =0
TracerContainer< FluidSystem > tracerC_
Definition: GenericOutputBlackoilModule.hpp:452
ScalarBuffer rv_
Definition: GenericOutputBlackoilModule.hpp:407
bool needInterfaceFluxes(const bool isSubStep) const
Definition: GenericOutputBlackoilModule.hpp:235
void outputErrorLog(const Parallel::Communication &comm) const
ScalarBuffer pcow_
Definition: GenericOutputBlackoilModule.hpp:440
SummaryConfig summaryConfig_
Definition: GenericOutputBlackoilModule.hpp:366
virtual bool isDefunctParallelWell(const std::string &wname) const =0
std::vector< SummaryConfigNode > RPRPNodes_
Definition: GenericOutputBlackoilModule.hpp:392
ScalarBuffer swMax_
Definition: GenericOutputBlackoilModule.hpp:421
CO2H2Container< Scalar > CO2H2C_
Definition: GenericOutputBlackoilModule.hpp:438
void updateSummaryRegionValues(const Inplace &inplace, std::map< std::string, double > &miscSummaryData, std::map< std::string, std::vector< double > > &regionData) const
ScalarBuffer pressureTimesHydrocarbonVolume_
Definition: GenericOutputBlackoilModule.hpp:400
ScalarBuffer rswSol_
Definition: GenericOutputBlackoilModule.hpp:413
bool enableEnergy_
Definition: GenericOutputBlackoilModule.hpp:371
Inter-region flow accumulation maps for all region definition arrays.
Definition: InterRegFlows.hpp:179
bool wantInterRegflowSummary() const
Definition: InterRegFlows.hpp:282
Definition: LogOutputHelper.hpp:45
Definition: MechContainer.hpp:45
Definition: RFTContainer.hpp:51
Class computing RPTRST CONV output.
Definition: RSTConv.hpp:36
std::function< int(const int)> LocalToGlobalCellFunc
Definition: RSTConv.hpp:38
Definition: TracerContainer.hpp:39
Dune::Communication< MPIComm > Communication
Definition: ParallelCommunication.hpp:30
Definition: blackoilnewtonmethodparams.hpp:31
Phase
Phase indices for reservoir coupling, we currently only support black-oil phases (oil,...
Definition: ReservoirCoupling.hpp:141
Definition: blackoilbioeffectsmodules.hh:43
std::string moduleVersionName()
Definition: GenericOutputBlackoilModule.hpp:61
static constexpr bool value
Definition: GenericOutputBlackoilModule.hpp:61
Definition: GenericOutputBlackoilModule.hpp:62
static constexpr bool value
Definition: GenericOutputBlackoilModule.hpp:62