opm-common
Loading...
Searching...
No Matches
Opm::EclipseGridLGR Class Reference

Specialized Class to describe LGR refined cells. More...

#include <EclipseGrid.hpp>

Inheritance diagram for Opm::EclipseGridLGR:
Opm::EclipseGrid Opm::GridDims

Public Types

using vec_size_t = std::vector<std::size_t>

Public Member Functions

 EclipseGridLGR (const std::string &self_label, const std::string &father_label_, std::size_t nx, std::size_t ny, std::size_t nz, const vec_size_t &father_lgr_index, const std::array< int, 3 > &low_fatherIJK_, const std::array< int, 3 > &up_fatherIJK_)
const vec_size_t & getFatherGlobalID () const
void save (Opm::EclIO::EclOutput &, const Opm::UnitSystem &) const
void set_lgr_global_counter (std::size_t counter)
const vec_size_t & get_father_global () const
std::optional< std::reference_wrapper< EclipseGridLGR > > get_child_LGR_cell (const std::string &lgr_tag) const
std::vector< int > save_hostnum (void) const
int get_hostnum (std::size_t global_index) const
std::vector< int > getLGRCell_global_father (const EclipseGrid &father_grid) const
std::vector< double > getLGRCell_all_depth (const EclipseGrid &father_grid) const
void get_label_child_to_top_father (std::vector< std::reference_wrapper< const std::string > > &list) const
void get_global_index_child_to_top_father (std::vector< std::size_t > &list, std::size_t i, std::size_t j, std::size_t k) const
void get_global_index_child_to_top_father (std::vector< std::size_t > &list, std::size_t global_ind) const
void set_hostnum (const std::vector< int > &)
const std::array< int, 3 > & get_low_fatherIJK () const
const std::string & get_father_label () const
const std::array< int, 3 > & get_up_fatherIJK () const
void set_lgr_refinement (const std::string &lgr_tag, const std::vector< double > &coord, const std::vector< double > &zcorn) override
 Sets Local Grid Refinement for the EclipseGridLGR.
void set_lgr_refinement (const std::vector< double > &, const std::vector< double > &)
void perform_refinement (const std::vector< double > &coord, const std::vector< double > &zcorn, const std::array< int, 3 > &parent_nxyz)
Public Member Functions inherited from Opm::EclipseGrid
 EclipseGrid (const std::string &filename)
 Will create an EclipseGrid instance based on an existing GRID/EGRID file.
 EclipseGrid (const EclipseGrid &src, const std::vector< int > &actnum)
 EclipseGrid (const EclipseGrid &src, const double *zcorn, const std::vector< int > &actnum)
 EclipseGrid (size_t nx, size_t ny, size_t nz, double dx=1.0, double dy=1.0, double dz=1.0, double top=0.0)
 EclipseGrid (const GridDims &gd)
 EclipseGrid (const std::array< int, 3 > &dims, const std::vector< double > &coord, const std::vector< double > &zcorn, const int *actnum=nullptr)
 EclipseGrid (const Deck &deck, const int *actnum=nullptr)
 EclipseGrid ignores ACTNUM in Deck, and therefore needs ACTNUM explicitly.
size_t getNumActive () const
bool allActive () const
size_t activeIndex (size_t i, size_t j, size_t k) const
size_t activeIndex (size_t globalIndex) const
size_t getTotalActiveLGR () const
size_t getActiveIndexLGR (const std::string &label, size_t i, size_t j, size_t k) const
size_t getActiveIndexLGR (const std::string &label, size_t localIndex) const
size_t activeIndexLGR (const std::string &label, size_t i, size_t j, size_t k) const
size_t activeIndexLGR (const std::string &label, size_t localIndex) const
size_t getActiveIndex (size_t i, size_t j, size_t k) const
const std::vector< std::size_t > & get_print_order_lgr () const
std::size_t get_lgr_cell_index (const std::string &lgr_tag) const
size_t getActiveIndex (size_t globalIndex) const
std::vector< std::string > get_all_lgr_labels () const
const std::string & get_lgr_labels_by_number (std::size_t num) const
const std::vector< std::string > & get_all_labels () const
const std::string & get_lgr_tag () const
std::vector< GridDims > get_lgr_children_gridim () const
void assertIndexLGR (size_t localIndex) const
void assertLabelLGR (const std::string &label) const
void save (const std::string &filename, bool formatted, const std::vector< Opm::NNCdata > &nnc, const Opm::UnitSystem &units) const
void save (const std::string &filename, bool formatted, const NNCCollection &nnc_col, const Opm::UnitSystem &units) const
void init_children_host_cells (bool logical=true)
void init_children_host_cells_logical (void)
void init_children_host_cells_geometrical (void)
std::array< int, 3 > getCellSubdivisionRatioLGR (const std::string &lgr_tag, std::array< int, 3 > acum={1, 1, 1}) const
void perform_refinement ()
size_t getGlobalIndex (size_t active_index) const
 Observe: the input argument is assumed to be in the space [0,num_active).
bool circle () const
bool isPinchActive () const
double getPinchThresholdThickness () const
PinchMode getPinchOption () const
PinchMode getMultzOption () const
PinchMode getPinchGapMode () const
double getPinchMaxEmptyGap () const
MinpvMode getMinpvMode () const
const std::vector< double > & getMinpvVector () const
template<typename T>
std::vector< T > compressedVector (const std::vector< T > &input_vector) const
const std::vector< int > & getActiveMap () const
 Will return a vector a length num_active; where the value of each element is the corresponding global index.
void init_lgr_cells (const LgrCollection &lgr_input)
void create_lgr_cells_tree (const LgrCollection &)
std::tuple< std::array< double, 3 >, std::array< double, 3 >, std::array< double, 3 > > getCellAndBottomCenterNormal (size_t globalIndex) const
 get cell center, and center and normal of bottom face
std::array< double, 3 > getCellCenter (size_t i, size_t j, size_t k) const
std::array< double, 3 > getCellCenter (size_t globalIndex) const
std::array< double, 3 > getCornerPos (size_t i, size_t j, size_t k, size_t corner_index) const
const std::vector< double > & activeVolume () const
double getCellVolume (size_t globalIndex) const
double getCellVolume (size_t i, size_t j, size_t k) const
double getCellThickness (size_t globalIndex) const
double getCellThickness (size_t i, size_t j, size_t k) const
std::array< double, 3 > getCellDims (size_t i, size_t j, size_t k) const
std::array< double, 3 > getCellDims (size_t globalIndex) const
bool cellActive (size_t globalIndex) const
bool cellActive (size_t i, size_t j, size_t k) const
bool cellActiveAfterMINPV (size_t i, size_t j, size_t k, double cell_porv) const
bool is_lgr () const
std::array< double, 3 > getCellDimensions (size_t i, size_t j, size_t k) const
bool isCellActive (size_t i, size_t j, size_t k) const
bool isValidCellGeomtry (const std::size_t globalIndex, const UnitSystem &usys) const
 Whether or not given cell has a valid cell geometry.
double getCellDepth (size_t i, size_t j, size_t k) const
double getCellDepth (size_t globalIndex) const
ZcornMapper zcornMapper () const
const std::vector< double > & getCOORD () const
const std::vector< double > & getZCORN () const
const std::vector< int > & getACTNUM () const
const std::optional< MapAxes > & getMapAxes () const
const std::map< size_t, std::array< int, 2 > > & getAquiferCellTabnums () const
size_t fixupZCORN ()
size_t getZcornFixed ()
void resetACTNUM ()
void resetACTNUM (const std::vector< int > &actnum)
void setMINPVV (const std::vector< double > &minpvv)
 Sets MINPVV if MINPV and MINPORV are not used.
bool equal (const EclipseGrid &other) const
EclipseGridLGRgetLGRCell (std::size_t index)
const EclipseGridLGRgetLGRCell (std::size_t index) const
const EclipseGridLGRgetLGRCell (const std::string &lgr_tag) const
int getLGR_global_father (std::size_t global_index, const std::string &lgr_tag) const
int getLGR_father (std::size_t i, std::size_t j, std::size_t k, const std::string &lgr_tag) const
int getLGR_father (std::size_t global_index, const std::string &lgr_tag) const
std::array< int, 3 > getLGR_fatherIJK (std::size_t i, std::size_t j, std::size_t k, const std::string &lgr_tag) const
std::size_t getGlobalIndex (std::size_t i, std::size_t j, std::size_t k) const
Public Member Functions inherited from Opm::GridDims
 GridDims (const std::array< int, 3 > &xyz)
 GridDims (std::size_t nx, std::size_t ny, std::size_t nz)
 GridDims (const Deck &deck)
std::size_t getNX () const
std::size_t getNY () const
std::size_t getNZ () const
std::size_t operator[] (int dim) const
std::array< int, 3 > getNXYZ () const
std::size_t getGlobalIndex (std::size_t i, std::size_t j, std::size_t k) const
std::array< int, 3 > getIJK (std::size_t globalIndex) const
std::size_t getCartesianSize () const
void assertGlobalIndex (std::size_t globalIndex) const
void assertIJK (std::size_t i, std::size_t j, std::size_t k) const
bool operator== (const GridDims &data) const
template<class Serializer>
void serializeOp (Serializer &serializer)

Additional Inherited Members

Static Public Member Functions inherited from Opm::EclipseGrid
static bool hasGDFILE (const Deck &deck)
static bool hasRadialKeywords (const Deck &deck)
static bool hasSpiderKeywords (const Deck &deck)
static bool hasCylindricalKeywords (const Deck &deck)
static bool hasCornerPointKeywords (const Deck &)
static bool hasCartesianKeywords (const Deck &)
static bool hasDVDEPTHZKeywords (const Deck &)
static bool hasEqualDVDEPTHZ (const Deck &)
static bool allEqual (const std::vector< double > &v)
Static Public Member Functions inherited from Opm::GridDims
static GridDims serializationTestObject ()
Public Attributes inherited from Opm::EclipseGrid
std::vector< EclipseGridLGRlgr_children_cells
Protected Member Functions inherited from Opm::EclipseGrid
void save_children (Opm::EclIO::EclOutput &egridfile, const Opm::UnitSystem &units) const
Protected Attributes inherited from Opm::EclipseGrid
std::size_t lgr_global_counter = 0
std::string lgr_label = "GLOBAL"
int lgr_level = 0
int lgr_level_father = 0
std::vector< std::string > lgr_children_labels
std::vector< std::size_t > lgr_active_index
std::vector< std::size_t > lgr_level_active_map
std::vector< std::string > all_lgr_labels
std::map< std::vector< std::size_t >, std::size_t > num_lgr_children_cells
std::vector< double > m_zcorn
std::vector< double > m_coord
std::vector< int > m_actnum
std::vector< std::size_t > m_print_order_lgr_cells
std::optional< std::vector< double > > m_input_zcorn
std::optional< std::vector< double > > m_input_coord
Protected Attributes inherited from Opm::GridDims
std::size_t m_nx
std::size_t m_ny
std::size_t m_nz

Detailed Description

Specialized Class to describe LGR refined cells.

Member Function Documentation

◆ set_lgr_refinement()

void Opm::EclipseGridLGR::set_lgr_refinement ( const std::string & lgr_tag,
const std::vector< double > & coord,
const std::vector< double > & zcorn )
overridevirtual

Sets Local Grid Refinement for the EclipseGridLGR.

Parameters
lgr_tagThe string that contains the name of a given LGR cell.
coordThe coordinates of a given LGR cell in CPG COORDSformat.
zcornThe z-coordinates values of a given LGR cell in CPG ZCORN format.

Reimplemented from Opm::EclipseGrid.


The documentation for this class was generated from the following files:
  • opm/input/eclipse/EclipseState/Grid/EclipseGrid.hpp
  • opm/input/eclipse/EclipseState/Grid/EclipseGrid.cpp