![]() |
Dune-Fufem 2.12-git
|
Loading...
Searching...
No Matches
boundarypatch.hh
Go to the documentation of this file.
59 return (factory_.wasInserted(i) and (indices_.find(factory_.insertionIndex(i))!=indices_.end()));
125 BoundaryPatchEnclosingVerticesProperty(const GridView& gridView, const Dune::BitSetVector<ncomp>& vertices) :
175 BoundaryPatchTouchingVerticesProperty(const GridView& gridView, const Dune::BitSetVector<1>& vertices) :
490 // subIndex(e, refElement.subEntity(face,1,i,dim-1)) == subIndex(e.subEntity<1>(face), i, dim-1)
559 // ATTENTION: This implementation does only work if unitOuterNormal is constant on the intersection.
562 // subIndex(e, refElement.subEntity(inside,1,i,dim)) == subIndex(e.subEntity<1>(inside), i, dim)
real_type two_norm() const
size_type dim() const
virtual void operator()()=0
#define DUNE_THROW(E,...)
size_type count() const
size_type size() const
void resize(int n, bool v=bool())
void unsetAll()
auto size(GeometryType type) const
IndexType subIndex(const typename Traits::template Codim< cc >::Entity &e, int i, unsigned int codim) const
virtual unsigned int insertionIndex(const typename Codim< 0 >::Entity &entity) const
virtual bool wasInserted(const typename GridType::LeafIntersection &intersection) const
Insertion property for vertex vector.
Definition boundarypatch.hh:117
GridView::Intersection Intersection
Definition boundarypatch.hh:121
BoundaryPatchEnclosingVerticesProperty(const GridView &gridView, const Dune::BitSetVector< ncomp > &vertices)
Create property from a marker vector.
Definition boundarypatch.hh:125
BoundaryPatch()=default
void clear()
Clear the boundary patch, but don't disconnect it from the GridView.
Definition boundarypatch.hh:309
void addFace(const IntersectionIterator &nIt)
Add a boundary face to the patch.
Definition boundarypatch.hh:325
void addFace(const Intersection &nIt)
Add a boundary face to the patch.
Definition boundarypatch.hh:330
void addFace(const Element &en, int fIdx)
Add a boundary face to the patch.
Definition boundarypatch.hh:335
void getPatchBoundaryVertices(Dune::BitSetVector< 1 > &patchBoundary) const
Get the vertices which are on the boundary of the boundary patch.
Definition boundarypatch.hh:408
void getFaces(Dune::BitSetVector< 1 > &faces) const
Definition boundarypatch.hh:315
GridView::Grid::ctype area() const
Returns the area of the boundary patch.
Definition boundarypatch.hh:380
BoundaryPatch(BoundaryPatch &&)=default
BoundaryPatch & operator=(const BoundaryPatch &)=default
BoundaryPatch< GridView > addPatch(const BoundaryPatch< GridView > &patch)
Adds another patch in the sense that afterwards this patch contains all the vertices included in any ...
Definition boundarypatch.hh:670
std::vector< Dune::FieldVector< double, dim > > getNormals() const
Return vertex unit normals.
Definition boundarypatch.hh:536
std::vector< int > makeGlobalToLocal() const
Definition boundarypatch.hh:652
typename GV::IntersectionIterator IntersectionIterator
Definition boundarypatch.hh:223
BoundaryPatch(const GridView &gridView, bool initialValue=false)
Constructor for a given grid view.
Definition boundarypatch.hh:245
int numFaces() const
Returns the number of faces in the surface.
Definition boundarypatch.hh:320
void setup(const GridView &gridView, const Dune::BitSetVector< blocksize > &vertices)
Setup for a given grid view and a bitfield.
Definition boundarypatch.hh:296
void insertFacesByProperty(const InsertionProperty &property)
Insert boundary faces filtered by an insertion property.
Definition boundarypatch.hh:345
void makeGlobalToLocal(std::vector< int > &globalToLocal) const
Definition boundarypatch.hh:648
BoundaryPatch(const GridView &gridView, const Dune::BitSetVector< blocksize > &vertices)
Construct boundary patch from given vertices.
Definition boundarypatch.hh:258
const Dune::BitSetVector< 1 > * getVertices() const
Definition boundarypatch.hh:394
BoundaryPatch< GridView > intersect(const BoundaryPatch< GridView > &patch)
Determines the overlap of this boundary patch and another by reducing this patch to the common vertic...
Definition boundarypatch.hh:698
void getPatchBoundaryEdges(Dune::BitSetVector< 1 > &patchBoundaryEdges) const
Get the edges which are on the boundary of the boundary patch.
Definition boundarypatch.hh:462
BoundaryPatch & operator=(BoundaryPatch &&)=default
bool contains(const IntersectionIterator &nIt) const
Return true if the BoundaryPatch contains a certain boundary face.
Definition boundarypatch.hh:359
void getNormals(std::vector< Dune::FieldVector< double, dim > > &normals) const
Return vertex unit normals.
Definition boundarypatch.hh:531
BoundaryPatch(const BoundaryPatch &)=default
std::vector< Dune::FieldVector< double, dim > > getLocalNormals() const
Return vertex unit normals corr. to local indices.
Definition boundarypatch.hh:598
int numVertices() const
Returns the number of vertices in the surface.
Definition boundarypatch.hh:516
void getVertices(Dune::BitSetVector< 1 > &vertices) const
Definition boundarypatch.hh:387
void setup(const GridView &gridView, bool insertAllBoundaryFaces=false)
Setup for a given grid view.
Definition boundarypatch.hh:281
Insertion property for segment insertion indices.
Definition boundarypatch.hh:34
BoundaryPatchInsertionIndexProperty(const GridFactory &factory, int i)
Create property from GridFactory and a single insertion index.
Definition boundarypatch.hh:50
GridView::Intersection Intersection
Definition boundarypatch.hh:38
BoundaryPatchInsertionIndexProperty(const GridFactory &factory, const T &t)
Create property from GridFactory and container of insertion indices.
Definition boundarypatch.hh:43
Insertion property for segment indices.
Definition boundarypatch.hh:77
GridView::Intersection Intersection
Definition boundarypatch.hh:79
BoundaryPatchSegmentIndexProperty(const T &t)
Create property from a container of boundary segment indices.
Definition boundarypatch.hh:84
BoundaryPatchSegmentIndexProperty(int i)
Create property from a single boundary segment index.
Definition boundarypatch.hh:91
Insertion property for vertex vector.
Definition boundarypatch.hh:167
BoundaryPatchTouchingVerticesProperty(const GridView &gridView, const Dune::BitSetVector< 1 > &vertices)
Create property from a marker vector.
Definition boundarypatch.hh:175
GridView::Intersection Intersection
Definition boundarypatch.hh:171
Encapsulate the set of the boundary intersections of a GridView.
Definition boundary.hh:27
Encapsulate a subset of the boundary intersections of a GridView.
Definition domains/boundarypatch.hh:37
std::size_t size() const
Returns the number of faces in the surface.
Definition domains/boundarypatch.hh:130
const GridView & gridView() const
Return reference to the carrier grid view.
Definition domains/boundarypatch.hh:197
iterator end() const
Return iterator pointing after last boundary patch face.
Definition domains/boundarypatch.hh:122
void insertFace(const Element &element, int faceIndex)
Insert a boundary face into the patch.
Definition domains/boundarypatch.hh:98
bool isInitialized() const
Check if BoundaryPatch is initialized.
Definition domains/boundarypatch.hh:205
iterator begin() const
Return iterator pointing to first boundary patch face.
Definition domains/boundarypatch.hh:114
T end(T... args)
T find(T... args)
T insert(T... args)
T size(T... args)
