Nektar++
Public Member Functions | Protected Attributes | List of all members
Nektar::SpatialDomains::Interface Struct Reference

A interface which is a single edge on a zone for handling non-conformality. More...

#include <InterfaceInterpolation.h>

Public Member Functions

 Interface (int indx, const CompositeMap &edge)
 Constructor. More...
 
virtual ~Interface ()=default
 Default destructor. More...
 
std::map< int, GeometrySharedPtr > const & GetEdge () const
 Returns map of global ID to geometry of the interface edge. More...
 
GeometrySharedPtr const & GetEdge (int id)
 Returns geometry of the interface edge with global ID. More...
 
bool IsEmpty () const
 Checks if the interface edge is empty (used for parallelisation) More...
 
std::shared_ptr< Interface > & GetOppInterface ()
 Returns the matching opposite interface from the interface pair. More...
 
int & GetId ()
 Returns the interface ID. More...
 
const std::vector< unsigned int > & GetCompositeIDs () const
 Returns IDs of composites making up the interface. More...
 

Protected Attributes

std::shared_ptr< Interfacem_oppInterface
 Matching opposite interface of the interface pair. More...
 
int m_id
 Interface ID. More...
 
std::vector< unsigned int > m_compositeIDs
 String from XML representation, describing which composites make up this interface. More...
 
std::map< int, GeometrySharedPtrm_edge
 Map of global ID to geometry of the interface edge. More...
 

Detailed Description

A interface which is a single edge on a zone for handling non-conformality.

Definition at line 51 of file InterfaceInterpolation.h.

Constructor & Destructor Documentation

◆ Interface()

Nektar::SpatialDomains::Interface::Interface ( int  indx,
const CompositeMap edge 
)
inline

Constructor.

Definition at line 54 of file InterfaceInterpolation.h.

54 : m_id(indx)
55 {
56 // Fill element Ids
57 for (auto &comp : edge)
58 {
59 m_compositeIDs.push_back(comp.first);
60 for (auto &geom : comp.second->m_geomVec)
61 {
62 m_edge[geom->GetGlobalID()] = geom;
63 }
64 }
65 }
std::map< int, GeometrySharedPtr > m_edge
Map of global ID to geometry of the interface edge.
std::vector< unsigned int > m_compositeIDs
String from XML representation, describing which composites make up this interface.

References m_compositeIDs, and m_edge.

◆ ~Interface()

virtual Nektar::SpatialDomains::Interface::~Interface ( )
virtualdefault

Default destructor.

Member Function Documentation

◆ GetCompositeIDs()

const std::vector< unsigned int > & Nektar::SpatialDomains::Interface::GetCompositeIDs ( ) const
inline

Returns IDs of composites making up the interface.

Definition at line 101 of file InterfaceInterpolation.h.

102 {
103 return m_compositeIDs;
104 }

References m_compositeIDs.

◆ GetEdge() [1/2]

std::map< int, GeometrySharedPtr > const & Nektar::SpatialDomains::Interface::GetEdge ( ) const
inline

Returns map of global ID to geometry of the interface edge.

Definition at line 71 of file InterfaceInterpolation.h.

72 {
73 return m_edge;
74 }

References m_edge.

◆ GetEdge() [2/2]

GeometrySharedPtr const & Nektar::SpatialDomains::Interface::GetEdge ( int  id)
inline

Returns geometry of the interface edge with global ID.

Parameters
id

Definition at line 77 of file InterfaceInterpolation.h.

78 {
79 return m_edge[id];
80 }

References m_edge.

◆ GetId()

int & Nektar::SpatialDomains::Interface::GetId ( )
inline

Returns the interface ID.

Definition at line 95 of file InterfaceInterpolation.h.

96 {
97 return m_id;
98 }

References m_id.

◆ GetOppInterface()

std::shared_ptr< Interface > & Nektar::SpatialDomains::Interface::GetOppInterface ( )
inline

Returns the matching opposite interface from the interface pair.

Definition at line 89 of file InterfaceInterpolation.h.

90 {
91 return m_oppInterface;
92 }
std::shared_ptr< Interface > m_oppInterface
Matching opposite interface of the interface pair.

References m_oppInterface.

◆ IsEmpty()

bool Nektar::SpatialDomains::Interface::IsEmpty ( ) const
inline

Checks if the interface edge is empty (used for parallelisation)

Definition at line 83 of file InterfaceInterpolation.h.

84 {
85 return m_edge.empty();
86 }

References m_edge.

Member Data Documentation

◆ m_compositeIDs

std::vector<unsigned int> Nektar::SpatialDomains::Interface::m_compositeIDs
protected

String from XML representation, describing which composites make up this interface.

Definition at line 113 of file InterfaceInterpolation.h.

Referenced by GetCompositeIDs(), and Interface().

◆ m_edge

std::map<int, GeometrySharedPtr> Nektar::SpatialDomains::Interface::m_edge
protected

Map of global ID to geometry of the interface edge.

Definition at line 115 of file InterfaceInterpolation.h.

Referenced by GetEdge(), Interface(), and IsEmpty().

◆ m_id

int Nektar::SpatialDomains::Interface::m_id
protected

Interface ID.

Definition at line 110 of file InterfaceInterpolation.h.

Referenced by GetId().

◆ m_oppInterface

std::shared_ptr<Interface> Nektar::SpatialDomains::Interface::m_oppInterface
protected

Matching opposite interface of the interface pair.

Definition at line 108 of file InterfaceInterpolation.h.

Referenced by GetOppInterface().