46 namespace LocalRegions
122 Expansion3DSharedPtr &f);
196 const int edge)
const;
214 ASSERTL1(edge < nEdges,
"Edge out of range.");
226 "Left adjacent element not set.");
234 "Right adjacent element not set.");
251 Expansion3DSharedPtr &f)
256 "Both adjacent elements already set.");
const StdRegions::NormalVector & v_GetEdgeNormal(const int edge) const
Expansion3DWeakPtr m_elementRight
void SetAdjacentElementExp(int face, Expansion3DSharedPtr &f)
void GetPhysEdgeVarCoeffsFromElement(const int edge, ExpansionSharedPtr &EdgeExp, const Array< OneD, const NekDouble > &varcoeff, Array< OneD, NekDouble > &outarray)
void AddNormTraceInt(const int dir, Array< OneD, ExpansionSharedPtr > &EdgeExp, Array< OneD, Array< OneD, NekDouble > > &edgeCoeffs, Array< OneD, NekDouble > &outarray)
const StdRegions::NormalVector & v_GetSurfaceNormal(const int id) const
std::map< int, bool > m_negatedNormals
std::map< int, StdRegions::NormalVector > m_edgeNormals
void SetTraceToGeomOrientation(Array< OneD, ExpansionSharedPtr > &EdgeExp, Array< OneD, NekDouble > &inout)
virtual void v_AddRobinEdgeContribution(const int edgeid, const Array< OneD, const NekDouble > &primCoeffs, Array< OneD, NekDouble > &coeffs)
virtual DNekMatSharedPtr v_BuildVertexMatrix(const DNekScalMatSharedPtr &r_bnd)
SpatialDomains::GeometrySharedPtr m_geom
virtual void v_AddRobinMassMatrix(const int edgeid, const Array< OneD, const NekDouble > &primCoeffs, DNekMatSharedPtr &inoutmat)
boost::shared_ptr< DNekMat > DNekMatSharedPtr
void AddEdgeBoundaryInt(const int edge, ExpansionSharedPtr &EdgeExp, Array< OneD, NekDouble > &edgePhys, Array< OneD, NekDouble > &outarray, const StdRegions::VarCoeffMap &varcoeffs=StdRegions::NullVarCoeffMap)
boost::shared_ptr< DNekScalMat > DNekScalMatSharedPtr
virtual void v_NegateEdgeNormal(const int edge)
std::vector< Expansion2DSharedPtr > Expansion2DVector
std::vector< bool > m_requireNeg
SpatialDomains::Geometry2DSharedPtr GetGeom2D() const
Expansion3DWeakPtr m_elementLeft
std::map< StdRegions::VarCoeffType, Array< OneD, NekDouble > > VarCoeffMap
int GetRightAdjacentElementFace() const
boost::shared_ptr< Expansion3D > Expansion3DSharedPtr
Expansion1DSharedPtr GetEdgeExp(int edge, bool SetUpNormal=true)
virtual void v_AddEdgeNormBoundaryInt(const int edge, const ExpansionSharedPtr &EdgeExp, const Array< OneD, const NekDouble > &Fx, const Array< OneD, const NekDouble > &Fy, Array< OneD, NekDouble > &outarray)
Expansion3DSharedPtr GetLeftAdjacentElementExp() const
boost::shared_ptr< Expansion > ExpansionSharedPtr
void AddHDGHelmholtzEdgeTerms(const NekDouble tau, const int edge, Array< OneD, ExpansionSharedPtr > &EdgeExp, Array< OneD, NekDouble > &edgePhys, const StdRegions::VarCoeffMap &dirForcing, Array< OneD, NekDouble > &outarray)
Expansion2D(SpatialDomains::Geometry2DSharedPtr pGeom)
virtual DNekMatSharedPtr v_GenMatrix(const StdRegions::StdMatrixKey &mkey)
virtual bool v_EdgeNormalNegated(const int edge)
boost::shared_ptr< Geometry2D > Geometry2DSharedPtr
StandardMatrixTag boost::call_traits< LhsDataType >::const_reference rhs typedef NekMatrix< LhsDataType, StandardMatrixTag >::iterator iterator
void AddHDGHelmholtzTraceTerms(const NekDouble tau, const Array< OneD, const NekDouble > &inarray, Array< OneD, ExpansionSharedPtr > &EdgeExp, const StdRegions::VarCoeffMap &dirForcing, Array< OneD, NekDouble > &outarray)
boost::weak_ptr< Expansion3D > Expansion3DWeakPtr
void ReOrientQuadEdgePhysMap(const StdRegions::Orientation orient, const int nq0, Array< OneD, int > &idmap)
virtual void v_DGDeriv(const int dir, const Array< OneD, const NekDouble > &incoeffs, Array< OneD, ExpansionSharedPtr > &EdgeExp, Array< OneD, Array< OneD, NekDouble > > &edgeCoeffs, Array< OneD, NekDouble > &out_d)
std::vector< Expansion1DWeakPtr > m_edgeExp
void SetEdgeExp(const int edge, Expansion1DSharedPtr &e)
boost::weak_ptr< Expansion2D > Expansion2DWeakPtr
virtual void v_SetUpPhysNormals(const int edge)
Expansion3DSharedPtr GetRightAdjacentElementExp() const
int GetLeftAdjacentElementFace() const
#define LOCAL_REGIONS_EXPORT
std::vector< Expansion2DSharedPtr >::iterator Expansion2DVectorIter
#define ASSERTL1(condition, msg)
Assert Level 1 – Debugging which is used whether in FULLDEBUG or DEBUG compilation mode...
boost::shared_ptr< Expansion1D > Expansion1DSharedPtr
int GetNedges() const
This function returns the number of edges of the expansion domain.
Array< OneD, unsigned int > v_GetEdgeInverseBoundaryMap(int eid)
void ReOrientEdgePhysMap(const int nvert, const StdRegions::Orientation orient, const int nq0, Array< OneD, int > &idmap)
boost::shared_ptr< Expansion2D > Expansion2DSharedPtr
static VarCoeffMap NullVarCoeffMap