38 #include <boost/core/ignore_unused.hpp>
47 namespace LocalRegions
215 const int edge)
const;
226 boost::ignore_unused(SetUpNormal);
236 ASSERTL1(edge < nEdges,
"Edge out of range.");
248 "Left adjacent element not set.");
256 "Right adjacent element not set.");
278 "Both adjacent elements already set.");
293 return std::dynamic_pointer_cast<SpatialDomains::
#define ASSERTL1(condition, msg)
Assert Level 1 – Debugging which is used whether in FULLDEBUG or DEBUG compilation mode....
#define LOCAL_REGIONS_EXPORT
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< bool > m_requireNeg
const StdRegions::NormalVector & v_GetEdgeNormal(const int edge) const
Expansion3DWeakPtr m_elementRight
virtual Array< OneD, NekDouble > v_GetMFDiv(const int dir, const StdRegions::VarCoeffMap &varcoeffs)
void SetTraceToGeomOrientation(Array< OneD, ExpansionSharedPtr > &EdgeExp, Array< OneD, NekDouble > &inout)
void ReOrientEdgePhysMap(const int nvert, const StdRegions::Orientation orient, const int nq0, Array< OneD, int > &idmap)
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 GetRightAdjacentElementExp() const
Expansion3DSharedPtr GetLeftAdjacentElementExp() const
virtual bool v_EdgeNormalNegated(const int edge)
virtual Array< OneD, NekDouble > v_GetMFMag(const int dir, const StdRegions::VarCoeffMap &varcoeffs)
virtual void v_SetUpPhysNormals(const int edge)
virtual void v_AddRobinMassMatrix(const int edgeid, const Array< OneD, const NekDouble > &primCoeffs, DNekMatSharedPtr &inoutmat)
std::vector< Expansion1DWeakPtr > m_edgeExp
Array< OneD, unsigned int > v_GetEdgeInverseBoundaryMap(int eid)
Expansion2D(SpatialDomains::Geometry2DSharedPtr pGeom)
void AddNormTraceInt(const int dir, Array< OneD, ExpansionSharedPtr > &EdgeExp, Array< OneD, Array< OneD, NekDouble > > &edgeCoeffs, Array< OneD, NekDouble > &outarray)
virtual DNekMatSharedPtr v_GenMatrix(const StdRegions::StdMatrixKey &mkey)
virtual Array< OneD, NekDouble > v_GetMF(const int dir, const int shapedim, const StdRegions::VarCoeffMap &varcoeffs)
SpatialDomains::Geometry2DSharedPtr GetGeom2D() const
void AddHDGHelmholtzEdgeTerms(const NekDouble tau, const int edge, Array< OneD, ExpansionSharedPtr > &EdgeExp, Array< OneD, NekDouble > &edgePhys, const StdRegions::VarCoeffMap &dirForcing, Array< OneD, NekDouble > &outarray)
Array< OneD, NekDouble > v_GetnEdgecdotMF(const int dir, const int edge, ExpansionSharedPtr &EdgeExp_e, const Array< OneD, const Array< OneD, NekDouble > > &normals, const StdRegions::VarCoeffMap &varcoeffs)
Expansion1DSharedPtr GetEdgeExp(int edge, bool SetUpNormal=true)
std::map< int, bool > m_negatedNormals
const StdRegions::NormalVector & v_GetSurfaceNormal(const int id) const
std::map< int, StdRegions::NormalVector > m_edgeNormals
virtual NekDouble v_VectorFlux(const Array< OneD, Array< OneD, NekDouble > > &vec)
virtual void v_NegateEdgeNormal(const int edge)
void GetPhysEdgeVarCoeffsFromElement(const int edge, ExpansionSharedPtr &EdgeExp, const Array< OneD, const NekDouble > &varcoeff, Array< OneD, NekDouble > &outarray)
void AddEdgeBoundaryInt(const int edge, ExpansionSharedPtr &EdgeExp, Array< OneD, NekDouble > &edgePhys, Array< OneD, NekDouble > &outarray, const StdRegions::VarCoeffMap &varcoeffs=StdRegions::NullVarCoeffMap)
int GetLeftAdjacentElementFace() const
virtual DNekMatSharedPtr v_BuildVertexMatrix(const DNekScalMatSharedPtr &r_bnd)
Expansion3DWeakPtr m_elementLeft
void SetAdjacentElementExp(int face, Expansion3DSharedPtr &f)
virtual void v_AddRobinEdgeContribution(const int edgeid, const Array< OneD, const NekDouble > &primCoeffs, Array< OneD, NekDouble > &coeffs)
void AddHDGHelmholtzTraceTerms(const NekDouble tau, const Array< OneD, const NekDouble > &inarray, Array< OneD, ExpansionSharedPtr > &EdgeExp, const StdRegions::VarCoeffMap &dirForcing, Array< OneD, NekDouble > &outarray)
void ReOrientQuadEdgePhysMap(const StdRegions::Orientation orient, const int nq0, Array< OneD, int > &idmap)
int GetRightAdjacentElementFace() const
void SetEdgeExp(const int edge, Expansion1DSharedPtr &e)
SpatialDomains::GeometrySharedPtr m_geom
int GetNedges() const
This function returns the number of edges of the expansion domain.
std::weak_ptr< Expansion2D > Expansion2DWeakPtr
std::vector< Expansion2DSharedPtr > Expansion2DVector
std::shared_ptr< Expansion > ExpansionSharedPtr
std::shared_ptr< Expansion2D > Expansion2DSharedPtr
std::weak_ptr< Expansion3D > Expansion3DWeakPtr
std::shared_ptr< Expansion1D > Expansion1DSharedPtr
std::shared_ptr< Expansion3D > Expansion3DSharedPtr
std::shared_ptr< Geometry2D > Geometry2DSharedPtr
std::map< StdRegions::VarCoeffType, Array< OneD, NekDouble > > VarCoeffMap
static VarCoeffMap NullVarCoeffMap
std::shared_ptr< DNekScalMat > DNekScalMatSharedPtr
std::shared_ptr< DNekMat > DNekMatSharedPtr