Public Types |
Public Member Functions |
Static Public Attributes |
Protected Attributes |
List of all members
Dune::cpgrid::Iterator< cd, pitype > Class Template Reference
Inheritance diagram for Dune::cpgrid::Iterator< cd, pitype >:
![]()
Detailed Descriptiontemplate<int cd, PartitionIteratorType pitype> class Dune::cpgrid::Iterator< cd, pitype > Iterator intended to be used as LeafIterator and LevelIterator (no difference due to no adaptivity) for CpGrid. This could have been a random access iterator, perhaps we will use a facade to do this later. Member Typedef Documentation◆ ctype
◆ EntitySeed
◆ Geometry
◆ HierarchicIterator
◆ LeafIntersectionIterator
◆ LevelIntersectionIterator
◆ LocalGeometry
◆ Reference
template<int cd, PartitionIteratorType pitype>
Member Enumeration Documentation◆ anonymous enum◆ anonymous enumConstructor & Destructor Documentation◆ Iterator()
template<int cd, PartitionIteratorType pitype>
References Dune::cpgrid::EntityRep< codim >::increment(), and Dune::cpgrid::EntityRep< codim >::index(). Member Function Documentation◆ father()
◆ geometry()
Return the geometry of the entity (does not depend on its orientation). ◆ geometryInFather()
Return LocalGeometry representing the embedding of the entity into its father (when hasFather() is true). Map from the entity's reference element into the reference element of its father. Currently, LGR is built via refinement of a block-shaped patch from the coarse grid. So the LocalGeometry of an entity coming from the LGR is one of the refined cells of the unit cube, with suitable amount of cells in each direction. ◆ getIdxInParentCell()
◆ getLevelCartesianIdx()
Get Cartesian Index in the level grid view where the Entity was born. ◆ getLevelElem()
Get equivalent element on the level grid where the entity was born, if grid = leaf-grid-view. Otherwise, return itself. ◆ getOrigin()
Returns (1) parent entity in the level-grid the parent cell was born, if the entity was born in any LGR. (2) if the entity has no father, and is a leaf-grid-view entity, it returns the equivalent element on the level that it was born. Namely, for coarse cells on the leaf never involved in any refinement process, we get the equivalent entity in the GLOBAL grid (level 0). Notice that if it's a refined cell on the leaf, it does have a father, in that case, this method returns the father entity. (3) Otherwise, returns itself. Notice that if the element is a refined one, this method returns the father() entity. For a coarse cell never involved in any refinement, if it's also a leaf-grid-cell, it returns the equivalent cell from level 0. Otherwise, it returns itself, which means that its grid is level 0 and the entity itself is already its "origin". ◆ hasBoundaryIntersections()
Returns true if any of my intersections are on the boundary. Implementation note: This is a slow, computed, function. Could be speeded up by putting boundary info in the CpGrid class. ◆ hasFather()
ONLY FOR CELLS (Entity<0>) Check if the entity comes from an LGR, i.e., it has been created via refinement from coarser level. @TODO: When distributed_data_ is not empty, check whether the father element exists on the local process, which can be used to test whether it is safe to call father. ◆ hbegin()
Iterator begin over the children. [If requested, also over descendants more than one generation away.]. ◆ hend()
Iterator end over the children/beyond last child iterator. Dummy beyond last child iterator. ◆ ileafbegin()
Start leaf-iterator for the cell-cell intersections of this entity. ◆ ileafend()
End leaf-iterator for the cell-cell intersections of this entity. ◆ ilevelbegin()
Start level-iterator for the cell-cell intersections of this entity. ◆ ilevelend()
End level-iterator for the cell-cell intersections of this entity. ◆ impl() [1/2]
◆ impl() [2/2]
Access the actual implementation class behind Entity interface class. ◆ increment()
template<int codim>
Increments the entityrep's index() by one. Referenced by Dune::cpgrid::Iterator< cd, pitype >::Iterator(), and Dune::cpgrid::Iterator< cd, pitype >::operator++(). ◆ index()
template<int codim>
The (positive) index of an entity. Not a Dune interface method.
Referenced by Dune::cpgrid::PointViaCellHandleWrapper< Handle >::gather(), Dune::cpgrid::Intersection::id(), Dune::cpgrid::LevelGlobalIdSet::id(), Dune::cpgrid::IndexSet::index(), Dune::cpgrid::Entity< codim >::isValid(), Dune::cpgrid::Iterator< cd, pitype >::Iterator(), Dune::cpgrid::OrientedEntityTable< codim_from, codim_to >::makeInverseRelation(), Dune::cpgrid::Iterator< cd, pitype >::operator++(), Dune::cpgrid::EntityRep< codim >::operator<(), Dune::cpgrid::EntityVariable< T, codim >::operator[](), Dune::cpgrid::SignedEntityVariable< T, codim >::operator[](), Dune::cpgrid::OrientedEntityTable< codim_from, codim_to >::operator[](), Dune::cpgrid::OrientedEntityTable< codim_from, codim_to >::printRelationMatrix(), Dune::cpgrid::OrientedEntityTable< codim_from, codim_to >::row(), Dune::cpgrid::OrientedEntityTable< codim_from, codim_to >::rowSize(), Dune::cpgrid::PointViaCellHandleWrapper< Handle >::scatter(), and Dune::cpgrid::PointViaCellHandleWrapper< Handle >::size(). ◆ isLeaf()
Check if the entity is in the leafview. @TODO: Modify the definition to cover serial and parallel cases. Serial: an element is a leaf <-> hbegin and hend return the same iterator Parallel: true <-> the element is a leaf entity of the global refinement hierarchy. ◆ isNew()
Returns true, if the entity has been created during the last call to adapt(). Dummy. ◆ isRegular()
Refinement is not defined for CpGrid. ◆ isValid()
isValid method for EntitySeed
◆ level()
Return the level of the entity in the grid hierarchy. Level = 0 represents the coarsest grid. ◆ mightVanish()
Returns true, if entity might disappear during the next call to adapt(). Currently, returns true if the element has been marked to be refined. Therefore, it "vanishes" in the sense that it gets replaced by its children. To be modified: When supporting coarsening, mightVanish should return true for all the "siblings" refined cells of one refined cell that got marked to be coarsened. ◆ operator!=() [1/2]
Inequality. ◆ operator!=() [2/2]
template<int codim>
Inequality operator.
References Dune::cpgrid::EntityRep< codim >::operator==(). ◆ operator*()
template<int cd, PartitionIteratorType pitype>
Const dereferencing operator. ◆ operator++()
template<int cd, PartitionIteratorType pitype>
Increment operator. Implementation note: This class is a friend of
References Dune::cpgrid::EntityRep< codim >::increment(), and Dune::cpgrid::EntityRep< codim >::index(). ◆ operator->()
template<int cd, PartitionIteratorType pitype>
Const member by pointer operator. ◆ operator<()
template<int codim>
Ordering relation used for maps etc. Sorting on index and then orientation, with positive orientations first.
References Dune::cpgrid::EntityRep< codim >::index(), and Dune::cpgrid::EntityRep< codim >::orientation(). ◆ operator==() [1/2]
Equality. ◆ operator==() [2/2]
template<int codim>
Equality operator.
Referenced by Dune::cpgrid::EntityRep< codim >::operator!=(), and Dune::cpgrid::Entity< codim >::operator==(). ◆ opposite()
template<int codim>
Returns an EntityRep with opposite orientation.
References Dune::cpgrid::EntityRep< codim >::EntityRep(). Referenced by Dune::cpgrid::OrientedEntityTable< codim_from, codim_to >::makeInverseRelation(), Dune::cpgrid::OrientedEntityRange< codim_to >::operator[](), and Dune::cpgrid::MutableOrientedEntityRange< codim_to >::operator[](). ◆ orientation()
template<int codim>
Returns true if the entity has positive orientation. Not a Dune interface method.
Referenced by Dune::cpgrid::OrientedEntityTable< codim_from, codim_to >::makeInverseRelation(), Dune::cpgrid::EntityRep< codim >::operator<(), Dune::cpgrid::SignedEntityVariable< T, codim >::operator[](), Dune::cpgrid::OrientedEntityTable< codim_from, codim_to >::operator[](), and Dune::cpgrid::OrientedEntityTable< codim_from, codim_to >::printRelationMatrix(). ◆ partitionType()
In serial run, the only partitionType() is InteriorEntity. Only needed when distributed_data_ is not empty. In parallel run, the entity each cell inherits the partition type of its origin (either parent cell or equivalent cell in level 0). Only needed when distributed_data_ is not empty. ◆ seed()
◆ setValue()
template<int codim>
Set entity value.
◆ signedIndex()
template<int codim>
The signed index that also tells us the orientation. ◆ subEntities()
Return the number of all subentities of the entity of a given codimension cc. ◆ subEntity() [1/2]
Obtain subentity. Example: If cc = 3 and i = 5, it returns the 5th corner/vertex of the entity. ◆ subEntity() [2/2]
◆ type()
Return marker object (GeometryType object) representing the reference element of the entity. Currently, cube type for all entities (cells and vertices). Member Data Documentation◆ codimension
◆ dimension
◆ dimensionworld
◆ mydimension
◆ pgrid_
The documentation for this class was generated from the following files: |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||