Nektar++
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
Nektar::SpatialDomains::ZoneFixed Struct Referencefinal

Fixed zone: does not move. More...

#include <Zones.h>

Inheritance diagram for Nektar::SpatialDomains::ZoneFixed:
[legend]

Public Member Functions

 ZoneFixed (int id, int domainID, const CompositeMap &domain, const int coordDim)
 Constructor.
 
 ~ZoneFixed () override=default
 Default destructor.
 
- Public Member Functions inherited from Nektar::SpatialDomains::ZoneBase
 ZoneBase (MovementType type, int indx, int domainID, CompositeMap domain, int coordDim)
 Constructor.
 
virtual ~ZoneBase ()=default
 Default destructor.
 
MovementType GetMovementType () const
 Returns the type of movement.
 
CompositeMap GetDomain () const
 Returns the domain the zone is on.
 
int & GetId ()
 Returns the zone ID.
 
int & GetDomainID ()
 Returns the ID of the domain making up this Zone.
 
bool Move (NekDouble time)
 Performs the movement of the zone at.
 
std::vector< Geometry * > const & GetElements () const
 Returns all highest dimension elements in the zone.
 
bool & GetMoved ()
 Returns the flag which states if the zone has moved in this timestep.
 
void ClearBoundingBoxes ()
 Clears all bounding boxes associated with the zones elements.
 
std::array< std::set< Geometry * >, 3 > & GetConstituentElements ()
 Returns constituent elements, i.e. faces + edges.
 
std::vector< PointGeom > & GetOriginalVertex ()
 Returns all points in the zone at initialisation.
 

Protected Member Functions

bool v_Move (NekDouble time) final
 Virtual function for movement of the zone at.
 
std::vector< NekDoublev_GetDisp () const override
 Returns the displacement of the zone.
 
NekDouble v_GetAngle () const override
 Returns the displacement of the zone.
 

Additional Inherited Members

- Protected Attributes inherited from Nektar::SpatialDomains::ZoneBase
MovementType m_type = MovementType::eNone
 Type of zone movement.
 
int m_id
 Zone ID.
 
int m_domainID
 ID for the composite making up this zone.
 
CompositeMap m_domain
 Zone domain.
 
std::vector< Geometry * > m_elements
 Vector of highest dimension zone elements.
 
std::array< std::set< Geometry * >, 3 > m_constituentElements
 Array of all dimension elements i.e. faces = [2], edges = [1], geom = [0].
 
bool m_moved = true
 Moved flag.
 
int m_coordDim
 Coordinate dimension.
 
std::vector< PointGeomUniquePtrm_verts
 Vector of all points in the zone.
 
std::vector< CurveSharedPtrm_curves
 Vector of all curves in the zone.
 
std::vector< PointGeomm_origVerts
 Vector of all points in the zone at initialisation.
 

Detailed Description

Fixed zone: does not move.

Definition at line 352 of file Zones.h.

Constructor & Destructor Documentation

◆ ZoneFixed()

Nektar::SpatialDomains::ZoneFixed::ZoneFixed ( int  id,
int  domainID,
const CompositeMap domain,
const int  coordDim 
)
inline

Constructor.

Definition at line 355 of file Zones.h.

357 : ZoneBase(MovementType::eFixed, id, domainID, domain, coordDim)
358 {
359 }
ZoneBase(MovementType type, int indx, int domainID, CompositeMap domain, int coordDim)
Constructor.

◆ ~ZoneFixed()

Nektar::SpatialDomains::ZoneFixed::~ZoneFixed ( )
overridedefault

Default destructor.

Member Function Documentation

◆ v_GetAngle()

NekDouble Nektar::SpatialDomains::ZoneFixed::v_GetAngle ( ) const
overrideprotectedvirtual

Returns the displacement of the zone.

Reimplemented from Nektar::SpatialDomains::ZoneBase.

Definition at line 422 of file Movement/Zones.cpp.

423{
424 return 0.0;
425}

◆ v_GetDisp()

std::vector< NekDouble > Nektar::SpatialDomains::ZoneFixed::v_GetDisp ( ) const
overrideprotectedvirtual

Returns the displacement of the zone.

Reimplemented from Nektar::SpatialDomains::ZoneBase.

Definition at line 412 of file Movement/Zones.cpp.

413{
414 std::vector<NekDouble> disp(m_coordDim);
415 for (int i = 0; i < m_coordDim; ++i)
416 {
417 disp[i] = 0.0;
418 }
419
420 return disp;
421}
int m_coordDim
Coordinate dimension.
Definition Zones.h:162

References Nektar::SpatialDomains::ZoneBase::m_coordDim.

◆ v_Move()

bool Nektar::SpatialDomains::ZoneFixed::v_Move ( NekDouble  time)
finalprotectedvirtual

Virtual function for movement of the zone at.

Parameters
time

Reimplemented from Nektar::SpatialDomains::ZoneBase.

Definition at line 407 of file Movement/Zones.cpp.

408{
409 return false;
410}