![]() |
Dune-Fufem 2.11-git
|
Loading...
Searching...
No Matches
boundarypatch.hh
Go to the documentation of this file.
60 return (factory_.wasInserted(i) and (indices_.find(factory_.insertionIndex(i))!=indices_.end()));
126 BoundaryPatchEnclosingVerticesProperty(const GridView& gridView, const Dune::BitSetVector<ncomp>& vertices) :
176 BoundaryPatchTouchingVerticesProperty(const GridView& gridView, const Dune::BitSetVector<1>& vertices) :
560 // ATTENTION: This implementation does only work if unitOuterNormal is constant on the intersection.
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 segment insertion indices.
Definition boundarypatch.hh:35
BoundaryPatchInsertionIndexProperty(const GridFactory &factory, int i)
Create property from GridFactory and a single insertion index.
Definition boundarypatch.hh:51
GridView::Intersection Intersection
Definition boundarypatch.hh:39
BoundaryPatchInsertionIndexProperty(const GridFactory &factory, const T &t)
Create property from GridFactory and container of insertion indices.
Definition boundarypatch.hh:44
Insertion property for segment indices.
Definition boundarypatch.hh:78
GridView::Intersection Intersection
Definition boundarypatch.hh:80
BoundaryPatchSegmentIndexProperty(const T &t)
Create property from a container of boundary segment indices.
Definition boundarypatch.hh:85
BoundaryPatchSegmentIndexProperty(int i)
Create property from a single boundary segment index.
Definition boundarypatch.hh:92
Insertion property for vertex vector.
Definition boundarypatch.hh:118
GridView::Intersection Intersection
Definition boundarypatch.hh:122
BoundaryPatchEnclosingVerticesProperty(const GridView &gridView, const Dune::BitSetVector< ncomp > &vertices)
Create property from a marker vector.
Definition boundarypatch.hh:126
Insertion property for vertex vector.
Definition boundarypatch.hh:168
BoundaryPatchTouchingVerticesProperty(const GridView &gridView, const Dune::BitSetVector< 1 > &vertices)
Create property from a marker vector.
Definition boundarypatch.hh:176
GridView::Intersection Intersection
Definition boundarypatch.hh:172
BoundaryPatch()=default
void clear()
Clear the boundary patch, but don't disconnect it from the GridView.
Definition boundarypatch.hh:310
void addFace(const IntersectionIterator &nIt)
Add a boundary face to the patch.
Definition boundarypatch.hh:326
void addFace(const Intersection &nIt)
Add a boundary face to the patch.
Definition boundarypatch.hh:331
void addFace(const Element &en, int fIdx)
Add a boundary face to the patch.
Definition boundarypatch.hh:336
void getPatchBoundaryVertices(Dune::BitSetVector< 1 > &patchBoundary) const
Get the vertices which are on the boundary of the boundary patch.
Definition boundarypatch.hh:409
void getFaces(Dune::BitSetVector< 1 > &faces) const
Definition boundarypatch.hh:316
GridView::Grid::ctype area() const
Returns the area of the boundary patch.
Definition boundarypatch.hh:381
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:671
std::vector< Dune::FieldVector< double, dim > > getNormals() const
Return vertex unit normals.
Definition boundarypatch.hh:537
std::vector< int > makeGlobalToLocal() const
Definition boundarypatch.hh:653
typename GV::IntersectionIterator IntersectionIterator
Definition boundarypatch.hh:224
BoundaryPatch(const GridView &gridView, bool initialValue=false)
Constructor for a given grid view.
Definition boundarypatch.hh:246
int numFaces() const
Returns the number of faces in the surface.
Definition boundarypatch.hh:321
void setup(const GridView &gridView, const Dune::BitSetVector< blocksize > &vertices)
Setup for a given grid view and a bitfield.
Definition boundarypatch.hh:297
void insertFacesByProperty(const InsertionProperty &property)
Insert boundary faces filtered by an insertion property.
Definition boundarypatch.hh:346
void makeGlobalToLocal(std::vector< int > &globalToLocal) const
Definition boundarypatch.hh:649
BoundaryPatch(const GridView &gridView, const Dune::BitSetVector< blocksize > &vertices)
Construct boundary patch from given vertices.
Definition boundarypatch.hh:259
const Dune::BitSetVector< 1 > * getVertices() const
Definition boundarypatch.hh:395
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:699
void getPatchBoundaryEdges(Dune::BitSetVector< 1 > &patchBoundaryEdges) const
Get the edges which are on the boundary of the boundary patch.
Definition boundarypatch.hh:463
BoundaryPatch & operator=(BoundaryPatch &&)=default
bool contains(const IntersectionIterator &nIt) const
Return true if the BoundaryPatch contains a certain boundary face.
Definition boundarypatch.hh:360
void getNormals(std::vector< Dune::FieldVector< double, dim > > &normals) const
Return vertex unit normals.
Definition boundarypatch.hh:532
BoundaryPatch(const BoundaryPatch &)=default
std::vector< Dune::FieldVector< double, dim > > getLocalNormals() const
Return vertex unit normals corr. to local indices.
Definition boundarypatch.hh:599
int numVertices() const
Returns the number of vertices in the surface.
Definition boundarypatch.hh:517
void getVertices(Dune::BitSetVector< 1 > &vertices) const
Definition boundarypatch.hh:388
void setup(const GridView &gridView, bool insertAllBoundaryFaces=false)
Setup for a given grid view.
Definition boundarypatch.hh:282
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)
