36#ifndef OPM_DEFAULTGEOMETRYPOLICY_HEADER
37#define OPM_DEFAULTGEOMETRYPOLICY_HEADER
39#include "EntityRep.hpp"
48 template<
int mydim,
int dim>
55 template<
int mydim,
int dim>
57 friend class ::Dune::CpGrid;
71 : cell_geom_(cell_geom), face_geom_(face_geom), point_geom_(point_geom)
83 static_assert(codim != 2,
"");
84 return geomVector(std::integral_constant<int,codim>());
94 EntityVariable<cpgrid::Geometry<3, 3>, 0>&
geomVector(
const std::integral_constant<int, 0>&)
99 const EntityVariable<cpgrid::Geometry<2, 3>, 1>&
geomVector(
const std::integral_constant<int, 1>&)
const
104 EntityVariable<cpgrid::Geometry<2, 3>, 1>&
geomVector(
const std::integral_constant<int, 1>&)
111 const EntityVariable<cpgrid::Geometry<0, 3>, 3>&
geomVector(
const std::integral_constant<int, codim>&)
const
113 static_assert(codim==3,
"Codim has to be 3");
117 EntityVariable<cpgrid::Geometry<0, 3>, 3>&
geomVector(
const std::integral_constant<int, codim>&)
119 static_assert(codim==3,
"Codim has to be 3");
122 EntityVariable<cpgrid::Geometry<3, 3>, 0> cell_geom_;
123 EntityVariable<cpgrid::Geometry<2, 3>, 1> face_geom_;
124 EntityVariable<cpgrid::Geometry<0, 3>, 3> point_geom_;
Struct that hods all the data needed to represent a Cpgrid.
Definition: CpGridData.hpp:122
Definition: DefaultGeometryPolicy.hpp:53
const EntityVariable< cpgrid::Geometry< 3 - codim, 3 >, codim > & geomVector() const
Definition: DefaultGeometryPolicy.hpp:81
DefaultGeometryPolicy()
Definition: DefaultGeometryPolicy.hpp:61
DefaultGeometryPolicy(const EntityVariable< cpgrid::Geometry< 3, 3 >, 0 > &cell_geom, const EntityVariable< cpgrid::Geometry< 2, 3 >, 1 > &face_geom, const EntityVariable< cpgrid::Geometry< 0, 3 >, 3 > &point_geom)
Definition: DefaultGeometryPolicy.hpp:68
A class design to hold a variable with a value for each entity of the given codimension,...
Definition: EntityRep.hpp:267
This class encapsulates geometry for vertices, intersections, and cells.
Definition: Geometry.hpp:74
Copyright 2019 Equinor AS.
Definition: CartesianIndexMapper.hpp:10