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> 60 std::vector<int>
actnum()
const override;
67 std::vector<double>
porv(
bool global =
false)
const override;
71 const std::vector<int>&
get_int(
const std::string& keyword)
const override;
75 const std::vector<double>&
get_double(
const std::string& keyword)
const override;
80 std::vector<int>
get_global_int(
const std::string& keyword)
const override;
89 bool has_int(
const std::string& keyword)
const override;
93 bool has_double(
const std::string& keyword)
const override;
96 std::vector<std::string>
fip_regions()
const override;
112 m_activeSize = [mapper]() {
return mapper->compressedSize( 0); };
113 m_local2Global = [mapper](
int localIdx) {
return mapper->cartesianIndex(localIdx, 0); };
116 bool tran_active(
const std::string& keyword)
const override;
118 void apply_tran(
const std::string& keyword, std::vector<double>& trans)
const override;
120 void copyTran(
const FieldPropsManager& from)
125 template<
class Serializer>
126 void serializeOp(Serializer& serializer)
132 std::map<std::string, Fieldprops::FieldData<int>>
m_intProps;
138 std::unordered_map<std::string, Fieldprops::TranCalculator>
m_tran;
183 const FieldPropsManager&
fieldProps()
const override;
210 bool m_parProps =
false;
212 Parallel::Communication m_comm;
217 #endif // PARALLEL_ECLIPSE_STATE_HPP friend class PropsDataHandle
Friend to set up props.
Definition: ParallelEclipseState.hpp:47
std::vector< int > actnum() const override
Returns actnum vector.
Definition: ParallelEclipseState.cpp:60
std::unordered_map< std::string, Fieldprops::TranCalculator > m_tran
calculators map
Definition: ParallelEclipseState.hpp:138
void switchToDistributedProps()
Switch to distributed field properies.
Definition: ParallelEclipseState.cpp:316
void switchToGlobalProps()
Switch to global field properties.
Definition: ParallelEclipseState.cpp:310
bool has_int(const std::string &keyword) const override
Check if an integer property is available.
Definition: ParallelEclipseState.cpp:222
Parallel::Communication m_comm
Collective communication handler.
Definition: ParallelEclipseState.hpp:135
std::vector< int > get_global_int(const std::string &keyword) const override
Returns an int property using global cartesian indices.
Definition: ParallelEclipseState.cpp:121
std::vector< double > porv(bool global=false) const override
Returns the pore volume vector.
Definition: ParallelEclipseState.cpp:77
std::vector< std::string > fip_regions() const override
Returns a list of registered FIP regions.
Definition: ParallelEclipseState.cpp:234
const FieldPropsManager & globalFieldProps() const override
Returns a const ref to global field properties.
Definition: ParallelEclipseState.cpp:280
std::vector< double > get_global_double(const std::string &keyword) const override
Returns a double property using global cartesian indices.
Definition: ParallelEclipseState.cpp:179
Parallel frontend to the EclipseState.
Definition: ParallelEclipseState.hpp:153
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition: blackoilbioeffectsmodules.hh:45
const std::vector< double > & get_double(const std::string &keyword) const override
Returns a double property using compressed indices.
Definition: ParallelEclipseState.cpp:157
friend class PropsDataHandle
Friend to set up props.
Definition: ParallelEclipseState.hpp:156
void resetCartesianMapper(const T *mapper)
Resets the underlying cartesian mapper This has to be the cartesian mapper of the distributed grid...
Definition: ParallelEclipseState.hpp:104
std::map< std::string, Fieldprops::FieldData< double > > m_doubleProps
Map of double properties in process-local compressed indices.
Definition: ParallelEclipseState.hpp:133
Parallel frontend to the field properties.
Definition: ParallelEclipseState.hpp:42
const FieldPropsManager & fieldProps() const override
Returns a const ref to current field properties.
Definition: ParallelEclipseState.cpp:268
std::function< int(const int)> m_local2Global
mapping from local to global cartesian indices
Definition: ParallelEclipseState.hpp:137
const EclipseGrid & getInputGrid() const override
Returns a const ref to the eclipse grid.
Definition: ParallelEclipseState.cpp:302
void resetCartesianMapper(const T *mapper)
Resets the underlying cartesian mapper This has to be the cartesian mapper of the distributed grid...
Definition: ParallelEclipseState.hpp:205
FieldPropsManager & m_manager
Underlying field property manager (only used on root process).
Definition: ParallelEclipseState.hpp:134
ParallelFieldPropsManager(FieldPropsManager &manager)
Constructor.
Definition: ParallelEclipseState.cpp:46
ParallelEclipseState(Parallel::Communication comm)
Default constructor.
Definition: ParallelEclipseState.cpp:248
void computeFipRegionStatistics() override
Compute basic descriptive statistics about all FIP region sets.
Definition: ParallelEclipseState.cpp:288
void reset_actnum(const std::vector< int > &actnum) override
Reset the actnum vector.
Definition: ParallelEclipseState.cpp:69
bool has_double(const std::string &keyword) const override
Check if a double property is available.
Definition: ParallelEclipseState.cpp:228
std::function< int(void)> m_activeSize
active size function of the grid
Definition: ParallelEclipseState.hpp:136
std::map< std::string, Fieldprops::FieldData< int > > m_intProps
Map of integer properties in process-local compressed indices.
Definition: ParallelEclipseState.hpp:132
const std::vector< int > & get_int(const std::string &keyword) const override
Returns an int property using compressed indices.
Definition: ParallelEclipseState.cpp:99