19#ifndef PARALLEL_ECLIPSE_STATE_HPP
20#define PARALLEL_ECLIPSE_STATE_HPP
22#include <dune/common/version.hh>
23#include <opm/input/eclipse/EclipseState/EclipseState.hpp>
24#include <opm/input/eclipse/EclipseState/Grid/TranCalculator.hpp>
25#include <dune/common/parallel/mpihelper.hh>
27#include <opm/simulators/utils/ParallelCommunication.hpp>
59 std::vector<int>
actnum()
const override;
66 std::vector<double>
porv(
bool global =
false)
const override;
70 const std::vector<int>&
get_int(
const std::string& keyword)
const override;
74 const std::vector<double>&
get_double(
const std::string& keyword)
const override;
79 std::vector<int>
get_global_int(
const std::string& keyword)
const override;
88 bool has_int(
const std::string& keyword)
const override;
92 bool has_double(
const std::string& keyword)
const override;
95 std::vector<std::string>
fip_regions()
const override;
107 std::placeholders::_1);
110 bool tran_active(
const std::string& keyword)
const override;
112 void apply_tran(
const std::string& keyword, std::vector<double>& trans)
const override;
114 void copyTran(
const FieldPropsManager& from)
119 template<
class Serializer>
120 void serializeOp(Serializer& serializer)
126 std::map<std::string, Fieldprops::FieldData<int>>
m_intProps;
132 std::unordered_map<std::string, Fieldprops::TranCalculator>
m_tran;
176 const FieldPropsManager&
fieldProps()
const override;
203 bool m_parProps =
false;
205 Parallel::Communication m_comm;
Parallel frontend to the EclipseState.
Definition ParallelEclipseState.hpp:147
void switchToGlobalProps()
Switch to global field properties.
Definition ParallelEclipseState.cpp:310
const EclipseGrid & getInputGrid() const override
Returns a const ref to the eclipse grid.
Definition ParallelEclipseState.cpp:302
const FieldPropsManager & fieldProps() const override
Returns a const ref to current field properties.
Definition ParallelEclipseState.cpp:268
void computeFipRegionStatistics() override
Compute basic descriptive statistics about all FIP region sets.
Definition ParallelEclipseState.cpp:288
friend class PropsDataHandle
Friend to set up props.
Definition ParallelEclipseState.hpp:150
void switchToDistributedProps()
Switch to distributed field properies.
Definition ParallelEclipseState.cpp:316
const FieldPropsManager & globalFieldProps() const override
Returns a const ref to global field properties.
Definition ParallelEclipseState.cpp:280
void resetCartesianMapper(const T *mapper)
Resets the underlying cartesian mapper \detail This has to be the cartesian mapper of the distributed...
Definition ParallelEclipseState.hpp:198
Parallel frontend to the field properties.
Definition ParallelEclipseState.hpp:42
void resetCartesianMapper(const T *mapper)
Resets the underlying cartesian mapper \detail This has to be the cartesian mapper of the distributed...
Definition ParallelEclipseState.hpp:103
std::unordered_map< std::string, Fieldprops::TranCalculator > m_tran
calculators map
Definition ParallelEclipseState.hpp:132
std::map< std::string, Fieldprops::FieldData< int > > m_intProps
Map of integer properties in process-local compressed indices.
Definition ParallelEclipseState.hpp:126
bool has_double(const std::string &keyword) const override
Check if a double property is available.
Definition ParallelEclipseState.cpp:228
std::vector< std::string > fip_regions() const override
Returns a list of registered FIP regions.
Definition ParallelEclipseState.cpp:234
std::vector< int > actnum() const override
Returns actnum vector.
Definition ParallelEclipseState.cpp:60
std::vector< double > porv(bool global=false) const override
Returns the pore volume vector.
Definition ParallelEclipseState.cpp:77
std::vector< double > get_global_double(const std::string &keyword) const override
Returns a double property using global cartesian indices.
Definition ParallelEclipseState.cpp:179
friend class PropsDataHandle
Friend to set up props.
Definition ParallelEclipseState.hpp:47
bool has_int(const std::string &keyword) const override
Check if an integer property is available.
Definition ParallelEclipseState.cpp:222
std::function< int(const int)> m_local2Global
mapping from local to global cartesian indices
Definition ParallelEclipseState.hpp:131
std::vector< int > get_global_int(const std::string &keyword) const override
Returns an int property using global cartesian indices.
Definition ParallelEclipseState.cpp:121
const std::vector< double > & get_double(const std::string &keyword) const override
Returns a double property using compressed indices.
Definition ParallelEclipseState.cpp:157
void reset_actnum(const std::vector< int > &actnum) override
Reset the actnum vector.
Definition ParallelEclipseState.cpp:69
FieldPropsManager & m_manager
Underlying field property manager (only used on root process).
Definition ParallelEclipseState.hpp:128
std::map< std::string, Fieldprops::FieldData< double > > m_doubleProps
Map of double properties in process-local compressed indices.
Definition ParallelEclipseState.hpp:127
Parallel::Communication m_comm
Collective communication handler.
Definition ParallelEclipseState.hpp:129
const std::vector< int > & get_int(const std::string &keyword) const override
Returns an int property using compressed indices.
Definition ParallelEclipseState.cpp:99
std::function< int(void)> m_activeSize
active size function of the grid
Definition ParallelEclipseState.hpp:130
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition BlackoilPhases.hpp:27