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>
14#include <dune/geometry/referenceelements.hh>
15#include <dune/geometry/multilineargeometry.hh>
17#include <dune/grid/common/grid.hh>
32template<
int dim1,
int dim2,
int dimworld,
typename T =
double>
68 const std::vector<Dune::FieldVector<T,dimworld> >& grid1ElementCorners,
69 std::bitset<(1<<dim1)>& neighborIntersects1,
70 unsigned int grid1Index,
71 const Dune::GeometryType& grid2ElementType,
72 const std::vector<Dune::FieldVector<T,dimworld> >& grid2ElementCorners,
73 std::bitset<(1<<dim2)>& neighborIntersects2,
74 unsigned int grid2Index,
78 bool inPlane(std::vector<FieldVector<T,dimworld> >& points);
Common base class for many merger implementations: produce pairs of entities that may intersect.
Definition gridglue.hh:30
IteratorRange<... > intersections(const GridGlue<... > &glue, const Reverse<... > &reverse=!reversed)
Iterate over all intersections of a GridGlue.
Computing overlapping grid intersections for grids of different dimensions.
Definition overlappingmerge.hh:35
StandardMerge< T, dim1, dim2, dimworld >::RemoteSimplicialIntersection RemoteSimplicialIntersection
Definition overlappingmerge.hh:54
OverlappingMerge()
the coordinate type used in this interface
Definition overlappingmerge.hh:50
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
Dune::FieldVector< T, dimworld > WorldCoords
the coordinate type used in this interface
Definition overlappingmerge.hh:45
T ctype
the numeric type used in this interface
Definition overlappingmerge.hh:42
Common base class for many merger implementations: produce pairs of entities that may intersect.
Definition standardmerge.hh:55
Definition standardmerge.hh:80