1 #ifndef OPM_CPGRIDCARTESIANINDEXMAPPER_HEADER 2 #define OPM_CPGRIDCARTESIANINDEXMAPPER_HEADER 8 #include <opm/grid/common/CartesianIndexMapper.hpp> 9 #include <opm/grid/CpGrid.hpp> 21 const int cartesianSize_;
23 int computeCartesianSize()
const 34 cartesianSize_( computeCartesianSize() )
44 return grid_.
currentData().front()->logicalCartesianSize();
49 return cartesianSize_;
59 assert( compressedElementIndex >= 0 && compressedElementIndex <
compressedSize() );
60 return grid_.
globalCell()[ compressedElementIndex ];
63 void cartesianCoordinate(
const int compressedElementIndex, std::array<int,dimension>& coords)
const 65 grid_.
getIJK( compressedElementIndex, coords );
const std::vector< std::shared_ptr< Dune::cpgrid::CpGridData > > & currentData() const
Returns either data_ or distributed_data_(if non empty).
Definition: CpGrid.cpp:662
const std::array< int, dimension > & cartesianDimensions() const
return Cartesian dimensions, i.e.
Definition: CartesianIndexMapper.hpp:28
CartesianIndexMapper(const Grid &)
constructor taking grid
Definition: CartesianIndexMapper.hpp:22
int cartesianIndex(const int) const
return index of the cells in the logical Cartesian grid
Definition: CartesianIndexMapper.hpp:47
The namespace Dune is the main namespace for all Dune code.
Definition: CartesianIndexMapper.hpp:9
const std::vector< int > & globalCell() const
Retrieve mapping from internal ("compressed") active grid cells to external ("uncompressed") cells...
Definition: CpGrid.cpp:681
[ provides Dune::Grid ]
Definition: CpGrid.hpp:201
static const int dimension
dimension of the grid
Definition: CartesianIndexMapper.hpp:19
int cartesianSize() const
return total number of cells in the logical Cartesian grid
Definition: CartesianIndexMapper.hpp:35
int compressedSize() const
return number of cells in the active grid
Definition: CartesianIndexMapper.hpp:41
void cartesianCoordinate(const int, std::array< int, dimension > &) const
return Cartesian coordinate, i.e.
Definition: CartesianIndexMapper.hpp:53
Interface class to access the logical Cartesian grid as used in industry standard simulator decks...
Definition: CartesianIndexMapper.hpp:15
void getIJK(const int c, std::array< int, 3 > &ijk) const
Extract Cartesian index triplet (i,j,k) of an active cell.
Definition: CpGrid.cpp:747