1#ifndef OPM_POLYHEDRALCARTESIANINDEXMAPPER_HEADER
2#define OPM_POLYHEDRALCARTESIANINDEXMAPPER_HEADER
4#include <opm/grid/common/CartesianIndexMapper.hpp>
5#include <opm/grid/polyhedralgrid.hh>
9 template<
int dim,
int dimworld,
typename coord_t >
15 const int cartesianSize_;
17 int computeCartesianSize()
const
20 for(
int d=1; d<dim; ++d )
25 static const int dimension = Grid :: dimension ;
29 cartesianSize_( computeCartesianSize() )
34 return grid_.logicalCartesianSize();
39 return cartesianSize_;
44 return grid_.size( 0 );
49 assert( compressedElementIndex >= 0 && compressedElementIndex <
compressedSize() );
50 return grid_.globalCell()[ compressedElementIndex ];
53 void cartesianCoordinate(
const int compressedElementIndex, std::array<int,dimension>& coords)
const
58 for(
int d=0; d<dimension-2; ++d )
int cartesianIndex(const int) const
return index of the cells in the logical Cartesian grid
Definition CartesianIndexMapper.hpp:47
int compressedSize() const
return number of cells in the active grid
Definition CartesianIndexMapper.hpp:41
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 cartesianSize() const
return total number of cells in the logical Cartesian grid
Definition CartesianIndexMapper.hpp:35
void cartesianCoordinate(const int, std::array< int, dimension > &) const
return Cartesian coordinate, i.e.
Definition CartesianIndexMapper.hpp:53
identical grid wrapper
Definition grid.hh:159
The namespace Dune is the main namespace for all Dune code.
Definition CartesianIndexMapper.hpp:10