3 #ifndef DUNE_GRIDGLUE_MERGING_OVERLAPPINGMERGE_HH 4 #define DUNE_GRIDGLUE_MERGING_OVERLAPPINGMERGE_HH 11 #include <dune/common/fmatrix.hh> 12 #include <dune/common/fvector.hh> 13 #include <dune/common/version.hh> 15 #include <dune/geometry/referenceelements.hh> 16 #include <dune/geometry/multilineargeometry.hh> 18 #include <dune/grid/common/grid.hh> 33 template<
int dim1,
int dim2,
int dimworld,
typename T =
double>
69 const std::vector<Dune::FieldVector<T,dimworld> >& grid1ElementCorners,
70 std::bitset<(1<<dim1)>& neighborIntersects1,
71 unsigned int grid1Index,
72 const Dune::GeometryType& grid2ElementType,
73 const std::vector<Dune::FieldVector<T,dimworld> >& grid2ElementCorners,
74 std::bitset<(1<<dim2)>& neighborIntersects2,
75 unsigned int grid2Index,
79 bool inPlane(std::vector<FieldVector<T,dimworld> >& points);
89 #endif // DUNE_GRIDGLUE_MERGING_OVERLAPPINGMERGE_HH Computing overlapping grid intersections for grids of different dimensions.
Definition: overlappingmerge.hh:34
Definition: gridglue.hh:33
StandardMerge< T, dim1, dim2, dimworld >::RemoteSimplicialIntersection RemoteSimplicialIntersection
Definition: overlappingmerge.hh:55
Dune::FieldVector< T, dimworld > WorldCoords
the coordinate type used in this interface
Definition: overlappingmerge.hh:46
IteratorRange<... > intersections(const GridGlue<... > &glue, const Reverse<... > &reverse=!reversed)
Iterate over all intersections of a GridGlue.
Common base class for many merger implementations: produce pairs of entities that may intersect...
Definition: standardmerge.hh:54
Common base class for many merger implementations: produce pairs of entities that may intersect...
T ctype
the numeric type used in this interface
Definition: overlappingmerge.hh:43
OverlappingMerge()
the coordinate type used in this interface
Definition: overlappingmerge.hh:51
void computeIntersections(const Dune::GeometryType &grid1ElementType, const std::vector< Dune::FieldVector< T, dimworld > > &grid1ElementCorners, std::bitset<(1<< dim1)> &neighborIntersects1, unsigned int grid1Index, const Dune::GeometryType &grid2ElementType, const std::vector< Dune::FieldVector< T, dimworld > > &grid2ElementCorners, std::bitset<(1<< dim2)> &neighborIntersects2, unsigned int grid2Index, std::vector< RemoteSimplicialIntersection > &intersections)
Compute the intersection between two overlapping elements.
Definition: overlappingmerge.cc:32