3#ifndef DUNE_GRIDGLUE_MERGING_MERGER_HH
4#define DUNE_GRIDGLUE_MERGING_MERGER_HH
8#include <dune/common/fvector.hh>
9#include <dune/geometry/type.hh>
23template <
class ctype,
int gr
id1Dim,
int gr
id2Dim,
int dimworld>
52 virtual void build(
const std::vector<Dune::FieldVector<ctype,dimworld> >& grid1_coords,
53 const std::vector<unsigned int>& grid1_elements,
54 const std::vector<Dune::GeometryType>& grid1_element_types,
55 const std::vector<Dune::FieldVector<ctype,dimworld> >& grid2_coords,
56 const std::vector<unsigned int>& grid2_elements,
57 const std::vector<Dune::GeometryType>& grid2_element_types) = 0;
78 unsigned int parents(
unsigned int idx)
const {
89 unsigned int parent(
unsigned int idx,
unsigned int parId = 0)
const
Definition: gridglue.hh:35
Coordinate corner(unsigned c)
Definition: projection_impl.hh:22
Definition: intersectionlist.hh:132
Abstract base for all classes that take extracted grids and build sets of intersections.
Definition: merger.hh:25
unsigned int parent(unsigned int idx, unsigned int parId=0) const
get index of grid-n's parent simplex for given merged grid simplex
Definition: merger.hh:89
Dune::FieldVector< ctype, dimworld > WorldCoords
the coordinate type used in this interface
Definition: merger.hh:35
Dune::FieldVector< ctype, grid1Dim > Grid1Coords
the local coordinate type for the grid1 coordinates
Definition: merger.hh:29
unsigned int counter
Counts the number of times the computeIntersection method has been called.
Definition: merger.hh:112
auto parentLocal(unsigned int idx, unsigned int corner, unsigned int parId=0) const
get the grid-n parent's simplex local coordinates for a particular merged grid simplex corner (parent...
Definition: merger.hh:103
virtual void build(const std::vector< Dune::FieldVector< ctype, dimworld > > &grid1_coords, const std::vector< unsigned int > &grid1_elements, const std::vector< Dune::GeometryType > &grid1_element_types, const std::vector< Dune::FieldVector< ctype, dimworld > > &grid2_coords, const std::vector< unsigned int > &grid2_elements, const std::vector< Dune::GeometryType > &grid2_element_types)=0
builds the merged grid
unsigned int nSimplices() const
get the number of simplices in the merged grid The indices are then in 0..nSimplices()-1
Definition: merger.hh:62
virtual std::shared_ptr< IntersectionList > intersectionList() const =0
unsigned int parents(unsigned int idx) const
Definition: merger.hh:78
Dune::FieldVector< ctype, grid2Dim > Grid2Coords
the local coordinate type for the grid2 coordinates
Definition: merger.hh:32