Nektar++
|
Zone base: Contains the shared functions and variables. More...
#include <Zones.h>
Public Member Functions | |
ZoneBase (MovementType type, int indx, int domainID, CompositeMap domain, int coordDim) | |
Constructor. More... | |
virtual | ~ZoneBase ()=default |
Default destructor. More... | |
MovementType | GetMovementType () const |
Returns the type of movement. More... | |
CompositeMap | GetDomain () const |
Returns the domain the zone is on. More... | |
int & | GetId () |
Returns the zone ID. More... | |
int & | GetDomainID () |
Returns the ID of the domain making up this Zone. More... | |
bool | Move (NekDouble time) |
Performs the movement of the zone at. More... | |
std::vector< GeometrySharedPtr > const & | GetElements () const |
Returns all highest dimension elements in the zone. More... | |
bool & | GetMoved () |
Returns the flag which states if the zone has moved in this timestep. More... | |
void | ClearBoundingBoxes () |
Clears all bounding boxes associated with the zones elements. More... | |
std::array< std::set< GeometrySharedPtr >, 3 > & | GetConstituentElements () |
Returns constituent elements, i.e. faces + edges. More... | |
std::vector< PointGeom > & | GetOriginalVertex () |
Returns all points in the zone at initialisation. More... | |
virtual std::vector< NekDouble > | v_GetDisp () const |
Returns zone displacment. More... | |
Protected Member Functions | |
virtual bool | v_Move (NekDouble time) |
Virtual function for movement of the zone at. More... | |
Protected Attributes | |
MovementType | m_type = MovementType::eNone |
Type of zone movement. More... | |
int | m_id |
Zone ID. More... | |
int | m_domainID |
ID for the composite making up this zone. More... | |
CompositeMap | m_domain |
Zone domain. More... | |
std::vector< GeometrySharedPtr > | m_elements |
Vector of highest dimension zone elements. More... | |
std::array< std::set< GeometrySharedPtr >, 3 > | m_constituentElements |
Array of all dimension elements i.e. faces = [2], edges = [1], geom = [0]. More... | |
bool | m_moved = true |
Moved flag. More... | |
int | m_coordDim |
Coordinate dimension. More... | |
std::vector< PointGeomSharedPtr > | m_verts |
Vector of all points in the zone. More... | |
std::vector< CurveSharedPtr > | m_curves |
Vector of all curves in the zone. More... | |
std::vector< PointGeom > | m_origVerts |
Vector of all points in the zone at initialisation. More... | |
Nektar::SpatialDomains::ZoneBase::ZoneBase | ( | MovementType | type, |
int | indx, | ||
int | domainID, | ||
CompositeMap | domain, | ||
int | coordDim | ||
) |
Constructor.
Definition at line 45 of file Movement/Zones.cpp.
References m_constituentElements, m_curves, m_domain, m_elements, m_origVerts, and m_verts.
|
virtualdefault |
Default destructor.
void Nektar::SpatialDomains::ZoneBase::ClearBoundingBoxes | ( | ) |
Clears all bounding boxes associated with the zones elements.
Definition at line 179 of file Movement/Zones.cpp.
References m_elements.
Referenced by Nektar::SpatialDomains::ZoneRotate::v_Move(), and Nektar::SpatialDomains::ZoneTranslate::v_Move().
|
inline |
Returns constituent elements, i.e. faces + edges.
Definition at line 115 of file Zones.h.
References m_constituentElements.
|
inline |
|
inline |
Returns the ID of the domain making up this Zone.
Definition at line 88 of file Zones.h.
References m_domainID.
|
inline |
Returns all highest dimension elements in the zone.
Definition at line 100 of file Zones.h.
References m_elements.
|
inline |
|
inline |
|
inline |
|
inline |
Returns all points in the zone at initialisation.
Definition at line 121 of file Zones.h.
References m_origVerts.
|
inline |
Performs the movement of the zone at.
time |
Definition at line 94 of file Zones.h.
References v_Move().
|
inlinevirtual |
Returns zone displacment.
Reimplemented in Nektar::SpatialDomains::ZoneTranslate, and Nektar::SpatialDomains::ZoneFixed.
Definition at line 127 of file Zones.h.
References m_coordDim.
|
inlineprotectedvirtual |
Virtual function for movement of the zone at.
time |
Reimplemented in Nektar::SpatialDomains::ZoneRotate, Nektar::SpatialDomains::ZoneTranslate, and Nektar::SpatialDomains::ZoneFixed.
Definition at line 164 of file Zones.h.
Referenced by Move().
|
protected |
Array of all dimension elements i.e. faces = [2], edges = [1], geom = [0].
Definition at line 151 of file Zones.h.
Referenced by GetConstituentElements(), and ZoneBase().
|
protected |
Coordinate dimension.
Definition at line 155 of file Zones.h.
Referenced by Nektar::SpatialDomains::ZoneTranslate::GetDisp(), Nektar::SpatialDomains::ZoneTranslate::GetVel(), v_GetDisp(), Nektar::SpatialDomains::ZoneFixed::v_GetDisp(), and Nektar::SpatialDomains::ZoneTranslate::v_Move().
|
protected |
Vector of all curves in the zone.
Definition at line 159 of file Zones.h.
Referenced by Nektar::SpatialDomains::ZoneRotate::v_Move(), Nektar::SpatialDomains::ZoneTranslate::v_Move(), and ZoneBase().
|
protected |
|
protected |
ID for the composite making up this zone.
Definition at line 144 of file Zones.h.
Referenced by GetDomainID().
|
protected |
Vector of highest dimension zone elements.
Definition at line 148 of file Zones.h.
Referenced by ClearBoundingBoxes(), GetElements(), and ZoneBase().
|
protected |
|
protected |
|
protected |
Vector of all points in the zone at initialisation.
Definition at line 161 of file Zones.h.
Referenced by GetOriginalVertex(), Nektar::SpatialDomains::ZoneRotate::v_Move(), Nektar::SpatialDomains::ZoneTranslate::v_Move(), and ZoneBase().
|
protected |
|
protected |
Vector of all points in the zone.
Definition at line 157 of file Zones.h.
Referenced by Nektar::SpatialDomains::ZoneRotate::v_Move(), Nektar::SpatialDomains::ZoneTranslate::v_Move(), and ZoneBase().