Nektar++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
Nektar::StdRegions::StdExpansion Class Reference

The base class for all shapes. More...

#include <StdExpansion.h>

Inheritance diagram for Nektar::StdRegions::StdExpansion:
Inheritance graph
[legend]
Collaboration diagram for Nektar::StdRegions::StdExpansion:
Collaboration graph
[legend]

Public Member Functions

 StdExpansion ()
 Default Constructor.
 StdExpansion (const int numcoeffs, const int numbases, const LibUtilities::BasisKey &Ba=LibUtilities::NullBasisKey, const LibUtilities::BasisKey &Bb=LibUtilities::NullBasisKey, const LibUtilities::BasisKey &Bc=LibUtilities::NullBasisKey)
 Constructor.
 StdExpansion (const StdExpansion &T)
 Copy Constructor.
virtual ~StdExpansion ()
 Destructor.
int GetNumBases () const
 This function returns the number of 1D bases used in the expansion.
const Array< OneD, const
LibUtilities::BasisSharedPtr > & 
GetBase () const
 This function gets the shared point to basis.
const
LibUtilities::BasisSharedPtr
GetBasis (int dir) const
 This function gets the shared point to basis in the dir direction.
int GetNcoeffs (void) const
 This function returns the total number of coefficients used in the expansion.
int GetTotPoints () const
 This function returns the total number of quadrature points used in the element.
LibUtilities::BasisType GetBasisType (const int dir) const
 This function returns the type of basis used in the dir direction.
int GetBasisNumModes (const int dir) const
 This function returns the number of expansion modes in the dir direction.
int EvalBasisNumModesMax (void) const
 This function returns the maximum number of expansion modes over all local directions.
LibUtilities::PointsType GetPointsType (const int dir) const
 This function returns the type of quadrature points used in the dir direction.
int GetNumPoints (const int dir) const
 This function returns the number of quadrature points in the dir direction.
const Array< OneD, const
NekDouble > & 
GetPoints (const int dir) const
 This function returns a pointer to the array containing the quadrature points in dir direction.
int GetNverts () const
 This function returns the number of vertices of the expansion domain.
int GetNedges () const
 This function returns the number of edges of the expansion domain.
int GetEdgeNcoeffs (const int i) const
 This function returns the number of expansion coefficients belonging to the i-th edge.
int GetTotalEdgeIntNcoeffs () const
int GetEdgeNumPoints (const int i) const
 This function returns the number of quadrature points belonging to the i-th edge.
int DetCartesianDirOfEdge (const int edge)
const LibUtilities::BasisKey DetEdgeBasisKey (const int i) const
const LibUtilities::BasisKey DetFaceBasisKey (const int i, const int k) const
int GetFaceNumPoints (const int i) const
 This function returns the number of quadrature points belonging to the i-th face.
int GetFaceNcoeffs (const int i) const
 This function returns the number of expansion coefficients belonging to the i-th face.
int GetFaceIntNcoeffs (const int i) const
int GetTotalFaceIntNcoeffs () const
LibUtilities::PointsKey GetFacePointsKey (const int i, const int j) const
int NumBndryCoeffs (void) const
int NumDGBndryCoeffs (void) const
LibUtilities::BasisType GetEdgeBasisType (const int i) const
 This function returns the type of expansion basis on the i-th edge.
int GetNfaces () const
 This function returns the number of faces of the expansion domain.
int GetNtrace () const
 Returns the number of trace elements connected to this element.
LibUtilities::ShapeType DetShapeType () const
 This function returns the shape of the expansion domain.
int GetShapeDimension () const
bool IsBoundaryInteriorExpansion ()
void BwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
 This function performs the Backward transformation from coefficient space to physical space.
void FwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
 This function performs the Forward transformation from physical space to coefficient space.
void FwdTrans_BndConstrained (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
NekDouble Integral (const Array< OneD, const NekDouble > &inarray)
 This function integrates the specified function over the domain.
void FillMode (const int mode, Array< OneD, NekDouble > &outarray)
 This function fills the array outarray with the mode-th mode of the expansion.
void IProductWRTBase (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
 this function calculates the inner product of a given function f with the different modes of the expansion
void IProductWRTBase (const Array< OneD, const NekDouble > &base, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, int coll_check)
void IProductWRTDerivBase (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
int GetElmtId ()
 Get the element id of this expansion when used in a list by returning value of m_elmt_id.
void SetElmtId (const int id)
 Set the element id of this expansion when used in a list by returning value of m_elmt_id.
void GetCoords (Array< OneD, NekDouble > &coords_1, Array< OneD, NekDouble > &coords_2=NullNekDouble1DArray, Array< OneD, NekDouble > &coords_3=NullNekDouble1DArray)
 this function returns the physical coordinates of the quadrature points of the expansion
void GetCoord (const Array< OneD, const NekDouble > &Lcoord, Array< OneD, NekDouble > &coord)
 given the coordinates of a point of the element in the local collapsed coordinate system, this function calculates the physical coordinates of the point
DNekMatSharedPtr GetStdMatrix (const StdMatrixKey &mkey)
DNekBlkMatSharedPtr GetStdStaticCondMatrix (const StdMatrixKey &mkey)
IndexMapValuesSharedPtr GetIndexMap (const IndexMapKey &ikey)
const Array< OneD, const
NekDouble > & 
GetPhysNormals (void)
void SetPhysNormals (Array< OneD, const NekDouble > &normal)
virtual void SetUpPhysNormals (const int edge)
void NormVectorIProductWRTBase (const Array< OneD, const NekDouble > &Fx, const Array< OneD, const NekDouble > &Fy, Array< OneD, NekDouble > &outarray)
void NormVectorIProductWRTBase (const Array< OneD, const NekDouble > &Fx, const Array< OneD, const NekDouble > &Fy, const Array< OneD, const NekDouble > &Fz, Array< OneD, NekDouble > &outarray)
DNekScalBlkMatSharedPtr GetLocStaticCondMatrix (const LocalRegions::MatrixKey &mkey)
void DropLocStaticCondMatrix (const LocalRegions::MatrixKey &mkey)
StdRegions::Orientation GetForient (int face)
StdRegions::Orientation GetEorient (int edge)
StdRegions::Orientation GetPorient (int point)
StdRegions::Orientation GetCartesianEorient (int edge)
void SetCoeffsToOrientation (Array< OneD, NekDouble > &coeffs, StdRegions::Orientation dir)
void SetCoeffsToOrientation (StdRegions::Orientation dir, Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
int CalcNumberOfCoefficients (const std::vector< unsigned int > &nummodes, int &modes_offset)
void ExtractDataToCoeffs (const NekDouble *data, const std::vector< unsigned int > &nummodes, const int nmodes_offset, NekDouble *coeffs)
NekDouble StdPhysEvaluate (const Array< OneD, const NekDouble > &Lcoord, const Array< OneD, const NekDouble > &physvals)
int GetCoordim ()
void GetBoundaryMap (Array< OneD, unsigned int > &outarray)
void GetInteriorMap (Array< OneD, unsigned int > &outarray)
int GetVertexMap (const int localVertexId, bool useCoeffPacking=false)
void GetEdgeInteriorMap (const int eid, const Orientation edgeOrient, Array< OneD, unsigned int > &maparray, Array< OneD, int > &signarray)
void GetFaceInteriorMap (const int fid, const Orientation faceOrient, Array< OneD, unsigned int > &maparray, Array< OneD, int > &signarray)
void GetEdgeToElementMap (const int eid, const Orientation edgeOrient, Array< OneD, unsigned int > &maparray, Array< OneD, int > &signarray)
void GetFaceToElementMap (const int fid, const Orientation faceOrient, Array< OneD, unsigned int > &maparray, Array< OneD, int > &signarray, int nummodesA=-1, int nummodesB=-1)
void GetEdgePhysVals (const int edge, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
 Extract the physical values along edge edge from inarray into outarray following the local edge orientation and point distribution defined by defined in EdgeExp.
void GetEdgePhysVals (const int edge, const boost::shared_ptr< StdExpansion > &EdgeExp, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
void GetTracePhysVals (const int edge, const boost::shared_ptr< StdExpansion > &EdgeExp, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
void GetVertexPhysVals (const int vertex, const Array< OneD, const NekDouble > &inarray, NekDouble &outarray)
void GetEdgeInterpVals (const int edge, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
void GetEdgeQFactors (const int edge, Array< OneD, NekDouble > &outarray)
 Extract the metric factors to compute the contravariant fluxes along edge edge and stores them into outarray following the local edge orientation (i.e. anticlockwise convention).
void GetFacePhysVals (const int face, const boost::shared_ptr< StdExpansion > &FaceExp, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, StdRegions::Orientation orient=eNoOrientation)
void MultiplyByQuadratureMetric (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
void MultiplyByStdQuadratureMetric (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
DNekMatSharedPtr CreateGeneralMatrix (const StdMatrixKey &mkey)
 this function generates the mass matrix $\mathbf{M}[i][j] = \int \phi_i(\mathbf{x}) \phi_j(\mathbf{x}) d\mathbf{x}$
void GeneralMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void MassMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void LaplacianMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void ReduceOrderCoeffs (int numMin, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
void SVVLaplacianFilter (Array< OneD, NekDouble > &array, const StdMatrixKey &mkey)
void LaplacianMatrixOp (const int k1, const int k2, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void WeakDerivMatrixOp (const int i, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void WeakDirectionalDerivMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void MassLevelCurvatureMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void LinearAdvectionDiffusionReactionMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey, bool addDiffusionTerm=true)
void HelmholtzMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
DNekMatSharedPtr GenMatrix (const StdMatrixKey &mkey)
void PhysDeriv (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d0, Array< OneD, NekDouble > &out_d1=NullNekDouble1DArray, Array< OneD, NekDouble > &out_d2=NullNekDouble1DArray)
void PhysDeriv (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
void PhysDeriv_s (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_ds)
void PhysDeriv_n (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_dn)
void PhysDirectionalDeriv (const Array< OneD, const NekDouble > &inarray, const Array< OneD, const NekDouble > &direction, Array< OneD, NekDouble > &outarray)
void StdPhysDeriv (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d0, Array< OneD, NekDouble > &out_d1=NullNekDouble1DArray, Array< OneD, NekDouble > &out_d2=NullNekDouble1DArray)
void StdPhysDeriv (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
void AddRobinMassMatrix (const int edgeid, const Array< OneD, const NekDouble > &primCoeffs, DNekMatSharedPtr &inoutmat)
void AddRobinEdgeContribution (const int edgeid, const Array< OneD, const NekDouble > &primCoeffs, Array< OneD, NekDouble > &coeffs)
NekDouble PhysEvaluate (const Array< OneD, const NekDouble > &coords, const Array< OneD, const NekDouble > &physvals)
 This function evaluates the expansion at a single (arbitrary) point of the domain.
NekDouble PhysEvaluate (const Array< OneD, DNekMatSharedPtr > &I, const Array< OneD, const NekDouble > &physvals)
 This function evaluates the expansion at a single (arbitrary) point of the domain.
void LocCoordToLocCollapsed (const Array< OneD, const NekDouble > &xi, Array< OneD, NekDouble > &eta)
 Convert local cartesian coordinate xi into local collapsed coordinates eta.
const boost::shared_ptr
< SpatialDomains::GeomFactors > & 
GetMetricInfo (void) const
virtual int v_GetElmtId ()
 Get the element id of this expansion when used in a list by returning value of m_elmt_id.
virtual const Array< OneD,
const NekDouble > & 
v_GetPhysNormals (void)
virtual void v_SetPhysNormals (Array< OneD, const NekDouble > &normal)
virtual void v_SetUpPhysNormals (const int edge)
virtual int v_CalcNumberOfCoefficients (const std::vector< unsigned int > &nummodes, int &modes_offset)
virtual void v_ExtractDataToCoeffs (const NekDouble *data, const std::vector< unsigned int > &nummodes, const int nmode_offset, NekDouble *coeffs)
 Unpack data from input file assuming it comes from the same expansion type.
virtual void v_NormVectorIProductWRTBase (const Array< OneD, const NekDouble > &Fx, const Array< OneD, const NekDouble > &Fy, Array< OneD, NekDouble > &outarray)
virtual void v_NormVectorIProductWRTBase (const Array< OneD, const NekDouble > &Fx, const Array< OneD, const NekDouble > &Fy, const Array< OneD, const NekDouble > &Fz, Array< OneD, NekDouble > &outarray)
virtual DNekScalBlkMatSharedPtr v_GetLocStaticCondMatrix (const LocalRegions::MatrixKey &mkey)
virtual void v_DropLocStaticCondMatrix (const LocalRegions::MatrixKey &mkey)
virtual StdRegions::Orientation v_GetForient (int face)
virtual StdRegions::Orientation v_GetEorient (int edge)
virtual StdRegions::Orientation v_GetCartesianEorient (int edge)
virtual StdRegions::Orientation v_GetPorient (int point)
NekDouble Linf (const Array< OneD, const NekDouble > &phys, const Array< OneD, const NekDouble > &sol=NullNekDouble1DArray)
 Function to evaluate the discrete $ L_\infty$ error $ |\epsilon|_\infty = \max |u - u_{exact}|$ where $ u_{exact}$ is given by the array sol.
NekDouble L2 (const Array< OneD, const NekDouble > &phys, const Array< OneD, const NekDouble > &sol=NullNekDouble1DArray)
 Function to evaluate the discrete $ L_2$ error, $ | \epsilon |_{2} = \left [ \int^1_{-1} [u - u_{exact}]^2 dx \right]^{1/2} d\xi_1 $ where $ u_{exact}$ is given by the array sol.
NekDouble H1 (const Array< OneD, const NekDouble > &phys, const Array< OneD, const NekDouble > &sol=NullNekDouble1DArray)
 Function to evaluate the discrete $ H^1$ error, $ | \epsilon |^1_{2} = \left [ \int^1_{-1} [u - u_{exact}]^2 + \nabla(u - u_{exact})\cdot\nabla(u - u_{exact})\cdot dx \right]^{1/2} d\xi_1 $ where $ u_{exact}$ is given by the array sol.
const NormalVectorGetEdgeNormal (const int edge) const
void ComputeEdgeNormal (const int edge)
void NegateEdgeNormal (const int edge)
bool EdgeNormalNegated (const int edge)
void ComputeFaceNormal (const int face)
void NegateFaceNormal (const int face)
void ComputeVertexNormal (const int vertex)
const NormalVectorGetFaceNormal (const int face) const
const NormalVectorGetVertexNormal (const int vertex) const
const NormalVectorGetSurfaceNormal (const int id) const
const LibUtilities::PointsKeyVector GetPointsKeys () const
Array< OneD, unsigned int > GetEdgeInverseBoundaryMap (int eid)
Array< OneD, unsigned int > GetFaceInverseBoundaryMap (int fid, StdRegions::Orientation faceOrient=eNoOrientation)
DNekMatSharedPtr BuildInverseTransformationMatrix (const DNekScalMatSharedPtr &m_transformationmatrix)
void PhysInterpToSimplexEquiSpaced (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
 This function performs an interpolation from the physical space points provided at input into an array of equispaced points which are not the collapsed coordinate. So for a tetrahedron you will only get a tetrahedral number of values.
void GetSimplexEquiSpacedConnectivity (Array< OneD, int > &conn, bool standard=true)
 This function provides the connectivity of local simplices (triangles or tets) to connect the equispaced data points provided by PhysInterpToSimplexEquiSpaced.
template<class T >
boost::shared_ptr< T > as ()

Protected Member Functions

DNekMatSharedPtr CreateStdMatrix (const StdMatrixKey &mkey)
DNekBlkMatSharedPtr CreateStdStaticCondMatrix (const StdMatrixKey &mkey)
 Create the static condensation of a matrix when using a boundary interior decomposition.
IndexMapValuesSharedPtr CreateIndexMap (const IndexMapKey &ikey)
 Create an IndexMap which contains mapping information linking any specific element shape with either its boundaries, edges, faces, verteces, etc.
void BwdTrans_MatOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
void BwdTrans_SumFac (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
void IProductWRTBase_SumFac (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
void IProductWRTDerivBase_SumFac (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
void GeneralMatrixOp_MatFree (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void MassMatrixOp_MatFree (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void LaplacianMatrixOp_MatFree (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void LaplacianMatrixOp_MatFree_Kernel (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, Array< OneD, NekDouble > &wsp)
void LaplacianMatrixOp_MatFree_GenericImpl (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void LaplacianMatrixOp_MatFree (const int k1, const int k2, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void WeakDerivMatrixOp_MatFree (const int i, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void WeakDirectionalDerivMatrixOp_MatFree (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void MassLevelCurvatureMatrixOp_MatFree (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void LinearAdvectionDiffusionReactionMatrixOp_MatFree (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey, bool addDiffusionTerm=true)
void HelmholtzMatrixOp_MatFree (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
void HelmholtzMatrixOp_MatFree_GenericImpl (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
virtual void v_SetCoeffsToOrientation (StdRegions::Orientation dir, Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual void v_SetCoeffsToOrientation (Array< OneD, NekDouble > &coeffs, StdRegions::Orientation dir)
virtual NekDouble v_StdPhysEvaluate (const Array< OneD, const NekDouble > &Lcoord, const Array< OneD, const NekDouble > &physvals)

Protected Attributes

Array< OneD,
LibUtilities::BasisSharedPtr
m_base
int m_elmt_id
int m_ncoeffs
LibUtilities::NekManager
< StdMatrixKey, DNekMat,
StdMatrixKey::opLess
m_stdMatrixManager
LibUtilities::NekManager
< StdMatrixKey, DNekBlkMat,
StdMatrixKey::opLess
m_stdStaticCondMatrixManager
LibUtilities::NekManager
< IndexMapKey, IndexMapValues,
IndexMapKey::opLess
m_IndexMapManager

Private Member Functions

virtual int v_GetNverts () const =0
virtual int v_GetNedges () const
virtual int v_GetNfaces () const
virtual int v_NumBndryCoeffs () const
virtual int v_NumDGBndryCoeffs () const
virtual int v_GetEdgeNcoeffs (const int i) const
virtual int v_GetTotalEdgeIntNcoeffs () const
virtual int v_GetEdgeNumPoints (const int i) const
virtual int v_DetCartesianDirOfEdge (const int edge)
virtual const
LibUtilities::BasisKey 
v_DetEdgeBasisKey (const int i) const
virtual const
LibUtilities::BasisKey 
v_DetFaceBasisKey (const int i, const int k) const
virtual int v_GetFaceNumPoints (const int i) const
virtual int v_GetFaceNcoeffs (const int i) const
virtual int v_GetFaceIntNcoeffs (const int i) const
virtual int v_GetTotalFaceIntNcoeffs () const
virtual LibUtilities::PointsKey v_GetFacePointsKey (const int i, const int j) const
virtual LibUtilities::BasisType v_GetEdgeBasisType (const int i) const
virtual LibUtilities::ShapeType v_DetShapeType () const
virtual int v_GetShapeDimension () const
virtual bool v_IsBoundaryInteriorExpansion ()
virtual void v_BwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)=0
virtual void v_FwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)=0
 Transform a given function from physical quadrature space to coefficient space.
virtual void v_IProductWRTBase (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)=0
 Calculates the inner product of a given function f with the different modes of the expansion.
virtual void v_IProductWRTBase (const Array< OneD, const NekDouble > &base, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, int coll_check)
virtual void v_IProductWRTDerivBase (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual void v_FwdTrans_BndConstrained (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual NekDouble v_Integral (const Array< OneD, const NekDouble > &inarray)
 Integrates the specified function over the domain.
virtual void v_PhysDeriv (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d1, Array< OneD, NekDouble > &out_d2, Array< OneD, NekDouble > &out_d3)
 Calculate the derivative of the physical points.
virtual void v_PhysDeriv_s (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_ds)
virtual void v_PhysDeriv_n (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_dn)
virtual void v_PhysDeriv (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d0)
 Calculate the derivative of the physical points in a given direction.
virtual void v_PhysDirectionalDeriv (const Array< OneD, const NekDouble > &inarray, const Array< OneD, const NekDouble > &direction, Array< OneD, NekDouble > &outarray)
 Physical derivative along a direction vector.
virtual void v_StdPhysDeriv (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d1, Array< OneD, NekDouble > &out_d2, Array< OneD, NekDouble > &out_d3)
virtual void v_StdPhysDeriv (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual void v_AddRobinMassMatrix (const int edgeid, const Array< OneD, const NekDouble > &primCoeffs, DNekMatSharedPtr &inoutmat)
virtual void v_AddRobinEdgeContribution (const int edgeid, const Array< OneD, const NekDouble > &primCoeffs, Array< OneD, NekDouble > &coeffs)
virtual NekDouble v_PhysEvaluate (const Array< OneD, const NekDouble > &coords, const Array< OneD, const NekDouble > &physvals)
virtual NekDouble v_PhysEvaluate (const Array< OneD, DNekMatSharedPtr > &I, const Array< OneD, const NekDouble > &physvals)
virtual void v_LocCoordToLocCollapsed (const Array< OneD, const NekDouble > &xi, Array< OneD, NekDouble > &eta)
virtual void v_FillMode (const int mode, Array< OneD, NekDouble > &outarray)
virtual DNekMatSharedPtr v_GenMatrix (const StdMatrixKey &mkey)
virtual DNekMatSharedPtr v_CreateStdMatrix (const StdMatrixKey &mkey)
virtual void v_GetCoords (Array< OneD, NekDouble > &coords_0, Array< OneD, NekDouble > &coords_1, Array< OneD, NekDouble > &coords_2)
virtual void v_GetCoord (const Array< OneD, const NekDouble > &Lcoord, Array< OneD, NekDouble > &coord)
virtual int v_GetCoordim (void)
virtual void v_GetBoundaryMap (Array< OneD, unsigned int > &outarray)
virtual void v_GetInteriorMap (Array< OneD, unsigned int > &outarray)
virtual int v_GetVertexMap (int localVertexId, bool useCoeffPacking=false)
virtual void v_GetEdgeInteriorMap (const int eid, const Orientation edgeOrient, Array< OneD, unsigned int > &maparray, Array< OneD, int > &signarray)
virtual void v_GetFaceInteriorMap (const int fid, const Orientation faceOrient, Array< OneD, unsigned int > &maparray, Array< OneD, int > &signarray)
virtual void v_GetEdgeToElementMap (const int eid, const Orientation edgeOrient, Array< OneD, unsigned int > &maparray, Array< OneD, int > &signarray)
virtual void v_GetFaceToElementMap (const int fid, const Orientation faceOrient, Array< OneD, unsigned int > &maparray, Array< OneD, int > &signarray, int nummodesA=-1, int nummodesB=-1)
virtual void v_GetEdgePhysVals (const int edge, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
 Extract the physical values along edge edge from inarray into outarray following the local edge orientation and point distribution defined by defined in EdgeExp.
virtual void v_GetEdgePhysVals (const int edge, const boost::shared_ptr< StdExpansion > &EdgeExp, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual void v_GetTracePhysVals (const int edge, const boost::shared_ptr< StdExpansion > &EdgeExp, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, StdRegions::Orientation orient=eNoOrientation)
virtual void v_GetVertexPhysVals (const int vertex, const Array< OneD, const NekDouble > &inarray, NekDouble &outarray)
virtual void v_GetEdgeInterpVals (const int edge, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual void v_GetEdgeQFactors (const int edge, Array< OneD, NekDouble > &outarray)
virtual void v_GetFacePhysVals (const int face, const boost::shared_ptr< StdExpansion > &FaceExp, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, StdRegions::Orientation orient)
virtual void v_MultiplyByQuadratureMetric (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual void v_MultiplyByStdQuadratureMetric (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual const
boost::shared_ptr
< SpatialDomains::GeomFactors > & 
v_GetMetricInfo () const
virtual void v_BwdTrans_SumFac (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual void v_IProductWRTBase_SumFac (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual void v_IProductWRTDerivBase_SumFac (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual void v_MassMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
virtual void v_LaplacianMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
virtual void v_SVVLaplacianFilter (Array< OneD, NekDouble > &array, const StdMatrixKey &mkey)
virtual void v_ReduceOrderCoeffs (int numMin, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
virtual void v_LaplacianMatrixOp (const int k1, const int k2, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
virtual void v_WeakDerivMatrixOp (const int i, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
virtual void v_WeakDirectionalDerivMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
virtual void v_MassLevelCurvatureMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
virtual void v_LinearAdvectionDiffusionReactionMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey, bool addDiffusionTerm=true)
virtual void v_HelmholtzMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
virtual void v_LaplacianMatrixOp_MatFree (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
virtual void v_LaplacianMatrixOp_MatFree_Kernel (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, Array< OneD, NekDouble > &wsp)
virtual void v_HelmholtzMatrixOp_MatFree (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdMatrixKey &mkey)
virtual const NormalVectorv_GetEdgeNormal (const int edge) const
virtual void v_ComputeEdgeNormal (const int edge)
virtual void v_NegateEdgeNormal (const int edge)
virtual bool v_EdgeNormalNegated (const int edge)
virtual void v_ComputeFaceNormal (const int face)
virtual void v_NegateFaceNormal (const int face)
virtual const NormalVectorv_GetVertexNormal (const int vertex) const
virtual void v_ComputeVertexNormal (const int vertex)
virtual const NormalVectorv_GetFaceNormal (const int face) const
virtual const NormalVectorv_GetSurfaceNormal (const int id) const
virtual Array< OneD, unsigned int > v_GetEdgeInverseBoundaryMap (int eid)
virtual Array< OneD, unsigned int > v_GetFaceInverseBoundaryMap (int fid, StdRegions::Orientation faceOrient=eNoOrientation)
virtual DNekMatSharedPtr v_BuildInverseTransformationMatrix (const DNekScalMatSharedPtr &m_transformationmatrix)
virtual void v_GetSimplexEquiSpacedConnectivity (Array< OneD, int > &conn, bool standard=true)

Detailed Description

The base class for all shapes.

This is the lowest level basic class for all shapes and so contains the definition of common data and common routine to all elements

Definition at line 69 of file StdExpansion.h.

Constructor & Destructor Documentation

Nektar::StdRegions::StdExpansion::StdExpansion ( void  )

Default Constructor.

Definition at line 44 of file StdExpansion.cpp.

:
{
}
Nektar::StdRegions::StdExpansion::StdExpansion ( const int  numcoeffs,
const int  numbases,
const LibUtilities::BasisKey Ba = LibUtilities::NullBasisKey,
const LibUtilities::BasisKey Bb = LibUtilities::NullBasisKey,
const LibUtilities::BasisKey Bc = LibUtilities::NullBasisKey 
)

Constructor.

Definition at line 50 of file StdExpansion.cpp.

References ASSERTL2, Nektar::LibUtilities::BasisManager(), m_base, and Nektar::LibUtilities::NullBasisKey().

:
m_base(numbases),
m_ncoeffs(numcoeffs),
boost::bind(&StdExpansion::CreateStdMatrix, this, _1),
std::string("StdExpansionStdMatrix")),
boost::bind(&StdExpansion::CreateStdStaticCondMatrix, this, _1),
std::string("StdExpansionStdStaticCondMatrix")),
boost::bind(&StdExpansion::CreateIndexMap,this, _1),
std::string("StdExpansionIndexMap"))
{
switch(m_base.num_elements())
{
case 3:
"NULL Basis attempting to be used.");
case 2:
"NULL Basis attempting to be used.");
case 1:
"NULL Basis attempting to be used.");
break;
default:
break;
// ASSERTL0(false, "numbases incorrectly specified");
};
} //end constructor
Nektar::StdRegions::StdExpansion::StdExpansion ( const StdExpansion T)

Copy Constructor.

Definition at line 92 of file StdExpansion.cpp.

:
m_base(T.m_base),
m_elmt_id(T.m_elmt_id),
m_ncoeffs(T.m_ncoeffs),
m_stdMatrixManager(T.m_stdMatrixManager),
m_stdStaticCondMatrixManager(T.m_stdStaticCondMatrixManager),
m_IndexMapManager(T.m_IndexMapManager)
{
}
Nektar::StdRegions::StdExpansion::~StdExpansion ( )
virtual

Destructor.

Definition at line 102 of file StdExpansion.cpp.

{
}

Member Function Documentation

void Nektar::StdRegions::StdExpansion::AddRobinEdgeContribution ( const int  edgeid,
const Array< OneD, const NekDouble > &  primCoeffs,
Array< OneD, NekDouble > &  coeffs 
)
inline

Definition at line 1046 of file StdExpansion.h.

References v_AddRobinEdgeContribution().

{
v_AddRobinEdgeContribution(edgeid, primCoeffs, coeffs);
}
void Nektar::StdRegions::StdExpansion::AddRobinMassMatrix ( const int  edgeid,
const Array< OneD, const NekDouble > &  primCoeffs,
DNekMatSharedPtr inoutmat 
)
inline

Definition at line 1041 of file StdExpansion.h.

References v_AddRobinMassMatrix().

{
v_AddRobinMassMatrix(edgeid,primCoeffs,inoutmat);
}
template<class T >
boost::shared_ptr<T> Nektar::StdRegions::StdExpansion::as ( )
inline

Definition at line 1314 of file StdExpansion.h.

References ASSERTL1.

Referenced by Nektar::MultiRegions::PreconditionerBlock::BlockPreconditioner3D(), Nektar::MultiRegions::DisContField3D::SetUpDG(), Nektar::MultiRegions::DisContField2D::SetUpDG(), and Nektar::MultiRegions::PreconditionerLowEnergy::v_BuildPreconditioner().

{
#if defined __INTEL_COMPILER && BOOST_VERSION > 105200
typedef typename boost::shared_ptr<T>::element_type E;
E * p = dynamic_cast< E* >( shared_from_this().get() );
ASSERTL1(p, "Cannot perform cast");
return boost::shared_ptr<T>( shared_from_this(), p );
#else
return boost::dynamic_pointer_cast<T>( shared_from_this() );
#endif
}
DNekMatSharedPtr Nektar::StdRegions::StdExpansion::BuildInverseTransformationMatrix ( const DNekScalMatSharedPtr m_transformationmatrix)
inline

Definition at line 1276 of file StdExpansion.h.

References v_BuildInverseTransformationMatrix().

{
m_transformationmatrix);
}
void Nektar::StdRegions::StdExpansion::BwdTrans ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

This function performs the Backward transformation from coefficient space to physical space.

This function is a wrapper around the virtual function v_BwdTrans()

Based on the expansion coefficients, this function evaluates the expansion at the quadrature points. This is equivalent to the operation

\[ u(\xi_{1i}) = \sum_{p=0}^{P-1} \hat{u}_p \phi_p(\xi_{1i}) \]

which can be evaluated as $ {\bf u} = {\bf B}^T {\bf \hat{u}} $ with ${\bf B}[i][j] = \phi_i(\xi_{j})$

This function requires that the coefficient array $\mathbf{\hat{u}}$ provided as inarray.

The resulting array $\mathbf{u}[m]=u(\mathbf{\xi}_m)$ containing the expansion evaluated at the quadrature points, is stored in the outarray.

Parameters
inarraycontains the values of the expansion coefficients (input of the function)
outarraycontains the values of the expansion evaluated at the quadrature points (output of the function)

Definition at line 487 of file StdExpansion.h.

References v_BwdTrans().

Referenced by Extractlayerdata(), Nektar::LocalRegions::SegExp::v_HelmholtzMatrixOp(), Nektar::LocalRegions::SegExp::v_LaplacianMatrixOp(), Nektar::StdRegions::StdPrismExp::v_ReduceOrderCoeffs(), Nektar::StdRegions::StdTetExp::v_ReduceOrderCoeffs(), Nektar::StdRegions::StdTriExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdPrismExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdQuadExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdTetExp::v_SVVLaplacianFilter(), and Nektar::StdRegions::StdHexExp::v_SVVLaplacianFilter().

{
v_BwdTrans (inarray, outarray);
}
void Nektar::StdRegions::StdExpansion::BwdTrans_MatOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
protected

Definition at line 907 of file StdExpansion.cpp.

References DetShapeType(), Nektar::StdRegions::eBwdTrans, GetStdMatrix(), GetTotPoints(), and m_ncoeffs.

{
int nq = GetTotPoints();
StdMatrixKey bwdtransmatkey(eBwdTrans,DetShapeType(),*this);
DNekMatSharedPtr bwdtransmat = GetStdMatrix(bwdtransmatkey);
Blas::Dgemv('N',nq,m_ncoeffs,1.0,bwdtransmat->GetPtr().get(),
nq, inarray.get(), 1, 0.0, outarray.get(), 1);
}
void Nektar::StdRegions::StdExpansion::BwdTrans_SumFac ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inlineprotected

Definition at line 1365 of file StdExpansion.h.

References v_BwdTrans_SumFac().

Referenced by CreateGeneralMatrix(), and Nektar::StdRegions::StdHexExp::v_BwdTrans().

{
v_BwdTrans_SumFac(inarray,outarray);
}
int Nektar::StdRegions::StdExpansion::CalcNumberOfCoefficients ( const std::vector< unsigned int > &  nummodes,
int &  modes_offset 
)
inline

Definition at line 744 of file StdExpansion.h.

References v_CalcNumberOfCoefficients().

{
return v_CalcNumberOfCoefficients(nummodes,modes_offset);
}
void Nektar::StdRegions::StdExpansion::ComputeEdgeNormal ( const int  edge)
inline

Definition at line 1209 of file StdExpansion.h.

References v_ComputeEdgeNormal().

Referenced by Nektar::LocalRegions::Expansion2D::v_SetUpPhysNormals().

{
}
void Nektar::StdRegions::StdExpansion::ComputeFaceNormal ( const int  face)
inline

Definition at line 1224 of file StdExpansion.h.

References v_ComputeFaceNormal().

{
}
void Nektar::StdRegions::StdExpansion::ComputeVertexNormal ( const int  vertex)
inline

Definition at line 1234 of file StdExpansion.h.

References v_ComputeVertexNormal().

Referenced by Nektar::StdRegions::StdExpansion1D::v_SetUpPhysNormals().

{
}
DNekMatSharedPtr Nektar::StdRegions::StdExpansion::CreateGeneralMatrix ( const StdMatrixKey mkey)

this function generates the mass matrix $\mathbf{M}[i][j] = \int \phi_i(\mathbf{x}) \phi_j(\mathbf{x}) d\mathbf{x}$

Returns
returns the mass matrix

Definition at line 322 of file StdExpansion.cpp.

References BwdTrans_SumFac(), Nektar::StdRegions::eBwdTrans, ErrorUtil::efatal, Nektar::StdRegions::eHelmholtz, Nektar::StdRegions::eInvMass, Nektar::StdRegions::eInvNBasisTrans, Nektar::StdRegions::eIProductWRTBase, Nektar::StdRegions::eIProductWRTDerivBase0, Nektar::StdRegions::eIProductWRTDerivBase1, Nektar::StdRegions::eIProductWRTDerivBase2, Nektar::StdRegions::eLaplacian, Nektar::StdRegions::eLaplacian00, Nektar::StdRegions::eLaplacian01, Nektar::StdRegions::eLaplacian02, Nektar::StdRegions::eLaplacian11, Nektar::StdRegions::eLaplacian12, Nektar::StdRegions::eLaplacian22, Nektar::StdRegions::eLinearAdvectionDiffusionReaction, Nektar::StdRegions::eLinearAdvectionReaction, Nektar::StdRegions::eMass, Nektar::StdRegions::eMassLevelCurvature, Nektar::StdRegions::eNBasisTrans, Nektar::StdRegions::eWeakDeriv0, Nektar::StdRegions::eWeakDeriv1, Nektar::StdRegions::eWeakDeriv2, Nektar::StdRegions::eWeakDirectionalDeriv, GeneralMatrixOp_MatFree(), Nektar::StdRegions::StdMatrixKey::GetMatrixType(), Nektar::StdRegions::StdMatrixKey::GetNodalPointsType(), Nektar::StdRegions::StdMatrixKey::GetShapeType(), GetStdMatrix(), GetTotPoints(), IProductWRTBase_SumFac(), IProductWRTDerivBase_SumFac(), m_ncoeffs, NEKERROR, Nektar::StdRegions::NullConstFactorMap, Nektar::StdRegions::NullVarCoeffMap, Vmath::Vcopy(), and Vmath::Zero().

Referenced by Nektar::StdRegions::StdHexExp::v_CreateStdMatrix(), Nektar::StdRegions::StdPointExp::v_GenMatrix(), Nektar::StdRegions::StdNodalPrismExp::v_GenMatrix(), Nektar::StdRegions::StdNodalTetExp::v_GenMatrix(), Nektar::StdRegions::StdNodalTriExp::v_GenMatrix(), Nektar::StdRegions::StdSegExp::v_GenMatrix(), Nektar::StdRegions::StdQuadExp::v_GenMatrix(), Nektar::StdRegions::StdTriExp::v_GenMatrix(), Nektar::StdRegions::StdPrismExp::v_GenMatrix(), Nektar::StdRegions::StdTetExp::v_GenMatrix(), Nektar::StdRegions::StdHexExp::v_GenMatrix(), and Nektar::StdRegions::StdPyrExp::v_GenMatrix().

{
int i;
DNekMatSharedPtr returnval;
switch(mkey.GetMatrixType())
{
case eInvMass:
{
StdMatrixKey masskey(eMass,mkey.GetShapeType(),*this,NullConstFactorMap,NullVarCoeffMap,mkey.GetNodalPointsType());
DNekMatSharedPtr mmat = GetStdMatrix(masskey);
returnval = MemoryManager<DNekMat>::AllocateSharedPtr(*mmat); //Populate standard mass matrix.
returnval->Invert();
}
break;
{
StdMatrixKey tmpkey(eNBasisTrans,mkey.GetShapeType(),*this,NullConstFactorMap,NullVarCoeffMap,mkey.GetNodalPointsType());
DNekMatSharedPtr tmpmat = GetStdMatrix(tmpkey);
returnval = MemoryManager<DNekMat>::AllocateSharedPtr(*tmpmat); //Populate matrix.
returnval->Invert();
}
break;
case eBwdTrans:
{
int nq = GetTotPoints();
Array<OneD, NekDouble> tmpin(m_ncoeffs);
Array<OneD, NekDouble> tmpout(nq);
returnval = MemoryManager<DNekMat>::AllocateSharedPtr(nq,m_ncoeffs);
for(int i=0; i<m_ncoeffs; ++i)
{
Vmath::Zero(m_ncoeffs, tmpin, 1);
tmpin[i] = 1.0;
BwdTrans_SumFac(tmpin,tmpout);
Vmath::Vcopy(nq,tmpout.get(),1,
returnval->GetRawPtr()+i*nq,1);
}
}
break;
{
int nq = GetTotPoints();
Array<OneD, NekDouble> tmpin(nq);
Array<OneD, NekDouble> tmpout(m_ncoeffs);
returnval = MemoryManager<DNekMat>::AllocateSharedPtr(m_ncoeffs,nq);
for(i=0; i < nq; ++i)
{
Vmath::Zero(nq, tmpin, 1);
tmpin[i] = 1.0;
IProductWRTBase_SumFac(tmpin,tmpout);
Vmath::Vcopy(m_ncoeffs,tmpout.get(),1,
returnval->GetRawPtr()+i*m_ncoeffs,1);
}
}
break;
{
int nq = GetTotPoints();
Array<OneD, NekDouble> tmpin(nq);
Array<OneD, NekDouble> tmpout(m_ncoeffs);
returnval = MemoryManager<DNekMat>::AllocateSharedPtr(nq,m_ncoeffs);
for(i=0; i < nq; ++i)
{
Vmath::Zero(nq, tmpin, 1);
tmpin[i] = 1.0;
IProductWRTDerivBase_SumFac(0,tmpin,tmpout);
Vmath::Vcopy(m_ncoeffs,tmpout.get(),1,
returnval->GetRawPtr()+i*m_ncoeffs,1);
}
}
break;
{
int nq = GetTotPoints();
Array<OneD, NekDouble> tmpin(nq);
Array<OneD, NekDouble> tmpout(m_ncoeffs);
returnval = MemoryManager<DNekMat>::AllocateSharedPtr(nq,m_ncoeffs);
for(i=0; i < nq; ++i)
{
Vmath::Zero(nq, tmpin, 1);
tmpin[i] = 1.0;
IProductWRTDerivBase_SumFac(1,tmpin,tmpout);
Vmath::Vcopy(m_ncoeffs,tmpout.get(),1,
returnval->GetRawPtr()+i*m_ncoeffs,1);
}
}
break;
{
int nq = GetTotPoints();
Array<OneD, NekDouble> tmpin(nq);
Array<OneD, NekDouble> tmpout(m_ncoeffs);
returnval = MemoryManager<DNekMat>::AllocateSharedPtr(nq,m_ncoeffs);
for(i=0; i < nq; ++i)
{
Vmath::Zero(nq, tmpin, 1);
tmpin[i] = 1.0;
IProductWRTDerivBase_SumFac(2,tmpin,tmpout);
Vmath::Vcopy(m_ncoeffs,tmpout.get(),1,
returnval->GetRawPtr()+i*m_ncoeffs,1);
}
}
break;
case eMass:
case eHelmholtz:
case eLaplacian:
{
Array<OneD, NekDouble> tmp(m_ncoeffs);
returnval = MemoryManager<DNekMat>::AllocateSharedPtr(m_ncoeffs,m_ncoeffs);
DNekMat &Mat = *returnval;
for(i=0; i < m_ncoeffs; ++i)
{
Vmath::Zero(m_ncoeffs, tmp, 1);
tmp[i] = 1.0;
GeneralMatrixOp_MatFree(tmp,tmp,mkey);
Vmath::Vcopy(m_ncoeffs,&tmp[0],1,
&(Mat.GetPtr())[0]+i*m_ncoeffs,1);
}
}
break;
default:
{
NEKERROR(ErrorUtil::efatal, "This type of matrix can not be created using a general approach");
}
break;
}
return returnval;
}
IndexMapValuesSharedPtr Nektar::StdRegions::StdExpansion::CreateIndexMap ( const IndexMapKey ikey)
protected

Create an IndexMap which contains mapping information linking any specific element shape with either its boundaries, edges, faces, verteces, etc.

The index member of the IndexMapValue struct gives back an integer associated with an entity index The sign member of the same struct gives back a sign to algebrically apply entities orientation

Definition at line 260 of file StdExpansion.cpp.

References ASSERTL0, Nektar::StdRegions::eBoundary, Nektar::StdRegions::eEdgeInterior, Nektar::StdRegions::eEdgeToElement, Nektar::StdRegions::eFaceInterior, Nektar::StdRegions::eFaceToElement, Nektar::StdRegions::eVertex, Nektar::StdRegions::IndexMapKey::GetIndexEntity(), Nektar::StdRegions::IndexMapKey::GetIndexMapType(), Nektar::StdRegions::IndexMapKey::GetIndexOrientation(), sign, v_GetEdgeInteriorMap(), v_GetEdgeToElementMap(), v_GetFaceInteriorMap(), and v_GetFaceToElementMap().

{
IndexMapType itype = ikey.GetIndexMapType();
int entity = ikey.GetIndexEntity();
Orientation orient = ikey.GetIndexOrientation();
Array<OneD,unsigned int> map;
Array<OneD,int> sign;
switch(itype)
{
{
v_GetEdgeToElementMap(entity,orient,map,sign);
}
break;
{
v_GetFaceToElementMap(entity,orient,map,sign);
}
break;
{
v_GetEdgeInteriorMap(entity,orient,map,sign);
}
break;
{
v_GetFaceInteriorMap(entity,orient,map,sign);
}
break;
case eBoundary:
{
ASSERTL0(false,"Boundary Index Map not implemented yet.");
}
break;
case eVertex:
{
ASSERTL0(false,"Vertex Index Map not implemented yet.");
}
break;
default:
{
ASSERTL0(false,"The Index Map you are requiring is not between the possible options.");
}
}
returnval = MemoryManager<IndexMapValues>::AllocateSharedPtr(map.num_elements());
for(int i = 0; i < map.num_elements(); i++)
{
(*returnval)[i].index = map[i];
(*returnval)[i].sign = sign[i];
}
return returnval;
}
DNekMatSharedPtr Nektar::StdRegions::StdExpansion::CreateStdMatrix ( const StdMatrixKey mkey)
inlineprotected

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 1334 of file StdExpansion.h.

References v_CreateStdMatrix().

{
return v_CreateStdMatrix(mkey);
}
DNekBlkMatSharedPtr Nektar::StdRegions::StdExpansion::CreateStdStaticCondMatrix ( const StdMatrixKey mkey)
protected

Create the static condensation of a matrix when using a boundary interior decomposition.

If a matrix system can be represented by $ Mat = \left [ \begin{array}{cc} A & B \\ C & D \end{array} \right ] $ This routine creates a matrix containing the statically condense system of the form $ Mat = \left [ \begin{array}{cc} A - B D^{-1} C & B D^{-1} \\ D^{-1} C & D^{-1} \end{array} \right ] $

Definition at line 193 of file StdExpansion.cpp.

References GetBoundaryMap(), GetInteriorMap(), GetStdMatrix(), m_ncoeffs, and NumBndryCoeffs().

{
int nbdry = NumBndryCoeffs(); // also checks to see if this is a boundary interior decomposed expansion
int nint = m_ncoeffs - nbdry;
DNekMatSharedPtr A = MemoryManager<DNekMat>::AllocateSharedPtr(nbdry,nbdry);
DNekMatSharedPtr B = MemoryManager<DNekMat>::AllocateSharedPtr(nbdry,nint);
DNekMatSharedPtr C = MemoryManager<DNekMat>::AllocateSharedPtr(nint,nbdry);
DNekMatSharedPtr D = MemoryManager<DNekMat>::AllocateSharedPtr(nint,nint);
int i,j;
Array<OneD,unsigned int> bmap(nbdry);
Array<OneD,unsigned int> imap(nint);
for(i = 0; i < nbdry; ++i)
{
for(j = 0; j < nbdry; ++j)
{
(*A)(i,j) = (*mat)(bmap[i],bmap[j]);
}
for(j = 0; j < nint; ++j)
{
(*B)(i,j) = (*mat)(bmap[i],imap[j]);
}
}
for(i = 0; i < nint; ++i)
{
for(j = 0; j < nbdry; ++j)
{
(*C)(i,j) = (*mat)(imap[i],bmap[j]);
}
for(j = 0; j < nint; ++j)
{
(*D)(i,j) = (*mat)(imap[i],imap[j]);
}
}
// Calculate static condensed system
if(nint)
{
D->Invert();
(*B) = (*B)*(*D);
(*A) = (*A) - (*B)*(*C);
}
// set up block matrix system
Array<OneD, unsigned int> exp_size(2);
exp_size[0] = nbdry;
exp_size[1] = nint;
returnval = MemoryManager<DNekBlkMat>::AllocateSharedPtr(exp_size,exp_size);
returnval->SetBlock(0,0,A);
returnval->SetBlock(0,1,B);
returnval->SetBlock(1,0,C);
returnval->SetBlock(1,1,D);
return returnval;
}
int Nektar::StdRegions::StdExpansion::DetCartesianDirOfEdge ( const int  edge)
inline

Definition at line 314 of file StdExpansion.h.

References v_DetCartesianDirOfEdge().

{
}
const LibUtilities::BasisKey Nektar::StdRegions::StdExpansion::DetEdgeBasisKey ( const int  i) const
inline

Definition at line 319 of file StdExpansion.h.

References v_DetEdgeBasisKey().

{
return v_DetEdgeBasisKey(i);
}
const LibUtilities::BasisKey Nektar::StdRegions::StdExpansion::DetFaceBasisKey ( const int  i,
const int  k 
) const
inline

Definition at line 324 of file StdExpansion.h.

References v_DetFaceBasisKey().

Referenced by Nektar::LocalRegions::PyrExp::v_ComputeFaceNormal(), Nektar::LocalRegions::TetExp::v_ComputeFaceNormal(), Nektar::LocalRegions::PrismExp::v_ComputeFaceNormal(), and Nektar::LocalRegions::HexExp::v_ComputeFaceNormal().

{
return v_DetFaceBasisKey(i, k);
}
LibUtilities::ShapeType Nektar::StdRegions::StdExpansion::DetShapeType ( ) const
inline

This function returns the shape of the expansion domain.

This function is a wrapper around the virtual function v_DetShapeType()

The different shape types implemented in the code are defined in the ::ShapeType enumeration list. As a result, the function will return one of the types of this enumeration list.

Returns
returns the shape of the expansion domain

Reimplemented in Nektar::StdRegions::StdTetExp.

Definition at line 443 of file StdExpansion.h.

References v_DetShapeType().

Referenced by Nektar::LocalRegions::Expansion3D::AddFaceBoundaryInt(), Nektar::LocalRegions::Expansion2D::AddHDGHelmholtzEdgeTerms(), Nektar::LocalRegions::Expansion3D::AddHDGHelmholtzFaceTerms(), BwdTrans_MatOp(), Nektar::LocalRegions::PyrExp::CreateMatrix(), Nektar::LocalRegions::NodalTriExp::CreateMatrix(), Nektar::LocalRegions::PrismExp::CreateMatrix(), Nektar::LocalRegions::TriExp::CreateMatrix(), Nektar::LocalRegions::QuadExp::CreateMatrix(), Nektar::LocalRegions::SegExp::CreateMatrix(), Nektar::LocalRegions::HexExp::CreateMatrix(), Nektar::LocalRegions::NodalTriExp::FwdTrans(), Nektar::LinearisedAdvection::GetFloquetBlockMatrix(), Nektar::AdjointAdvection::GetFloquetBlockMatrix(), Nektar::LocalRegions::Expansion::GetLocMatrix(), HelmholtzMatrixOp_MatFree_GenericImpl(), Nektar::LocalRegions::NodalTriExp::IProductWRTBase_MatOp(), Nektar::LocalRegions::HexExp::IProductWRTDerivBase_MatOp(), Nektar::LocalRegions::NodalTriExp::IProductWRTDerivBase_MatOp(), LinearAdvectionDiffusionReactionMatrixOp_MatFree(), Nektar::StdRegions::StdNodalPrismExp::ModalToNodal(), Nektar::StdRegions::StdNodalTriExp::ModalToNodal(), Nektar::LocalRegions::SegExp::MultiplyByElmtInvMass(), Nektar::StdRegions::StdNodalPrismExp::NodalToModal(), Nektar::StdRegions::StdNodalTriExp::NodalToModal(), Nektar::StdRegions::StdNodalPrismExp::NodalToModalTranspose(), Nektar::StdRegions::StdNodalTriExp::NodalToModalTranspose(), PhysInterpToSimplexEquiSpaced(), Nektar::LocalRegions::Expansion3D::SetFaceToGeomOrientation(), Nektar::LocalRegions::Expansion2D::v_AddEdgeNormBoundaryInt(), Nektar::LocalRegions::Expansion3D::v_AddFaceNormBoundaryInt(), Nektar::LocalRegions::Expansion3D::v_AddRobinMassMatrix(), Nektar::LocalRegions::PrismExp::v_FwdTrans(), Nektar::LocalRegions::PyrExp::v_FwdTrans(), Nektar::StdRegions::StdNodalPrismExp::v_FwdTrans(), Nektar::StdRegions::StdNodalTriExp::v_FwdTrans(), Nektar::LocalRegions::SegExp::v_FwdTrans(), Nektar::LocalRegions::TriExp::v_FwdTrans(), Nektar::LocalRegions::QuadExp::v_FwdTrans(), Nektar::LocalRegions::HexExp::v_FwdTrans(), Nektar::StdRegions::StdTriExp::v_FwdTrans(), Nektar::StdRegions::StdHexExp::v_FwdTrans(), Nektar::StdRegions::StdPrismExp::v_FwdTrans(), Nektar::StdRegions::StdQuadExp::v_FwdTrans(), Nektar::StdRegions::StdPyrExp::v_FwdTrans(), Nektar::StdRegions::StdQuadExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::TriExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::SegExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::QuadExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdTriExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::Expansion3D::v_GenMatrix(), Nektar::LocalRegions::Expansion2D::v_GenMatrix(), Nektar::StdRegions::StdQuadExp::v_GenMatrix(), Nektar::LocalRegions::QuadExp::v_GetEdgeInterpVals(), Nektar::LocalRegions::SegExp::v_GetVertexPhysVals(), Nektar::LocalRegions::TriExp::v_IProductWRTBase_MatOp(), Nektar::LocalRegions::QuadExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdTriExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdPrismExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdHexExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdQuadExp::v_IProductWRTBase_MatOp(), Nektar::LocalRegions::TriExp::v_IProductWRTDerivBase_MatOp(), Nektar::LocalRegions::QuadExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdTriExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdPrismExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdQuadExp::v_IProductWRTDerivBase_MatOp(), and Nektar::StdRegions::StdHexExp::v_IProductWRTDerivBase_MatOp().

{
return v_DetShapeType();
}
void Nektar::StdRegions::StdExpansion::DropLocStaticCondMatrix ( const LocalRegions::MatrixKey mkey)
inline

Definition at line 704 of file StdExpansion.h.

References v_DropLocStaticCondMatrix().

{
}
bool Nektar::StdRegions::StdExpansion::EdgeNormalNegated ( const int  edge)
inline

Definition at line 1219 of file StdExpansion.h.

References v_EdgeNormalNegated().

{
return v_EdgeNormalNegated(edge);
}
int Nektar::StdRegions::StdExpansion::EvalBasisNumModesMax ( void  ) const
inline

This function returns the maximum number of expansion modes over all local directions.

Returns
returns the maximum number of expansion modes over all local directions

Definition at line 191 of file StdExpansion.h.

References m_base.

{
int i;
int returnval = 0;
for(i = 0; i < m_base.num_elements(); ++i)
{
returnval = max(returnval, m_base[i]->GetNumModes());
}
return returnval;
}
void Nektar::StdRegions::StdExpansion::ExtractDataToCoeffs ( const NekDouble data,
const std::vector< unsigned int > &  nummodes,
const int  nmodes_offset,
NekDouble coeffs 
)
inline

Definition at line 749 of file StdExpansion.h.

References v_ExtractDataToCoeffs().

{
v_ExtractDataToCoeffs(data,nummodes,nmodes_offset,coeffs);
}
void Nektar::StdRegions::StdExpansion::FillMode ( const int  mode,
Array< OneD, NekDouble > &  outarray 
)
inline

This function fills the array outarray with the mode-th mode of the expansion.

This function is a wrapper around the virtual function v_FillMode()

The requested mode is evaluated at the quadrature points

Parameters
modethe mode that should be filled
outarraycontains the values of the mode-th mode of the expansion evaluated at the quadrature points (output of the function)

Definition at line 554 of file StdExpansion.h.

References v_FillMode().

{
v_FillMode(mode, outarray);
}
void Nektar::StdRegions::StdExpansion::FwdTrans ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

This function performs the Forward transformation from physical space to coefficient space.

This function is a wrapper around the virtual function v_FwdTrans()

Given a function evaluated at the quadrature points, this function calculates the expansion coefficients such that the resulting expansion approximates the original function.

The calculation of the expansion coefficients is done using a Galerkin projection. This is equivalent to the operation:

\[ \mathbf{\hat{u}} = \mathbf{M}^{-1} \mathbf{I}\]

where

This function takes the array inarray as the values of the function evaluated at the quadrature points (i.e. $\mathbf{u}$), and stores the resulting coefficients $\mathbf{\hat{u}}$ in the outarray

Parameters
inarrayarray of the function discretely evaluated at the quadrature points
outarrayarray of the function coefficieints

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 1792 of file StdExpansion.h.

References v_FwdTrans().

Referenced by Nektar::LocalRegions::Expansion2D::GetPhysEdgeVarCoeffsFromElement(), main(), Nektar::StdRegions::StdPrismExp::v_ReduceOrderCoeffs(), Nektar::StdRegions::StdTetExp::v_ReduceOrderCoeffs(), Nektar::StdRegions::StdTriExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdPrismExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdQuadExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdTetExp::v_SVVLaplacianFilter(), and Nektar::StdRegions::StdHexExp::v_SVVLaplacianFilter().

{
v_FwdTrans(inarray,outarray);
}
void Nektar::StdRegions::StdExpansion::FwdTrans_BndConstrained ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 500 of file StdExpansion.h.

References v_FwdTrans_BndConstrained().

{
v_FwdTrans_BndConstrained(inarray,outarray);
}
void Nektar::StdRegions::StdExpansion::GeneralMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)

Definition at line 489 of file StdExpansion.cpp.

References ErrorUtil::efatal, Nektar::StdRegions::eHelmholtz, Nektar::StdRegions::eLaplacian, Nektar::StdRegions::eLaplacian00, Nektar::StdRegions::eLaplacian01, Nektar::StdRegions::eLaplacian02, Nektar::StdRegions::eLaplacian10, Nektar::StdRegions::eLaplacian11, Nektar::StdRegions::eLaplacian12, Nektar::StdRegions::eLaplacian20, Nektar::StdRegions::eLaplacian21, Nektar::StdRegions::eLaplacian22, Nektar::StdRegions::eLinearAdvectionDiffusionReaction, Nektar::StdRegions::eLinearAdvectionReaction, Nektar::StdRegions::eMass, Nektar::StdRegions::eMassLevelCurvature, Nektar::StdRegions::eWeakDeriv0, Nektar::StdRegions::eWeakDeriv1, Nektar::StdRegions::eWeakDeriv2, Nektar::StdRegions::eWeakDirectionalDeriv, Nektar::StdRegions::StdMatrixKey::GetMatrixType(), HelmholtzMatrixOp(), LaplacianMatrixOp(), LinearAdvectionDiffusionReactionMatrixOp(), MassLevelCurvatureMatrixOp(), MassMatrixOp(), NEKERROR, WeakDerivMatrixOp(), and WeakDirectionalDerivMatrixOp().

{
switch(mkey.GetMatrixType())
{
case eMass:
MassMatrixOp(inarray,outarray,mkey);
break;
WeakDerivMatrixOp(0,inarray,outarray,mkey);
break;
WeakDerivMatrixOp(1,inarray,outarray,mkey);
break;
WeakDerivMatrixOp(2,inarray,outarray,mkey);
break;
WeakDirectionalDerivMatrixOp(inarray,outarray,mkey);
break;
MassLevelCurvatureMatrixOp(inarray,outarray,mkey);
break;
LinearAdvectionDiffusionReactionMatrixOp(inarray,outarray,mkey,false);
break;
break;
case eLaplacian:
LaplacianMatrixOp(inarray,outarray,mkey);
break;
LaplacianMatrixOp(0,0,inarray,outarray,mkey);
break;
LaplacianMatrixOp(0,1,inarray,outarray,mkey);
break;
LaplacianMatrixOp(0,2,inarray,outarray,mkey);
break;
LaplacianMatrixOp(1,0,inarray,outarray,mkey);
break;
LaplacianMatrixOp(1,1,inarray,outarray,mkey);
break;
LaplacianMatrixOp(1,2,inarray,outarray,mkey);
break;
LaplacianMatrixOp(2,0,inarray,outarray,mkey);
break;
LaplacianMatrixOp(2,1,inarray,outarray,mkey);
break;
LaplacianMatrixOp(2,2,inarray,outarray,mkey);
break;
case eHelmholtz:
HelmholtzMatrixOp(inarray,outarray,mkey);
break;
default:
NEKERROR(ErrorUtil::efatal, "This matrix does not have an operator");
break;
}
}
void Nektar::StdRegions::StdExpansion::GeneralMatrixOp_MatFree ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
protected

Definition at line 558 of file StdExpansion.cpp.

References ErrorUtil::efatal, Nektar::StdRegions::eHelmholtz, Nektar::StdRegions::eLaplacian, Nektar::StdRegions::eLaplacian00, Nektar::StdRegions::eLaplacian01, Nektar::StdRegions::eLaplacian02, Nektar::StdRegions::eLaplacian10, Nektar::StdRegions::eLaplacian11, Nektar::StdRegions::eLaplacian12, Nektar::StdRegions::eLaplacian20, Nektar::StdRegions::eLaplacian21, Nektar::StdRegions::eLaplacian22, Nektar::StdRegions::eLinearAdvectionDiffusionReaction, Nektar::StdRegions::eLinearAdvectionReaction, Nektar::StdRegions::eMass, Nektar::StdRegions::eMassLevelCurvature, Nektar::StdRegions::eWeakDeriv0, Nektar::StdRegions::eWeakDeriv1, Nektar::StdRegions::eWeakDeriv2, Nektar::StdRegions::eWeakDirectionalDeriv, Nektar::StdRegions::StdMatrixKey::GetMatrixType(), HelmholtzMatrixOp_MatFree(), LaplacianMatrixOp_MatFree(), LinearAdvectionDiffusionReactionMatrixOp_MatFree(), MassLevelCurvatureMatrixOp_MatFree(), MassMatrixOp_MatFree(), NEKERROR, WeakDerivMatrixOp_MatFree(), and WeakDirectionalDerivMatrixOp_MatFree().

Referenced by CreateGeneralMatrix().

{
switch(mkey.GetMatrixType())
{
case eMass:
MassMatrixOp_MatFree(inarray,outarray,mkey);
break;
WeakDerivMatrixOp_MatFree(0,inarray,outarray,mkey);
break;
WeakDerivMatrixOp_MatFree(1,inarray,outarray,mkey);
break;
WeakDerivMatrixOp_MatFree(2,inarray,outarray,mkey);
break;
WeakDirectionalDerivMatrixOp_MatFree(inarray,outarray,mkey);
break;
MassLevelCurvatureMatrixOp_MatFree(inarray,outarray,mkey);
break;
break;
break;
case eLaplacian:
LaplacianMatrixOp_MatFree(inarray,outarray,mkey);
break;
LaplacianMatrixOp_MatFree(0,0,inarray,outarray,mkey);
break;
LaplacianMatrixOp_MatFree(0,1,inarray,outarray,mkey);
break;
LaplacianMatrixOp_MatFree(0,2,inarray,outarray,mkey);
break;
LaplacianMatrixOp_MatFree(1,0,inarray,outarray,mkey);
break;
LaplacianMatrixOp_MatFree(1,1,inarray,outarray,mkey);
break;
LaplacianMatrixOp_MatFree(1,2,inarray,outarray,mkey);
break;
LaplacianMatrixOp_MatFree(2,0,inarray,outarray,mkey);
break;
LaplacianMatrixOp_MatFree(2,1,inarray,outarray,mkey);
break;
LaplacianMatrixOp_MatFree(2,2,inarray,outarray,mkey);
break;
case eHelmholtz:
HelmholtzMatrixOp_MatFree(inarray,outarray,mkey);
break;
default:
NEKERROR(ErrorUtil::efatal, "This matrix does not have an operator");
break;
}
}
DNekMatSharedPtr Nektar::StdRegions::StdExpansion::GenMatrix ( const StdMatrixKey mkey)
inline

Definition at line 987 of file StdExpansion.h.

References v_GenMatrix().

Referenced by Nektar::LocalRegions::PyrExp::CreateMatrix(), Nektar::LocalRegions::NodalTriExp::CreateMatrix(), Nektar::LocalRegions::TetExp::CreateMatrix(), Nektar::LocalRegions::PrismExp::CreateMatrix(), Nektar::LocalRegions::TriExp::CreateMatrix(), Nektar::LocalRegions::QuadExp::CreateMatrix(), Nektar::LocalRegions::SegExp::CreateMatrix(), Nektar::LocalRegions::HexExp::CreateMatrix(), and Nektar::StdRegions::StdQuadExp::v_CreateStdMatrix().

{
return v_GenMatrix(mkey);
}
const Array<OneD, const LibUtilities::BasisSharedPtr>& Nektar::StdRegions::StdExpansion::GetBase ( ) const
inline

This function gets the shared point to basis.

Returns
returns the shared pointer to the bases

Definition at line 107 of file StdExpansion.h.

References m_base.

{
return(m_base);
}
const LibUtilities::BasisSharedPtr& Nektar::StdRegions::StdExpansion::GetBasis ( int  dir) const
inline

This function gets the shared point to basis in the dir direction.

Returns
returns the shared pointer to the basis in directin dir

Definition at line 118 of file StdExpansion.h.

References ASSERTL1, and m_base.

Referenced by Nektar::LocalRegions::Expansion1D::AddHDGHelmholtzTraceTerms(), Nektar::LocalRegions::Expansion1D::AddNormTraceInt(), Nektar::StdRegions::StdQuadExp::v_DetEdgeBasisKey(), Nektar::StdRegions::StdTriExp::v_DetEdgeBasisKey(), and Nektar::LocalRegions::SegExp::v_GetBasis().

{
ASSERTL1(dir < m_base.num_elements(),
"dir is larger than number of bases");
return(m_base[dir]);
}
int Nektar::StdRegions::StdExpansion::GetBasisNumModes ( const int  dir) const
inline

This function returns the number of expansion modes in the dir direction.

Parameters
dirthe direction
Returns
returns the number of expansion modes in the dir direction

Definition at line 178 of file StdExpansion.h.

References ASSERTL1, and m_base.

Referenced by Nektar::LocalRegions::Expansion3D::AddFaceBoundaryInt(), Nektar::LocalRegions::Expansion3D::AddHDGHelmholtzFaceTerms(), Nektar::LocalRegions::Expansion3D::SetFaceToGeomOrientation(), Nektar::LocalRegions::Expansion2D::v_AddEdgeNormBoundaryInt(), Nektar::LocalRegions::Expansion3D::v_AddFaceNormBoundaryInt(), Nektar::LocalRegions::Expansion3D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion3D::v_GenMatrix(), Nektar::StdRegions::StdQuadExp::v_GenMatrix(), Nektar::StdRegions::StdQuadExp::v_GetEdgeNcoeffs(), Nektar::StdRegions::StdTriExp::v_GetEdgeNcoeffs(), Nektar::StdRegions::StdPrismExp::v_GetEdgeNcoeffs(), Nektar::StdRegions::StdHexExp::v_GetEdgeNcoeffs(), Nektar::StdRegions::StdPyrExp::v_GetEdgeNcoeffs(), Nektar::StdRegions::StdHexExp::v_GetFaceIntNcoeffs(), Nektar::StdRegions::StdPrismExp::v_GetFaceIntNcoeffs(), Nektar::StdRegions::StdPrismExp::v_GetFaceNcoeffs(), Nektar::StdRegions::StdHexExp::v_GetFaceNcoeffs(), Nektar::StdRegions::StdTetExp::v_GetFaceNcoeffs(), Nektar::StdRegions::StdPyrExp::v_GetFaceNcoeffs(), Nektar::StdRegions::StdPrismExp::v_GetTotalEdgeIntNcoeffs(), Nektar::StdRegions::StdHexExp::v_GetTotalEdgeIntNcoeffs(), Nektar::StdRegions::StdHexExp::v_GetTotalFaceIntNcoeffs(), Nektar::StdRegions::StdPrismExp::v_GetTotalFaceIntNcoeffs(), Nektar::StdRegions::StdNodalTriExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdTriExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdQuadExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdTriExp::v_NumDGBndryCoeffs(), and Nektar::StdRegions::StdQuadExp::v_NumDGBndryCoeffs().

{
ASSERTL1(dir < m_base.num_elements(),"dir is larger than m_numbases");
return(m_base[dir]->GetNumModes());
}
LibUtilities::BasisType Nektar::StdRegions::StdExpansion::GetBasisType ( const int  dir) const
inline

This function returns the type of basis used in the dir direction.

The different types of bases implemented in the code are defined in the LibUtilities::BasisType enumeration list. As a result, the function will return one of the types of this enumeration list.

Parameters
dirthe direction
Returns
returns the type of basis used in the dir direction

Definition at line 165 of file StdExpansion.h.

References ASSERTL1, and m_base.

Referenced by Nektar::LocalRegions::SegExp::ReverseCoeffsAndSign(), Nektar::StdRegions::StdHexExp::v_BwdTrans(), Nektar::StdRegions::StdPrismExp::v_BwdTrans(), Nektar::StdRegions::StdTetExp::v_BwdTrans(), Nektar::StdRegions::StdTriExp::v_BwdTrans_SumFacKernel(), Nektar::StdRegions::StdPrismExp::v_BwdTrans_SumFacKernel(), Nektar::StdRegions::StdTetExp::v_BwdTrans_SumFacKernel(), Nektar::StdRegions::StdTriExp::v_DetEdgeBasisKey(), Nektar::StdRegions::StdPrismExp::v_DetFaceBasisKey(), Nektar::StdRegions::StdHexExp::v_DetFaceBasisKey(), Nektar::StdRegions::StdTetExp::v_DetFaceBasisKey(), Nektar::StdRegions::StdPyrExp::v_DetFaceBasisKey(), Nektar::LocalRegions::TetExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::PrismExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::HexExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::TriExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::QuadExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::SegExp::v_ExtractDataToCoeffs(), Nektar::StdRegions::StdTriExp::v_FillMode(), Nektar::StdRegions::StdPointExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::SegExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdSegExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdSegExp::v_GenMatrix(), Nektar::StdRegions::StdQuadExp::v_GenMatrix(), Nektar::StdRegions::StdSegExp::v_GetBoundaryMap(), Nektar::StdRegions::StdQuadExp::v_GetBoundaryMap(), Nektar::StdRegions::StdTriExp::v_GetBoundaryMap(), Nektar::StdRegions::StdPrismExp::v_GetBoundaryMap(), Nektar::StdRegions::StdTetExp::v_GetBoundaryMap(), Nektar::StdRegions::StdHexExp::v_GetBoundaryMap(), Nektar::StdRegions::StdPyrExp::v_GetBoundaryMap(), Nektar::StdRegions::StdQuadExp::v_GetEdgeBasisType(), Nektar::StdRegions::StdTriExp::v_GetEdgeBasisType(), Nektar::StdRegions::StdPrismExp::v_GetEdgeBasisType(), Nektar::StdRegions::StdHexExp::v_GetEdgeBasisType(), Nektar::StdRegions::StdTetExp::v_GetEdgeBasisType(), Nektar::StdRegions::StdPyrExp::v_GetEdgeBasisType(), Nektar::StdRegions::StdHexExp::v_GetEdgeInteriorMap(), Nektar::StdRegions::StdHexExp::v_GetFaceInteriorMap(), Nektar::StdRegions::StdSegExp::v_GetInteriorMap(), Nektar::StdRegions::StdQuadExp::v_GetInteriorMap(), Nektar::StdRegions::StdTriExp::v_GetInteriorMap(), Nektar::StdRegions::StdPrismExp::v_GetInteriorMap(), Nektar::StdRegions::StdTetExp::v_GetInteriorMap(), Nektar::StdRegions::StdHexExp::v_GetInteriorMap(), Nektar::StdRegions::StdPyrExp::v_GetInteriorMap(), Nektar::StdRegions::StdSegExp::v_GetVertexMap(), Nektar::StdRegions::StdQuadExp::v_GetVertexMap(), Nektar::StdRegions::StdHexExp::v_GetVertexMap(), Nektar::StdRegions::StdPrismExp::v_IProductWRTBase(), Nektar::StdRegions::StdTetExp::v_IProductWRTBase(), Nektar::StdRegions::StdTriExp::v_IProductWRTBase_SumFacKernel(), Nektar::StdRegions::StdPrismExp::v_IProductWRTBase_SumFacKernel(), Nektar::StdRegions::StdTetExp::v_IProductWRTBase_SumFacKernel(), Nektar::StdRegions::StdQuadExp::v_IsBoundaryInteriorExpansion(), Nektar::StdRegions::StdPrismExp::v_IsBoundaryInteriorExpansion(), Nektar::StdRegions::StdHexExp::v_IsBoundaryInteriorExpansion(), Nektar::StdRegions::StdSegExp::v_IsBoundaryInteriorExpansion(), Nektar::StdRegions::StdTetExp::v_IsBoundaryInteriorExpansion(), Nektar::StdRegions::StdTriExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdQuadExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdPrismExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdHexExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdTetExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdPyrExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdTriExp::v_NumDGBndryCoeffs(), Nektar::StdRegions::StdQuadExp::v_NumDGBndryCoeffs(), Nektar::StdRegions::StdPrismExp::v_NumDGBndryCoeffs(), Nektar::StdRegions::StdHexExp::v_NumDGBndryCoeffs(), Nektar::StdRegions::StdTetExp::v_NumDGBndryCoeffs(), Nektar::LocalRegions::HexExp::v_ReduceOrderCoeffs(), Nektar::StdRegions::StdTriExp::v_ReduceOrderCoeffs(), Nektar::StdRegions::StdQuadExp::v_ReduceOrderCoeffs(), Nektar::LocalRegions::TriExp::v_ReduceOrderCoeffs(), and Nektar::LocalRegions::QuadExp::v_ReduceOrderCoeffs().

{
ASSERTL1(dir < m_base.num_elements(), "dir is larger than m_numbases");
return(m_base[dir]->GetBasisType());
}
void Nektar::StdRegions::StdExpansion::GetBoundaryMap ( Array< OneD, unsigned int > &  outarray)
inline

Definition at line 768 of file StdExpansion.h.

References v_GetBoundaryMap().

Referenced by Nektar::LocalRegions::Expansion1D::AddHDGHelmholtzTraceTerms(), Nektar::LocalRegions::Expansion1D::AddNormTraceInt(), Nektar::LocalRegions::PyrExp::CreateStaticCondMatrix(), Nektar::LocalRegions::NodalTriExp::CreateStaticCondMatrix(), Nektar::LocalRegions::TetExp::CreateStaticCondMatrix(), Nektar::LocalRegions::PrismExp::CreateStaticCondMatrix(), Nektar::LocalRegions::TriExp::CreateStaticCondMatrix(), Nektar::LocalRegions::QuadExp::CreateStaticCondMatrix(), Nektar::LocalRegions::SegExp::CreateStaticCondMatrix(), Nektar::LocalRegions::HexExp::CreateStaticCondMatrix(), CreateStdStaticCondMatrix(), Nektar::LocalRegions::Expansion1D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion3D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion2D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion1D::v_GenMatrix(), Nektar::LocalRegions::Expansion3D::v_GetEdgeInverseBoundaryMap(), Nektar::LocalRegions::Expansion2D::v_GetEdgeInverseBoundaryMap(), and Nektar::LocalRegions::Expansion3D::v_GetFaceInverseBoundaryMap().

{
v_GetBoundaryMap(outarray);
}
StdRegions::Orientation Nektar::StdRegions::StdExpansion::GetCartesianEorient ( int  edge)
inline

Definition at line 724 of file StdExpansion.h.

References v_GetCartesianEorient().

Referenced by Nektar::LocalRegions::TriExp::v_GetEdgePhysVals(), and Nektar::LocalRegions::QuadExp::v_GetEdgePhysVals().

{
return v_GetCartesianEorient(edge);
}
void Nektar::StdRegions::StdExpansion::GetCoord ( const Array< OneD, const NekDouble > &  Lcoord,
Array< OneD, NekDouble > &  coord 
)
inline

given the coordinates of a point of the element in the local collapsed coordinate system, this function calculates the physical coordinates of the point

This function is a wrapper around the virtual function v_GetCoord()

Parameters
Lcoordsthe coordinates in the local collapsed coordinate system
coordsthe physical coordinates (output of the function)

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 656 of file StdExpansion.h.

References v_GetCoord().

{
v_GetCoord(Lcoord, coord);
}
int Nektar::StdRegions::StdExpansion::GetCoordim ( )
inline

Definition at line 763 of file StdExpansion.h.

References v_GetCoordim().

Referenced by Nektar::LocalRegions::Expansion2D::AddHDGHelmholtzEdgeTerms(), Nektar::LocalRegions::Expansion3D::AddHDGHelmholtzFaceTerms(), Nektar::LocalRegions::Expansion1D::AddHDGHelmholtzTraceTerms(), LaplacianMatrixOp_MatFree(), LaplacianMatrixOp_MatFree_GenericImpl(), LinearAdvectionDiffusionReactionMatrixOp_MatFree(), Nektar::LocalRegions::Expansion2D::v_AddEdgeNormBoundaryInt(), Nektar::LocalRegions::TriExp::v_ComputeEdgeNormal(), Nektar::LocalRegions::QuadExp::v_ComputeEdgeNormal(), Nektar::LocalRegions::NodalTriExp::v_ComputeEdgeNormal(), Nektar::LocalRegions::PyrExp::v_ComputeFaceNormal(), Nektar::LocalRegions::TetExp::v_ComputeFaceNormal(), Nektar::LocalRegions::PrismExp::v_ComputeFaceNormal(), Nektar::LocalRegions::HexExp::v_ComputeFaceNormal(), Nektar::LocalRegions::TriExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::SegExp::v_ComputeVertexNormal(), Nektar::LocalRegions::Expansion1D::v_GenMatrix(), Nektar::LocalRegions::Expansion3D::v_GenMatrix(), Nektar::LocalRegions::Expansion2D::v_GenMatrix(), Nektar::LocalRegions::PointExp::v_GetCoords(), Nektar::LocalRegions::Expansion2D::v_NegateEdgeNormal(), and Nektar::StdRegions::StdExpansion3D::v_NegateFaceNormal().

{
return v_GetCoordim();
}
void Nektar::StdRegions::StdExpansion::GetCoords ( Array< OneD, NekDouble > &  coords_1,
Array< OneD, NekDouble > &  coords_2 = NullNekDouble1DArray,
Array< OneD, NekDouble > &  coords_3 = NullNekDouble1DArray 
)
inline

this function returns the physical coordinates of the quadrature points of the expansion

This function is a wrapper around the virtual function v_GetCoords()

Parameters
coordsan array containing the coordinates of the quadrature points (output of the function)

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 638 of file StdExpansion.h.

References v_GetCoords().

Referenced by main(), and OrderVertices().

{
v_GetCoords(coords_1,coords_2,coords_3);
}
LibUtilities::BasisType Nektar::StdRegions::StdExpansion::GetEdgeBasisType ( const int  i) const
inline

This function returns the type of expansion basis on the i-th edge.

This function is a wrapper around the virtual function v_GetEdgeBasisType()

The different types of bases implemented in the code are defined in the LibUtilities::BasisType enumeration list. As a result, the function will return one of the types of this enumeration list.

Parameters
ispecifies which edge
Returns
returns the expansion basis on the i-th edge

Definition at line 397 of file StdExpansion.h.

References v_GetEdgeBasisType().

Referenced by Nektar::StdRegions::StdQuadExp::v_GetEdgeInteriorMap(), Nektar::StdRegions::StdTriExp::v_GetEdgeInteriorMap(), Nektar::StdRegions::StdTriExp::v_GetEdgeToElementMap(), Nektar::StdRegions::StdQuadExp::v_GetEdgeToElementMap(), Nektar::StdRegions::StdPrismExp::v_GetFaceToElementMap(), Nektar::StdRegions::StdHexExp::v_GetFaceToElementMap(), Nektar::StdRegions::StdPyrExp::v_GetFaceToElementMap(), Nektar::StdRegions::StdTriExp::v_GetVertexMap(), Nektar::StdRegions::StdPrismExp::v_GetVertexMap(), Nektar::StdRegions::StdTetExp::v_GetVertexMap(), and Nektar::StdRegions::StdPyrExp::v_GetVertexMap().

{
return v_GetEdgeBasisType(i);
}
void Nektar::StdRegions::StdExpansion::GetEdgeInteriorMap ( const int  eid,
const Orientation  edgeOrient,
Array< OneD, unsigned int > &  maparray,
Array< OneD, int > &  signarray 
)
inline

Definition at line 784 of file StdExpansion.h.

References v_GetEdgeInteriorMap().

Referenced by Nektar::LocalRegions::Expansion3D::v_GetEdgeInverseBoundaryMap(), and Nektar::LocalRegions::Expansion2D::v_GetEdgeInverseBoundaryMap().

{
v_GetEdgeInteriorMap(eid,edgeOrient,maparray,signarray);
}
void Nektar::StdRegions::StdExpansion::GetEdgeInterpVals ( const int  edge,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 848 of file StdExpansion.h.

References v_GetEdgeInterpVals().

{
v_GetEdgeInterpVals(edge, inarray, outarray);
}
Array<OneD, unsigned int> Nektar::StdRegions::StdExpansion::GetEdgeInverseBoundaryMap ( int  eid)
inline

Definition at line 1265 of file StdExpansion.h.

References v_GetEdgeInverseBoundaryMap().

Referenced by Nektar::MultiRegions::PreconditionerBlock::BlockPreconditioner2D(), Nektar::MultiRegions::PreconditionerBlock::BlockPreconditioner3D(), Nektar::LocalRegions::Expansion3D::v_BuildInverseTransformationMatrix(), Nektar::MultiRegions::PreconditionerLowEnergy::v_BuildPreconditioner(), and Nektar::LocalRegions::Expansion3D::v_BuildTransformationMatrix().

{
}
int Nektar::StdRegions::StdExpansion::GetEdgeNcoeffs ( const int  i) const
inline

This function returns the number of expansion coefficients belonging to the i-th edge.

This function is a wrapper around the virtual function v_GetEdgeNcoeffs()

Parameters
ispecifies which edge
Returns
returns the number of expansion coefficients belonging to the i-th edge

Definition at line 287 of file StdExpansion.h.

References v_GetEdgeNcoeffs().

Referenced by Nektar::MultiRegions::PreconditionerBlock::BlockPreconditioner2D(), Nektar::MultiRegions::PreconditionerBlock::BlockPreconditioner3D(), Nektar::CoupledLocalToGlobalC0ContMap::CoupledLocalToGlobalC0ContMap(), Nektar::LocalRegions::Expansion2D::SetTraceToGeomOrientation(), Nektar::LocalRegions::Expansion2D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion3D::v_BuildInverseTransformationMatrix(), Nektar::MultiRegions::PreconditionerLowEnergy::v_BuildPreconditioner(), Nektar::LocalRegions::Expansion3D::v_BuildTransformationMatrix(), Nektar::StdRegions::StdNodalTriExp::v_GetEdgeInteriorMap(), Nektar::StdRegions::StdQuadExp::v_GetEdgeInteriorMap(), Nektar::StdRegions::StdTriExp::v_GetEdgeInteriorMap(), Nektar::StdRegions::StdHexExp::v_GetEdgeInteriorMap(), Nektar::LocalRegions::Expansion3D::v_GetEdgeInverseBoundaryMap(), Nektar::LocalRegions::Expansion2D::v_GetEdgeInverseBoundaryMap(), Nektar::StdRegions::StdNodalTriExp::v_GetEdgeToElementMap(), Nektar::StdRegions::StdTriExp::v_GetEdgeToElementMap(), and Nektar::StdRegions::StdQuadExp::v_GetEdgeToElementMap().

{
return v_GetEdgeNcoeffs(i);
}
const NormalVector& Nektar::StdRegions::StdExpansion::GetEdgeNormal ( const int  edge) const
inline

Definition at line 1204 of file StdExpansion.h.

References v_GetEdgeNormal().

Referenced by Nektar::LocalRegions::Expansion2D::AddHDGHelmholtzEdgeTerms(), Nektar::LocalRegions::Expansion2D::AddNormTraceInt(), Nektar::LocalRegions::Expansion2D::v_AddEdgeNormBoundaryInt(), Nektar::LocalRegions::Expansion2D::v_GenMatrix(), and Nektar::LocalRegions::SegExp::v_NormVectorIProductWRTBase().

{
return v_GetEdgeNormal(edge);
}
int Nektar::StdRegions::StdExpansion::GetEdgeNumPoints ( const int  i) const
inline

This function returns the number of quadrature points belonging to the i-th edge.

This function is a wrapper around the virtual function v_GetEdgeNumPoints()

Parameters
ispecifies which edge
Returns
returns the number of expansion coefficients belonging to the i-th edge

Definition at line 308 of file StdExpansion.h.

References v_GetEdgeNumPoints().

{
return v_GetEdgeNumPoints(i);
}
void Nektar::StdRegions::StdExpansion::GetEdgePhysVals ( const int  edge,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Extract the physical values along edge edge from inarray into outarray following the local edge orientation and point distribution defined by defined in EdgeExp.

Definition at line 821 of file StdExpansion.h.

References v_GetEdgePhysVals().

Referenced by Nektar::MultiRegions::DisContField3DHomogeneous1D::GetBCValues().

{
v_GetEdgePhysVals(edge,inarray,outarray);
}
void Nektar::StdRegions::StdExpansion::GetEdgePhysVals ( const int  edge,
const boost::shared_ptr< StdExpansion > &  EdgeExp,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 828 of file StdExpansion.h.

References v_GetEdgePhysVals().

{
v_GetEdgePhysVals(edge,EdgeExp,inarray,outarray);
}
void Nektar::StdRegions::StdExpansion::GetEdgeQFactors ( const int  edge,
Array< OneD, NekDouble > &  outarray 
)
inline

Extract the metric factors to compute the contravariant fluxes along edge edge and stores them into outarray following the local edge orientation (i.e. anticlockwise convention).

Definition at line 861 of file StdExpansion.h.

References v_GetEdgeQFactors().

{
v_GetEdgeQFactors(edge, outarray);
}
void Nektar::StdRegions::StdExpansion::GetEdgeToElementMap ( const int  eid,
const Orientation  edgeOrient,
Array< OneD, unsigned int > &  maparray,
Array< OneD, int > &  signarray 
)
inline

Definition at line 798 of file StdExpansion.h.

References v_GetEdgeToElementMap().

Referenced by Nektar::LocalRegions::Expansion2D::AddEdgeBoundaryInt(), Nektar::LocalRegions::Expansion2D::AddHDGHelmholtzEdgeTerms(), Nektar::LocalRegions::Expansion2D::GetPhysEdgeVarCoeffsFromElement(), Nektar::LocalRegions::Expansion2D::v_AddRobinEdgeContribution(), Nektar::LocalRegions::Expansion2D::v_AddRobinMassMatrix(), Nektar::StdRegions::StdQuadExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::TriExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::QuadExp::v_FwdTrans_BndConstrained(), and Nektar::LocalRegions::Expansion2D::v_GenMatrix().

{
v_GetEdgeToElementMap(eid,edgeOrient,maparray,signarray);
}
int Nektar::StdRegions::StdExpansion::GetElmtId ( )
inline

Get the element id of this expansion when used in a list by returning value of m_elmt_id.

Definition at line 616 of file StdExpansion.h.

References m_elmt_id.

{
return m_elmt_id;
}
StdRegions::Orientation Nektar::StdRegions::StdExpansion::GetEorient ( int  edge)
inline

Definition at line 714 of file StdExpansion.h.

References v_GetEorient().

Referenced by Nektar::LocalRegions::Expansion2D::AddHDGHelmholtzEdgeTerms(), Nektar::LocalRegions::Expansion2D::GetPhysEdgeVarCoeffsFromElement(), Nektar::LocalRegions::Expansion2D::SetTraceToGeomOrientation(), Nektar::LocalRegions::Expansion2D::v_AddEdgeNormBoundaryInt(), Nektar::LocalRegions::Expansion2D::v_AddRobinMassMatrix(), Nektar::LocalRegions::TriExp::v_ComputeEdgeNormal(), Nektar::LocalRegions::QuadExp::v_ComputeEdgeNormal(), Nektar::LocalRegions::TriExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::QuadExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::Expansion2D::v_GenMatrix(), and Nektar::LocalRegions::QuadExp::v_GetEdgePhysVals().

{
return v_GetEorient(edge);
}
void Nektar::StdRegions::StdExpansion::GetFaceInteriorMap ( const int  fid,
const Orientation  faceOrient,
Array< OneD, unsigned int > &  maparray,
Array< OneD, int > &  signarray 
)
inline

Definition at line 791 of file StdExpansion.h.

References v_GetFaceInteriorMap().

Referenced by Nektar::LocalRegions::Expansion3D::v_GetFaceInverseBoundaryMap().

{
v_GetFaceInteriorMap(fid,faceOrient,maparray,signarray);
}
int Nektar::StdRegions::StdExpansion::GetFaceIntNcoeffs ( const int  i) const
inline

Definition at line 359 of file StdExpansion.h.

References v_GetFaceIntNcoeffs().

Referenced by Nektar::MultiRegions::PreconditionerBlock::BlockPreconditioner3D(), Nektar::LocalRegions::Expansion3D::v_BuildInverseTransformationMatrix(), Nektar::MultiRegions::PreconditionerLowEnergy::v_BuildPreconditioner(), Nektar::LocalRegions::Expansion3D::v_BuildTransformationMatrix(), Nektar::StdRegions::StdHexExp::v_GetFaceInteriorMap(), and Nektar::LocalRegions::Expansion3D::v_GetFaceInverseBoundaryMap().

{
}
Array<OneD, unsigned int> Nektar::StdRegions::StdExpansion::GetFaceInverseBoundaryMap ( int  fid,
StdRegions::Orientation  faceOrient = eNoOrientation 
)
inline

Definition at line 1271 of file StdExpansion.h.

References v_GetFaceInverseBoundaryMap().

Referenced by Nektar::MultiRegions::PreconditionerBlock::BlockPreconditioner3D(), Nektar::LocalRegions::Expansion3D::v_BuildInverseTransformationMatrix(), and Nektar::LocalRegions::Expansion3D::v_BuildTransformationMatrix().

{
return v_GetFaceInverseBoundaryMap(fid,faceOrient);
}
int Nektar::StdRegions::StdExpansion::GetFaceNcoeffs ( const int  i) const
inline

This function returns the number of expansion coefficients belonging to the i-th face.

This function is a wrapper around the virtual function v_GetFaceNcoeffs()

Parameters
ispecifies which face
Returns
returns the number of expansion coefficients belonging to the i-th face

Definition at line 354 of file StdExpansion.h.

References v_GetFaceNcoeffs().

Referenced by Nektar::LocalRegions::Expansion3D::SetFaceToGeomOrientation(), Nektar::LocalRegions::Expansion3D::SetTraceToGeomOrientation(), Nektar::LocalRegions::Expansion3D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion3D::v_GenMatrix(), Nektar::StdRegions::StdPrismExp::v_GetFaceToElementMap(), and Nektar::StdRegions::StdPyrExp::v_GetFaceToElementMap().

{
return v_GetFaceNcoeffs(i);
}
const NormalVector& Nektar::StdRegions::StdExpansion::GetFaceNormal ( const int  face) const
inline

Definition at line 1239 of file StdExpansion.h.

References v_GetFaceNormal().

Referenced by Nektar::LocalRegions::Expansion3D::AddHDGHelmholtzFaceTerms(), Nektar::LocalRegions::Expansion3D::AddNormTraceInt(), and Nektar::LocalRegions::Expansion3D::v_GenMatrix().

{
return v_GetFaceNormal(face);
}
int Nektar::StdRegions::StdExpansion::GetFaceNumPoints ( const int  i) const
inline

This function returns the number of quadrature points belonging to the i-th face.

This function is a wrapper around the virtual function v_GetFaceNcoeffs()

Parameters
ispecifies which face
Returns
returns the number of expansion coefficients belonging to the i-th face

Definition at line 339 of file StdExpansion.h.

References v_GetFaceNumPoints().

Referenced by Nektar::LocalRegions::PyrExp::v_GetFacePhysVals(), Nektar::LocalRegions::TetExp::v_GetFacePhysVals(), Nektar::LocalRegions::PrismExp::v_GetFacePhysVals(), and Nektar::LocalRegions::HexExp::v_GetFacePhysVals().

{
return v_GetFaceNumPoints(i);
}
void Nektar::StdRegions::StdExpansion::GetFacePhysVals ( const int  face,
const boost::shared_ptr< StdExpansion > &  FaceExp,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
StdRegions::Orientation  orient = eNoOrientation 
)
inline

Definition at line 870 of file StdExpansion.h.

References v_GetFacePhysVals().

Referenced by main().

{
v_GetFacePhysVals(face, FaceExp, inarray, outarray, orient);
}
LibUtilities::PointsKey Nektar::StdRegions::StdExpansion::GetFacePointsKey ( const int  i,
const int  j 
) const
inline

Definition at line 369 of file StdExpansion.h.

References v_GetFacePointsKey().

{
return v_GetFacePointsKey(i, j);
}
void Nektar::StdRegions::StdExpansion::GetFaceToElementMap ( const int  fid,
const Orientation  faceOrient,
Array< OneD, unsigned int > &  maparray,
Array< OneD, int > &  signarray,
int  nummodesA = -1,
int  nummodesB = -1 
)
inline

Definition at line 805 of file StdExpansion.h.

References v_GetFaceToElementMap().

Referenced by Nektar::LocalRegions::Expansion3D::v_AddRobinMassMatrix().

{
v_GetFaceToElementMap(fid,faceOrient,maparray,signarray,
nummodesA,nummodesB);
}
StdRegions::Orientation Nektar::StdRegions::StdExpansion::GetForient ( int  face)
inline

Definition at line 709 of file StdExpansion.h.

References v_GetForient().

Referenced by Nektar::LocalRegions::Expansion3D::AddFaceBoundaryInt(), Nektar::LocalRegions::Expansion3D::AddHDGHelmholtzFaceTerms(), Nektar::LocalRegions::Expansion3D::SetFaceToGeomOrientation(), Nektar::LocalRegions::Expansion3D::v_AddFaceNormBoundaryInt(), Nektar::LocalRegions::Expansion3D::v_AddRobinMassMatrix(), Nektar::MultiRegions::PreconditionerLowEnergy::v_BuildPreconditioner(), Nektar::LocalRegions::Expansion3D::v_GenMatrix(), Nektar::LocalRegions::Expansion3D::v_GetFaceInverseBoundaryMap(), Nektar::LocalRegions::PyrExp::v_GetFacePhysVals(), Nektar::LocalRegions::TetExp::v_GetFacePhysVals(), Nektar::LocalRegions::PrismExp::v_GetFacePhysVals(), and Nektar::LocalRegions::HexExp::v_GetFacePhysVals().

{
return v_GetForient(face);
}
IndexMapValuesSharedPtr Nektar::StdRegions::StdExpansion::GetIndexMap ( const IndexMapKey ikey)
inline

Definition at line 672 of file StdExpansion.h.

References m_IndexMapManager.

Referenced by Nektar::LocalRegions::Expansion3D::AddFaceBoundaryInt(), Nektar::LocalRegions::Expansion3D::AddHDGHelmholtzFaceTerms(), Nektar::LocalRegions::Expansion3D::SetFaceToGeomOrientation(), Nektar::LocalRegions::Expansion2D::v_AddEdgeNormBoundaryInt(), Nektar::LocalRegions::Expansion3D::v_AddFaceNormBoundaryInt(), Nektar::LocalRegions::Expansion3D::v_AddRobinMassMatrix(), and Nektar::LocalRegions::Expansion3D::v_GenMatrix().

{
return m_IndexMapManager[ikey];
}
void Nektar::StdRegions::StdExpansion::GetInteriorMap ( Array< OneD, unsigned int > &  outarray)
inline

Definition at line 773 of file StdExpansion.h.

References v_GetInteriorMap().

Referenced by Nektar::LocalRegions::PyrExp::CreateStaticCondMatrix(), Nektar::LocalRegions::NodalTriExp::CreateStaticCondMatrix(), Nektar::LocalRegions::TetExp::CreateStaticCondMatrix(), Nektar::LocalRegions::PrismExp::CreateStaticCondMatrix(), Nektar::LocalRegions::TriExp::CreateStaticCondMatrix(), Nektar::LocalRegions::QuadExp::CreateStaticCondMatrix(), Nektar::LocalRegions::SegExp::CreateStaticCondMatrix(), Nektar::LocalRegions::HexExp::CreateStaticCondMatrix(), CreateStdStaticCondMatrix(), Nektar::StdRegions::StdQuadExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::TriExp::v_FwdTrans_BndConstrained(), and Nektar::LocalRegions::QuadExp::v_FwdTrans_BndConstrained().

{
v_GetInteriorMap(outarray);
}
DNekScalBlkMatSharedPtr Nektar::StdRegions::StdExpansion::GetLocStaticCondMatrix ( const LocalRegions::MatrixKey mkey)
inline

Definition at line 699 of file StdExpansion.h.

References v_GetLocStaticCondMatrix().

Referenced by Nektar::LocalRegions::TetExp::CreateMatrix(), Nektar::LocalRegions::PrismExp::CreateMatrix(), Nektar::LocalRegions::TriExp::CreateMatrix(), Nektar::LocalRegions::QuadExp::CreateMatrix(), and Nektar::LocalRegions::HexExp::CreateMatrix().

{
}
const boost::shared_ptr<SpatialDomains::GeomFactors>& Nektar::StdRegions::StdExpansion::GetMetricInfo ( void  ) const
inline

Definition at line 1117 of file StdExpansion.h.

References v_GetMetricInfo().

Referenced by Nektar::SolverUtils::DiffusionLFR::v_DerCFlux_1D(), Nektar::SolverUtils::DiffusionLFRNS::v_DerCFlux_1D(), Nektar::SolverUtils::DiffusionLFR::v_DerCFlux_2D(), Nektar::SolverUtils::DiffusionLFRNS::v_DerCFlux_2D(), Nektar::SolverUtils::AdvectionFR::v_SetupMetrics(), Nektar::SolverUtils::DiffusionLFR::v_SetupMetrics(), and Nektar::SolverUtils::DiffusionLFRNS::v_SetupMetrics().

{
return v_GetMetricInfo();
}
int Nektar::StdRegions::StdExpansion::GetNcoeffs ( void  ) const
inline

This function returns the total number of coefficients used in the expansion.

Returns
returns the total number of coefficients (which is equivalent to the total number of modes) used in the expansion

Definition at line 131 of file StdExpansion.h.

References m_ncoeffs.

Referenced by Nektar::LocalRegions::Expansion2D::AddHDGHelmholtzEdgeTerms(), Nektar::LocalRegions::Expansion3D::AddHDGHelmholtzFaceTerms(), Nektar::LocalRegions::Expansion1D::AddHDGHelmholtzTraceTerms(), Nektar::CoupledLocalToGlobalC0ContMap::CoupledLocalToGlobalC0ContMap(), Nektar::LocalRegions::Expansion2D::GetPhysEdgeVarCoeffsFromElement(), LaplacianMatrixOp_MatFree(), Nektar::LocalRegions::Expansion1D::v_AddRobinEdgeContribution(), Nektar::LocalRegions::Expansion2D::v_AddRobinEdgeContribution(), Nektar::LocalRegions::Expansion1D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion3D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion2D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion3D::v_DGDeriv(), Nektar::LocalRegions::Expansion2D::v_DGDeriv(), Nektar::LocalRegions::TetExp::v_FwdTrans(), Nektar::LocalRegions::PrismExp::v_FwdTrans(), Nektar::LocalRegions::PyrExp::v_FwdTrans(), Nektar::LocalRegions::HexExp::v_FwdTrans(), Nektar::StdRegions::StdHexExp::v_FwdTrans(), Nektar::LocalRegions::Expansion1D::v_GenMatrix(), Nektar::LocalRegions::Expansion3D::v_GenMatrix(), Nektar::LocalRegions::Expansion2D::v_GenMatrix(), Nektar::StdRegions::StdQuadExp::v_GetBoundaryMap(), Nektar::StdRegions::StdNodalTriExp::v_GetInteriorMap(), Nektar::StdRegions::StdSegExp::v_GetInteriorMap(), Nektar::StdRegions::StdQuadExp::v_GetInteriorMap(), Nektar::StdRegions::StdTriExp::v_GetInteriorMap(), Nektar::StdRegions::StdTriExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdPrismExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdQuadExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdTetExp::v_SVVLaplacianFilter(), and Nektar::StdRegions::StdHexExp::v_SVVLaplacianFilter().

{
return(m_ncoeffs);
}
int Nektar::StdRegions::StdExpansion::GetNedges ( ) const
inline

This function returns the number of edges of the expansion domain.

This function is a wrapper around the virtual function v_GetNedges()

Returns
returns the number of edges of the expansion domain

Definition at line 272 of file StdExpansion.h.

References v_GetNedges().

Referenced by Nektar::LocalRegions::Expansion2D::AddHDGHelmholtzTraceTerms(), Nektar::LocalRegions::Expansion2D::AddNormTraceInt(), Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::LocalRegions::Expansion2D::GetEdgeExp(), GetNtrace(), Nektar::LocalRegions::Expansion2D::SetEdgeExp(), Nektar::LocalRegions::Expansion2D::SetTraceToGeomOrientation(), Nektar::LocalRegions::Expansion2D::v_AddEdgeNormBoundaryInt(), Nektar::LocalRegions::Expansion3D::v_BuildInverseTransformationMatrix(), Nektar::LocalRegions::Expansion3D::v_BuildTransformationMatrix(), and Nektar::LocalRegions::Expansion2D::v_GenMatrix().

{
return v_GetNedges();
}
int Nektar::StdRegions::StdExpansion::GetNfaces ( ) const
inline

This function returns the number of faces of the expansion domain.

This function is a wrapper around the virtual function v_GetNFaces()

Returns
returns the number of faces of the expansion domain

Definition at line 411 of file StdExpansion.h.

References v_GetNfaces().

Referenced by Nektar::LocalRegions::Expansion3D::AddNormTraceInt(), Nektar::MultiRegions::ExpList2D::ExpList2D(), GetNtrace(), Nektar::LocalRegions::Expansion3D::SetFaceExp(), Nektar::LocalRegions::Expansion3D::SetTraceToGeomOrientation(), Nektar::LocalRegions::Expansion3D::v_AddFaceNormBoundaryInt(), Nektar::LocalRegions::Expansion3D::v_BuildInverseTransformationMatrix(), and Nektar::LocalRegions::Expansion3D::v_GenMatrix().

{
return v_GetNfaces();
}
int Nektar::StdRegions::StdExpansion::GetNtrace ( ) const
inline

Returns the number of trace elements connected to this element.

For example, a quadrilateral has four edges, so this function would return 4.

Definition at line 423 of file StdExpansion.h.

References GetNedges(), GetNfaces(), and m_base.

{
const int nBase = m_base.num_elements();
return
nBase == 1 ? 2 :
nBase == 2 ? GetNedges() :
nBase == 3 ? GetNfaces() : 0;
}
int Nektar::StdRegions::StdExpansion::GetNumBases ( ) const
inline

This function returns the number of 1D bases used in the expansion.

Returns
returns the number of 1D bases used in the expansion, which is equal to number dimension of the expansion

Definition at line 98 of file StdExpansion.h.

References m_base.

{
return m_base.num_elements();
}
int Nektar::StdRegions::StdExpansion::GetNumPoints ( const int  dir) const
inline

This function returns the number of quadrature points in the dir direction.

Parameters
dirthe direction
Returns
returns the number of quadrature points in the dir direction

Definition at line 229 of file StdExpansion.h.

References ASSERTL1, and m_base.

Referenced by Nektar::LocalRegions::Expansion1D::AddHDGHelmholtzTraceTerms(), Nektar::LocalRegions::Expansion1D::AddNormTraceInt(), Nektar::StdRegions::StdHexExp::v_BwdTrans(), Nektar::StdRegions::StdQuadExp::v_BwdTrans(), Nektar::StdRegions::StdPrismExp::v_BwdTrans(), Nektar::StdRegions::StdTetExp::v_BwdTrans(), Nektar::StdRegions::StdPyrExp::v_BwdTrans(), Nektar::StdRegions::StdHexExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdTriExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdQuadExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdTriExp::v_DetEdgeBasisKey(), Nektar::StdRegions::StdPrismExp::v_DetFaceBasisKey(), Nektar::StdRegions::StdHexExp::v_DetFaceBasisKey(), Nektar::StdRegions::StdTetExp::v_DetFaceBasisKey(), Nektar::StdRegions::StdPyrExp::v_DetFaceBasisKey(), Nektar::StdRegions::StdPointExp::v_GetCoords(), Nektar::StdRegions::StdPrismExp::v_GetCoords(), Nektar::StdRegions::StdTetExp::v_GetCoords(), Nektar::StdRegions::StdSegExp::v_GetCoords(), Nektar::StdRegions::StdTriExp::v_GetCoords(), Nektar::StdRegions::StdQuadExp::v_GetCoords(), Nektar::StdRegions::StdPyrExp::v_GetCoords(), Nektar::StdRegions::StdHexExp::v_GetCoords(), Nektar::StdRegions::StdQuadExp::v_GetEdgeNumPoints(), Nektar::StdRegions::StdTriExp::v_GetEdgeNumPoints(), Nektar::LocalRegions::SegExp::v_GetNumPoints(), Nektar::LocalRegions::TriExp::v_GetNumPoints(), and Nektar::LocalRegions::QuadExp::v_GetNumPoints().

{
ASSERTL1(dir < m_base.num_elements() || dir == 0,
"dir is larger than m_numbases");
return(m_base.num_elements() > 0 ? m_base[dir]->GetNumPoints() : 1);
}
int Nektar::StdRegions::StdExpansion::GetNverts ( ) const
inline

This function returns the number of vertices of the expansion domain.

This function is a wrapper around the virtual function v_GetNverts()

Returns
returns the number of vertices of the expansion domain

Definition at line 259 of file StdExpansion.h.

References v_GetNverts().

Referenced by Nektar::LocalRegions::Expansion3D::v_BuildInverseTransformationMatrix(), Nektar::LocalRegions::Expansion3D::v_BuildTransformationMatrix(), Nektar::LocalRegions::Expansion3D::v_BuildVertexMatrix(), and Nektar::LocalRegions::Expansion2D::v_BuildVertexMatrix().

{
return v_GetNverts();
}
const Array<OneD, const NekDouble>& Nektar::StdRegions::StdExpansion::GetPhysNormals ( void  )
inline

Definition at line 677 of file StdExpansion.h.

References v_GetPhysNormals().

{
return v_GetPhysNormals();
}
const Array<OneD, const NekDouble>& Nektar::StdRegions::StdExpansion::GetPoints ( const int  dir) const
inline

This function returns a pointer to the array containing the quadrature points in dir direction.

Parameters
dirthe direction
Returns
returns a pointer to the array containing the quadrature points in dir direction

Definition at line 243 of file StdExpansion.h.

References m_base.

{
return m_base[dir]->GetZ();
}
const LibUtilities::PointsKeyVector Nektar::StdRegions::StdExpansion::GetPointsKeys ( ) const
inline

Definition at line 1254 of file StdExpansion.h.

References m_base.

Referenced by Nektar::LocalRegions::Expansion::ComputeQuadratureMetric(), Nektar::LocalRegions::PyrExp::CreateMatrix(), Nektar::LocalRegions::NodalTriExp::CreateMatrix(), Nektar::LocalRegions::TetExp::CreateMatrix(), Nektar::LocalRegions::PrismExp::CreateMatrix(), Nektar::LocalRegions::TriExp::CreateMatrix(), Nektar::LocalRegions::QuadExp::CreateMatrix(), Nektar::LocalRegions::SegExp::CreateMatrix(), Nektar::LocalRegions::HexExp::CreateMatrix(), Nektar::LocalRegions::TriExp::CreateStaticCondMatrix(), Nektar::LocalRegions::QuadExp::CreateStaticCondMatrix(), Extractlayerdata(), Nektar::LocalRegions::NodalTriExp::Integral(), Nektar::LocalRegions::HexExp::IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::NodalTriExp::IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::NodalTriExp::PhysDeriv(), Nektar::LocalRegions::TriExp::v_ComputeEdgeNormal(), Nektar::LocalRegions::QuadExp::v_ComputeEdgeNormal(), Nektar::LocalRegions::NodalTriExp::v_ComputeEdgeNormal(), Nektar::LocalRegions::PyrExp::v_ComputeFaceNormal(), Nektar::LocalRegions::TetExp::v_ComputeFaceNormal(), Nektar::LocalRegions::PrismExp::v_ComputeFaceNormal(), Nektar::LocalRegions::HexExp::v_ComputeFaceNormal(), Nektar::LocalRegions::PyrExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::TetExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::HexExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::TriExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::QuadExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::SegExp::v_ComputeVertexNormal(), Nektar::LocalRegions::QuadExp::v_GetEdgeQFactors(), Nektar::LocalRegions::SegExp::v_HelmholtzMatrixOp(), Nektar::LocalRegions::SegExp::v_Integral(), Nektar::LocalRegions::TetExp::v_Integral(), Nektar::LocalRegions::PrismExp::v_Integral(), Nektar::LocalRegions::PyrExp::v_Integral(), Nektar::LocalRegions::QuadExp::v_Integral(), Nektar::LocalRegions::TriExp::v_Integral(), Nektar::LocalRegions::HexExp::v_Integral(), Nektar::LocalRegions::PyrExp::v_IProductWRTBase(), Nektar::LocalRegions::SegExp::v_IProductWRTBase(), Nektar::LocalRegions::TetExp::v_IProductWRTDerivBase(), Nektar::LocalRegions::SegExp::v_IProductWRTDerivBase(), Nektar::LocalRegions::PrismExp::v_IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::TriExp::v_IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::QuadExp::v_IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::SegExp::v_LaplacianMatrixOp(), Nektar::LocalRegions::PrismExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::LocalRegions::SegExp::v_PhysDeriv(), Nektar::LocalRegions::TetExp::v_PhysDeriv(), Nektar::LocalRegions::PrismExp::v_PhysDeriv(), Nektar::LocalRegions::PyrExp::v_PhysDeriv(), Nektar::LocalRegions::TriExp::v_PhysDeriv(), Nektar::LocalRegions::QuadExp::v_PhysDeriv(), Nektar::LocalRegions::HexExp::v_PhysDeriv(), Nektar::LocalRegions::SegExp::v_PhysDeriv_n(), Nektar::LocalRegions::SegExp::v_PhysDeriv_s(), Nektar::LocalRegions::TriExp::v_PhysDirectionalDeriv(), and Nektar::LocalRegions::QuadExp::v_PhysDirectionalDeriv().

{
for (int i = 0; i < m_base.num_elements(); ++i)
{
p.push_back(m_base[i]->GetPointsKey());
}
return p;
}
LibUtilities::PointsType Nektar::StdRegions::StdExpansion::GetPointsType ( const int  dir) const
inline

This function returns the type of quadrature points used in the dir direction.

The different types of quadrature points implemented in the code are defined in the LibUtilities::PointsType enumeration list. As a result, the function will return one of the types of this enumeration list.

Parameters
dirthe direction
Returns
returns the type of quadrature points used in the dir direction

Definition at line 216 of file StdExpansion.h.

References ASSERTL1, and m_base.

Referenced by Nektar::LocalRegions::QuadExp::v_ComputeEdgeNormal(), Nektar::StdRegions::StdTriExp::v_DetEdgeBasisKey(), Nektar::LocalRegions::QuadExp::v_GetEdgePhysVals(), Nektar::LocalRegions::QuadExp::v_GetEdgeQFactors(), Nektar::LocalRegions::SegExp::v_GetVertexPhysVals(), Nektar::StdRegions::StdTriExp::v_Integral(), Nektar::StdRegions::StdPyrExp::v_MultiplyByStdQuadratureMetric(), Nektar::StdRegions::StdPrismExp::v_MultiplyByStdQuadratureMetric(), Nektar::StdRegions::StdTetExp::v_MultiplyByStdQuadratureMetric(), Nektar::StdRegions::StdTriExp::v_MultiplyByStdQuadratureMetric(), Nektar::StdRegions::StdTriExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdPrismExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdQuadExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdTetExp::v_SVVLaplacianFilter(), and Nektar::StdRegions::StdHexExp::v_SVVLaplacianFilter().

{
ASSERTL1(dir < m_base.num_elements(), "dir is larger than m_numbases");
return(m_base[dir]->GetPointsType());
}
StdRegions::Orientation Nektar::StdRegions::StdExpansion::GetPorient ( int  point)
inline

Definition at line 719 of file StdExpansion.h.

References v_GetPorient().

{
return v_GetPorient(point);
}
int Nektar::StdRegions::StdExpansion::GetShapeDimension ( ) const
inline

Definition at line 448 of file StdExpansion.h.

References v_GetShapeDimension().

{
}
void Nektar::StdRegions::StdExpansion::GetSimplexEquiSpacedConnectivity ( Array< OneD, int > &  conn,
bool  standard = true 
)
inline

This function provides the connectivity of local simplices (triangles or tets) to connect the equispaced data points provided by PhysInterpToSimplexEquiSpaced.

This is a virtual call to the function v_GetSimplexEquiSpaceConnectivity

Definition at line 1306 of file StdExpansion.h.

References v_GetSimplexEquiSpacedConnectivity().

DNekMatSharedPtr Nektar::StdRegions::StdExpansion::GetStdMatrix ( const StdMatrixKey mkey)
inline

Definition at line 662 of file StdExpansion.h.

References m_stdMatrixManager.

Referenced by BwdTrans_MatOp(), CreateGeneralMatrix(), Nektar::LocalRegions::PyrExp::CreateMatrix(), Nektar::LocalRegions::NodalTriExp::CreateMatrix(), Nektar::LocalRegions::TetExp::CreateMatrix(), Nektar::LocalRegions::PrismExp::CreateMatrix(), Nektar::LocalRegions::TriExp::CreateMatrix(), Nektar::LocalRegions::QuadExp::CreateMatrix(), Nektar::LocalRegions::SegExp::CreateMatrix(), Nektar::LocalRegions::HexExp::CreateMatrix(), CreateStdStaticCondMatrix(), Nektar::LinearisedAdvection::GetFloquetBlockMatrix(), Nektar::AdjointAdvection::GetFloquetBlockMatrix(), Nektar::StdRegions::StdNodalPrismExp::ModalToNodal(), Nektar::StdRegions::StdNodalTetExp::ModalToNodal(), Nektar::StdRegions::StdNodalTriExp::ModalToNodal(), Nektar::StdRegions::StdNodalPrismExp::NodalToModal(), Nektar::StdRegions::StdNodalTetExp::NodalToModal(), Nektar::StdRegions::StdNodalTriExp::NodalToModal(), Nektar::StdRegions::StdNodalPrismExp::NodalToModalTranspose(), Nektar::StdRegions::StdNodalTetExp::NodalToModalTranspose(), Nektar::StdRegions::StdNodalTriExp::NodalToModalTranspose(), PhysInterpToSimplexEquiSpaced(), Nektar::StdRegions::StdPointExp::v_FwdTrans(), Nektar::StdRegions::StdNodalPrismExp::v_FwdTrans(), Nektar::StdRegions::StdNodalTetExp::v_FwdTrans(), Nektar::StdRegions::StdNodalTriExp::v_FwdTrans(), Nektar::StdRegions::StdTriExp::v_FwdTrans(), Nektar::StdRegions::StdSegExp::v_FwdTrans(), Nektar::StdRegions::StdHexExp::v_FwdTrans(), Nektar::StdRegions::StdQuadExp::v_FwdTrans(), Nektar::StdRegions::StdPrismExp::v_FwdTrans(), Nektar::StdRegions::StdTetExp::v_FwdTrans(), Nektar::StdRegions::StdPyrExp::v_FwdTrans(), Nektar::StdRegions::StdPointExp::v_GenMatrix(), Nektar::StdRegions::StdSegExp::v_GenMatrix(), Nektar::StdRegions::StdQuadExp::v_GenMatrix(), Nektar::StdRegions::StdTriExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdHexExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdPrismExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdQuadExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdTetExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdTriExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdPrismExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdQuadExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdHexExp::v_IProductWRTDerivBase_MatOp(), and Nektar::StdRegions::StdTetExp::v_IProductWRTDerivBase_MatOp().

{
return m_stdMatrixManager[mkey];
}
DNekBlkMatSharedPtr Nektar::StdRegions::StdExpansion::GetStdStaticCondMatrix ( const StdMatrixKey mkey)
inline

Definition at line 667 of file StdExpansion.h.

References m_stdStaticCondMatrixManager.

Referenced by Nektar::LocalRegions::PyrExp::CreateStaticCondMatrix(), Nektar::LocalRegions::NodalTriExp::CreateStaticCondMatrix(), Nektar::LocalRegions::TetExp::CreateStaticCondMatrix(), Nektar::LocalRegions::PrismExp::CreateStaticCondMatrix(), Nektar::LocalRegions::TriExp::CreateStaticCondMatrix(), Nektar::LocalRegions::QuadExp::CreateStaticCondMatrix(), Nektar::LocalRegions::SegExp::CreateStaticCondMatrix(), and Nektar::LocalRegions::HexExp::CreateStaticCondMatrix().

{
}
const NormalVector& Nektar::StdRegions::StdExpansion::GetSurfaceNormal ( const int  id) const
inline

Definition at line 1249 of file StdExpansion.h.

References v_GetSurfaceNormal().

{
return v_GetSurfaceNormal(id);
}
int Nektar::StdRegions::StdExpansion::GetTotalEdgeIntNcoeffs ( ) const
inline

Definition at line 293 of file StdExpansion.h.

References v_GetTotalEdgeIntNcoeffs().

{
}
int Nektar::StdRegions::StdExpansion::GetTotalFaceIntNcoeffs ( ) const
inline

Definition at line 364 of file StdExpansion.h.

References v_GetTotalFaceIntNcoeffs().

{
}
int Nektar::StdRegions::StdExpansion::GetTotPoints ( ) const
inline

This function returns the total number of quadrature points used in the element.

Returns
returns the total number of quadrature points

Definition at line 141 of file StdExpansion.h.

References m_base.

Referenced by Nektar::SubSteppingExtrapolate::AddDuDt2D(), Nektar::SubSteppingExtrapolate::AddDuDt3D(), Nektar::LocalRegions::Expansion2D::AddHDGHelmholtzTraceTerms(), BwdTrans_MatOp(), Nektar::LocalRegions::Expansion::ComputeQuadratureMetric(), CreateGeneralMatrix(), Nektar::StdRegions::StdNodalPrismExp::GenNBasisTransMatrix(), Nektar::StdRegions::StdNodalTetExp::GenNBasisTransMatrix(), Nektar::StdRegions::StdNodalTriExp::GenNBasisTransMatrix(), Nektar::CFLtester::GetStdVelocity(), H1(), Nektar::LocalRegions::NodalTriExp::IProductWRTBase_MatOp(), Nektar::LocalRegions::HexExp::IProductWRTDerivBase_MatOp(), Nektar::LocalRegions::NodalTriExp::IProductWRTDerivBase_MatOp(), L2(), LaplacianMatrixOp_MatFree(), LinearAdvectionDiffusionReactionMatrixOp_MatFree(), Linf(), main(), MassMatrixOp_MatFree(), Nektar::StdRegions::StdExpansion0D::PhysTensorDeriv(), Nektar::StdRegions::StdExpansion1D::PhysTensorDeriv(), Nektar::StdRegions::StdMatrixKey::StdMatrixKey(), Nektar::LocalRegions::PyrExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::TetExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::HexExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::TriExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::QuadExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::Expansion3D::v_GenMatrix(), Nektar::LocalRegions::Expansion2D::v_GenMatrix(), Nektar::StdRegions::StdExpansion3D::v_Integral(), Nektar::LocalRegions::TriExp::v_IProductWRTBase_MatOp(), Nektar::LocalRegions::QuadExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdTriExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdHexExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdPrismExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdQuadExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdTetExp::v_IProductWRTBase_MatOp(), Nektar::LocalRegions::TriExp::v_IProductWRTDerivBase_MatOp(), Nektar::LocalRegions::QuadExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdTriExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdPrismExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdQuadExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdHexExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdTetExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdExpansion3D::v_LaplacianMatrixOp_MatFree(), Nektar::LocalRegions::Expansion::v_MultiplyByQuadratureMetric(), Nektar::LocalRegions::PrismExp::v_PhysDeriv(), Nektar::StdRegions::StdExpansion0D::v_PhysEvaluate(), Nektar::StdRegions::StdExpansion1D::v_PhysEvaluate(), Nektar::SolverUtils::FilterAeroForces::v_Update(), WeakDerivMatrixOp_MatFree(), and WeakDirectionalDerivMatrixOp_MatFree().

{
int i;
int nqtot = 1;
for(i=0; i < m_base.num_elements(); ++i)
{
nqtot *= m_base[i]->GetNumPoints();
}
return nqtot;
}
void Nektar::StdRegions::StdExpansion::GetTracePhysVals ( const int  edge,
const boost::shared_ptr< StdExpansion > &  EdgeExp,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 836 of file StdExpansion.h.

References v_GetTracePhysVals().

{
v_GetTracePhysVals(edge,EdgeExp,inarray,outarray);
}
int Nektar::StdRegions::StdExpansion::GetVertexMap ( const int  localVertexId,
bool  useCoeffPacking = false 
)
inline

Definition at line 778 of file StdExpansion.h.

References v_GetVertexMap().

Referenced by Nektar::CoupledLocalToGlobalC0ContMap::CoupledLocalToGlobalC0ContMap(), Nektar::LocalRegions::Expansion1D::v_AddRobinEdgeContribution(), Nektar::LocalRegions::Expansion1D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion3D::v_BuildInverseTransformationMatrix(), Nektar::LocalRegions::Expansion3D::v_BuildTransformationMatrix(), Nektar::LocalRegions::Expansion3D::v_BuildVertexMatrix(), Nektar::LocalRegions::Expansion2D::v_BuildVertexMatrix(), Nektar::StdRegions::StdPointExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::SegExp::v_FwdTrans_BndConstrained(), and Nektar::StdRegions::StdSegExp::v_FwdTrans_BndConstrained().

{
return v_GetVertexMap(localVertexId,useCoeffPacking);
}
const NormalVector& Nektar::StdRegions::StdExpansion::GetVertexNormal ( const int  vertex) const
inline

Definition at line 1244 of file StdExpansion.h.

References v_GetVertexNormal().

{
return v_GetVertexNormal(vertex);
}
void Nektar::StdRegions::StdExpansion::GetVertexPhysVals ( const int  vertex,
const Array< OneD, const NekDouble > &  inarray,
NekDouble outarray 
)
inline

Definition at line 841 of file StdExpansion.h.

References v_GetVertexPhysVals().

{
v_GetVertexPhysVals(vertex, inarray, outarray);
}
NekDouble Nektar::StdRegions::StdExpansion::H1 ( const Array< OneD, const NekDouble > &  phys,
const Array< OneD, const NekDouble > &  sol = NullNekDouble1DArray 
)

Function to evaluate the discrete $ H^1$ error, $ | \epsilon |^1_{2} = \left [ \int^1_{-1} [u - u_{exact}]^2 + \nabla(u - u_{exact})\cdot\nabla(u - u_{exact})\cdot dx \right]^{1/2} d\xi_1 $ where $ u_{exact}$ is given by the array sol.

This function takes the physical value space array m_phys as approximate solution

Parameters
solarray of solution function at physical quadrature points
Returns
returns the $ H_1 $ error as a double.

Definition at line 158 of file StdExpansion.cpp.

References GetTotPoints(), Nektar::NullNekDouble1DArray, v_GetCoordim(), v_Integral(), v_PhysDeriv(), Vmath::Vcopy(), Vmath::Vmul(), Vmath::Vsub(), and Vmath::Vvtvp().

{
int i;
NekDouble val;
int ntot = GetTotPoints();
int coordim = v_GetCoordim();
Array<OneD, NekDouble> wsp(3*ntot);
Array<OneD, NekDouble> wsp_deriv = wsp + ntot;
Array<OneD, NekDouble> sum = wsp_deriv + ntot;
{
Vmath::Vcopy(ntot,phys, 1, wsp, 1);
Vmath::Vmul(ntot, phys, 1, phys, 1, sum, 1);
}
else
{
Vmath::Vsub(ntot, sol, 1, phys, 1, wsp, 1);
Vmath::Vmul(ntot, wsp, 1, wsp, 1, sum, 1);
}
for(i = 0; i < coordim; ++i)
{
v_PhysDeriv(i,wsp,wsp_deriv);
Vmath::Vvtvp(ntot,wsp_deriv,1,wsp_deriv,1,sum,1,sum,1);
}
val = sqrt(v_Integral(sum));
return val;
}
void Nektar::StdRegions::StdExpansion::HelmholtzMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
inline
Parameters
inarrayInput array $ \mathbf{u} $.
outarrayOutput array $ \boldsymbol{\nabla^2u} + \lambda \boldsymbol{u} $.
mkey

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 980 of file StdExpansion.h.

References v_HelmholtzMatrixOp().

Referenced by GeneralMatrixOp().

{
v_HelmholtzMatrixOp(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::HelmholtzMatrixOp_MatFree ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
inlineprotected

Definition at line 1441 of file StdExpansion.h.

References v_HelmholtzMatrixOp_MatFree().

Referenced by GeneralMatrixOp_MatFree(), Nektar::LocalRegions::TriExp::v_HelmholtzMatrixOp(), Nektar::LocalRegions::QuadExp::v_HelmholtzMatrixOp(), and v_HelmholtzMatrixOp().

{
v_HelmholtzMatrixOp_MatFree(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::HelmholtzMatrixOp_MatFree_GenericImpl ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
protected

Definition at line 892 of file StdExpansion.cpp.

References DetShapeType(), Nektar::StdRegions::eFactorLambda, Nektar::StdRegions::eLaplacian, Nektar::StdRegions::eMass, Nektar::StdRegions::StdMatrixKey::GetConstFactor(), LaplacianMatrixOp(), m_ncoeffs, and MassMatrixOp().

Referenced by Nektar::LocalRegions::NodalTriExp::HelmholtzMatrixOp(), Nektar::StdRegions::StdNodalTriExp::v_HelmholtzMatrixOp(), Nektar::StdRegions::StdExpansion2D::v_HelmholtzMatrixOp_MatFree(), Nektar::StdRegions::StdExpansion3D::v_HelmholtzMatrixOp_MatFree(), and v_HelmholtzMatrixOp_MatFree().

{
NekDouble lambda = mkey.GetConstFactor(eFactorLambda);
Array<OneD,NekDouble> tmp(m_ncoeffs);
StdMatrixKey mkeymass(eMass,DetShapeType(),*this);
StdMatrixKey mkeylap(eLaplacian,DetShapeType(),*this);
MassMatrixOp(inarray,tmp,mkeymass);
LaplacianMatrixOp(inarray,outarray,mkeylap);
Blas::Daxpy(m_ncoeffs, lambda, tmp, 1, outarray, 1);
}
NekDouble Nektar::StdRegions::StdExpansion::Integral ( const Array< OneD, const NekDouble > &  inarray)
inline

This function integrates the specified function over the domain.

This function is a wrapper around the virtual function
\a v_Integral()

Based on the values of the function evaluated at the quadrature
points (which are stored in \a inarray), this function calculates
the integral of this function over the domain.  This is
equivalent to the numerical evaluation of the operation

\[ I=\int u(\mathbf{\xi})d \mathbf{\xi}\]

Parameters
inarrayvalues of the function to be integrated evaluated at the quadrature points (i.e. inarray[m]= $u(\mathbf{\xi}_m)$)
Returns
returns the value of the calculated integral
        Inputs:\n

Outputs:

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 536 of file StdExpansion.h.

References v_Integral().

{
return v_Integral(inarray);
}
void Nektar::StdRegions::StdExpansion::IProductWRTBase ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

this function calculates the inner product of a given function f with the different modes of the expansion

This function is a wrapper around the virtual function
\a v_IProductWRTBase()

This is equivalent to the numerical evaluation of

\[ I[p] = \int \phi_p(\mathbf{x}) f(\mathbf{x}) d\mathbf{x}\]

$ \begin{array}{rcl} I_{pq} = (\phi_q \phi_q, u) & = & \sum_{i=0}^{nq_0} \sum_{j=0}^{nq_1} \phi_p(\xi_{0,i}) \phi_q(\xi_{1,j}) w^0_i w^1_j u(\xi_{0,i} \xi_{1,j}) J_{i,j}\\ & = & \sum_{i=0}^{nq_0} \phi_p(\xi_{0,i}) \sum_{j=0}^{nq_1} \phi_q(\xi_{1,j}) \tilde{u}_{i,j} J_{i,j} \end{array} $

where

$ \tilde{u}_{i,j} = w^0_i w^1_j u(\xi_{0,i},\xi_{1,j}) $

which can be implemented as

$ f_{qi} = \sum_{j=0}^{nq_1} \phi_q(\xi_{1,j}) \tilde{u}_{i,j} = {\bf B_1 U} $ $ I_{pq} = \sum_{i=0}^{nq_0} \phi_p(\xi_{0,i}) f_{qi} = {\bf B_0 F} $

Parameters
inarraycontains the values of the function f evaluated at the quadrature points
outarraycontains the values of the inner product of f with the different modes, i.e. $ outarray[p] = I[p]$ (output of the function)

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 591 of file StdExpansion.h.

References v_IProductWRTBase().

Referenced by Nektar::LocalRegions::TetExp::v_FwdTrans(), Nektar::LocalRegions::TriExp::v_FwdTrans(), Nektar::LocalRegions::QuadExp::v_FwdTrans(), Nektar::LocalRegions::HexExp::v_FwdTrans(), Nektar::StdRegions::StdHexExp::v_FwdTrans(), Nektar::StdRegions::StdQuadExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::TriExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::QuadExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::Expansion3D::v_GenMatrix(), Nektar::LocalRegions::Expansion2D::v_GenMatrix(), Nektar::LocalRegions::TriExp::v_NormVectorIProductWRTBase(), and Nektar::LocalRegions::QuadExp::v_NormVectorIProductWRTBase().

{
v_IProductWRTBase(inarray, outarray);
}
void Nektar::StdRegions::StdExpansion::IProductWRTBase ( const Array< OneD, const NekDouble > &  base,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
int  coll_check 
)
inline

Definition at line 597 of file StdExpansion.h.

References v_IProductWRTBase().

{
v_IProductWRTBase(base, inarray, outarray, coll_check);
}
void Nektar::StdRegions::StdExpansion::IProductWRTBase_SumFac ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inlineprotected

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 1371 of file StdExpansion.h.

References v_IProductWRTBase_SumFac().

Referenced by CreateGeneralMatrix(), Nektar::LocalRegions::TriExp::v_IProductWRTBase(), and Nektar::LocalRegions::QuadExp::v_IProductWRTBase().

{
v_IProductWRTBase_SumFac(inarray,outarray);
}
void Nektar::StdRegions::StdExpansion::IProductWRTDerivBase ( const int  dir,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 607 of file StdExpansion.h.

References v_IProductWRTDerivBase().

{
v_IProductWRTDerivBase(dir,inarray, outarray);
}
void Nektar::StdRegions::StdExpansion::IProductWRTDerivBase_SumFac ( const int  dir,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inlineprotected

Reimplemented in Nektar::LocalRegions::NodalTriExp, and Nektar::LocalRegions::HexExp.

Definition at line 1377 of file StdExpansion.h.

References v_IProductWRTDerivBase_SumFac().

Referenced by CreateGeneralMatrix(), Nektar::LocalRegions::TriExp::v_IProductWRTDerivBase(), Nektar::LocalRegions::QuadExp::v_IProductWRTDerivBase(), Nektar::StdRegions::StdQuadExp::v_IProductWRTDerivBase(), and Nektar::StdRegions::StdHexExp::v_IProductWRTDerivBase().

{
v_IProductWRTDerivBase_SumFac(dir,inarray,outarray);
}
bool Nektar::StdRegions::StdExpansion::IsBoundaryInteriorExpansion ( )
inline

Definition at line 453 of file StdExpansion.h.

References v_IsBoundaryInteriorExpansion().

Referenced by Nektar::LocalRegions::Expansion1D::v_AddRobinEdgeContribution(), Nektar::LocalRegions::Expansion2D::v_AddRobinEdgeContribution(), Nektar::LocalRegions::Expansion1D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion3D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion2D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion1D::v_GenMatrix(), Nektar::LocalRegions::Expansion3D::v_GenMatrix(), and Nektar::LocalRegions::Expansion2D::v_GenMatrix().

NekDouble Nektar::StdRegions::StdExpansion::L2 ( const Array< OneD, const NekDouble > &  phys,
const Array< OneD, const NekDouble > &  sol = NullNekDouble1DArray 
)

Function to evaluate the discrete $ L_2$ error, $ | \epsilon |_{2} = \left [ \int^1_{-1} [u - u_{exact}]^2 dx \right]^{1/2} d\xi_1 $ where $ u_{exact}$ is given by the array sol.

This function takes the physical value space array m_phys as approximate solution

Parameters
solarray of solution function at physical quadrature points
Returns
returns the $ L_2 $ error as a double.

Definition at line 128 of file StdExpansion.cpp.

References GetTotPoints(), Nektar::NekConstants::kNekSqrtTol, v_Integral(), Vmath::Vmul(), and Vmath::Vsub().

{
NekDouble val;
int ntot = GetTotPoints();
Array<OneD, NekDouble> wsp(ntot);
if (sol.num_elements() == 0)
{
Vmath::Vmul(ntot, phys, 1, phys, 1, wsp, 1);
}
else
{
Vmath::Vsub(ntot, sol, 1, phys, 1, wsp, 1);
Vmath::Vmul(ntot, wsp, 1, wsp, 1, wsp, 1);
}
val = v_Integral(wsp);
// if val too small, sqrt returns nan.
{
return 0.0;
}
else
{
return sqrt(val);
}
}
void Nektar::StdRegions::StdExpansion::LaplacianMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
inline

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 916 of file StdExpansion.h.

References v_LaplacianMatrixOp().

Referenced by GeneralMatrixOp(), HelmholtzMatrixOp_MatFree_GenericImpl(), LaplacianMatrixOp_MatFree_GenericImpl(), and LinearAdvectionDiffusionReactionMatrixOp_MatFree().

{
v_LaplacianMatrixOp(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::LaplacianMatrixOp ( const int  k1,
const int  k2,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
inline

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 936 of file StdExpansion.h.

References v_LaplacianMatrixOp().

{
v_LaplacianMatrixOp(k1,k2,inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::LaplacianMatrixOp_MatFree ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
inlineprotected

Definition at line 1399 of file StdExpansion.h.

References v_LaplacianMatrixOp_MatFree().

Referenced by GeneralMatrixOp_MatFree(), Nektar::LocalRegions::NodalTriExp::LaplacianMatrixOp(), Nektar::StdRegions::StdNodalTriExp::v_LaplacianMatrixOp(), Nektar::LocalRegions::PrismExp::v_LaplacianMatrixOp(), Nektar::LocalRegions::TetExp::v_LaplacianMatrixOp(), Nektar::LocalRegions::HexExp::v_LaplacianMatrixOp(), Nektar::LocalRegions::TriExp::v_LaplacianMatrixOp(), Nektar::StdRegions::StdQuadExp::v_LaplacianMatrixOp(), Nektar::LocalRegions::QuadExp::v_LaplacianMatrixOp(), Nektar::StdRegions::StdTriExp::v_LaplacianMatrixOp(), Nektar::StdRegions::StdHexExp::v_LaplacianMatrixOp(), and v_LaplacianMatrixOp().

{
v_LaplacianMatrixOp_MatFree(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::LaplacianMatrixOp_MatFree ( const int  k1,
const int  k2,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
protected

Definition at line 644 of file StdExpansion.cpp.

References ASSERTL1, Nektar::StdRegions::StdMatrixKey::ConstFactorExists(), Nektar::StdRegions::eFactorSVVCutoffRatio, Nektar::StdRegions::eVarCoeffD00, Nektar::StdRegions::eVarCoeffD01, Nektar::StdRegions::eVarCoeffD02, Nektar::StdRegions::eVarCoeffD11, Nektar::StdRegions::eVarCoeffD12, Nektar::StdRegions::eVarCoeffD22, GetCoordim(), GetNcoeffs(), Nektar::StdRegions::StdMatrixKey::GetNVarCoeff(), GetTotPoints(), Nektar::StdRegions::StdMatrixKey::GetVarCoeff(), Nektar::StdRegions::StdMatrixKey::HasVarCoeff(), SVVLaplacianFilter(), v_BwdTrans(), v_IProductWRTDerivBase(), v_PhysDeriv(), Vmath::Vmul(), and Vmath::Zero().

{
ASSERTL1(k1 >= 0 && k1 < GetCoordim(),"invalid first argument");
ASSERTL1(k2 >= 0 && k2 < GetCoordim(),"invalid second argument");
int nq = GetTotPoints();
Array<OneD, NekDouble> tmp(nq);
Array<OneD, NekDouble> dtmp(nq);
VarCoeffType varcoefftypes[3][3]
};
v_BwdTrans(inarray,tmp);
v_PhysDeriv(k2,tmp,dtmp);
if (mkey.GetNVarCoeff())
{
if (k1 == k2)
{
// By default, k1 == k2 has \sigma = 1 (diagonal entries)
if(mkey.HasVarCoeff(varcoefftypes[k1][k1]))
{
Vmath::Vmul(nq, mkey.GetVarCoeff(varcoefftypes[k1][k1]), 1, dtmp, 1, dtmp, 1);
}
v_IProductWRTDerivBase(k1, dtmp, outarray);
}
else
{
// By default, k1 != k2 has \sigma = 0 (off-diagonal entries)
if(mkey.HasVarCoeff(varcoefftypes[k1][k2]))
{
Vmath::Vmul(nq, mkey.GetVarCoeff(varcoefftypes[k1][k2]), 1, dtmp, 1, dtmp, 1);
v_IProductWRTDerivBase(k1, dtmp, outarray);
}
else
{
Vmath::Zero(GetNcoeffs(), outarray, 1);
}
}
}
else
{
// Multiply by svv tensor
if(mkey.ConstFactorExists(eFactorSVVCutoffRatio))
{
SVVLaplacianFilter(dtmp,mkey);
}
v_IProductWRTDerivBase(k1, dtmp, outarray);
}
}
void Nektar::StdRegions::StdExpansion::LaplacianMatrixOp_MatFree_GenericImpl ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
protected

Definition at line 699 of file StdExpansion.cpp.

References Nektar::StdRegions::eLaplacian00, Nektar::StdRegions::eLaplacian01, Nektar::StdRegions::eLaplacian02, Nektar::StdRegions::eLaplacian11, Nektar::StdRegions::eLaplacian12, Nektar::StdRegions::eLaplacian22, GetCoordim(), Nektar::StdRegions::StdMatrixKey::GetNVarCoeff(), LaplacianMatrixOp(), m_ncoeffs, Vmath::Vadd(), and Vmath::Vcopy().

Referenced by Nektar::LocalRegions::NodalTriExp::LaplacianMatrixOp(), Nektar::StdRegions::StdNodalTriExp::v_LaplacianMatrixOp(), Nektar::StdRegions::StdExpansion2D::v_LaplacianMatrixOp_MatFree(), Nektar::StdRegions::StdExpansion3D::v_LaplacianMatrixOp_MatFree(), and v_LaplacianMatrixOp_MatFree().

{
const int dim = GetCoordim();
int i,j;
Array<OneD,NekDouble> store(m_ncoeffs);
Array<OneD,NekDouble> store2(m_ncoeffs,0.0);
if(mkey.GetNVarCoeff() == 0)
{
// just call diagonal matrix form of laplcian operator
for(i = 0; i < dim; ++i)
{
LaplacianMatrixOp(i,i,inarray,store,mkey);
Vmath::Vadd(m_ncoeffs, store, 1, store2, 1, store2, 1);
}
}
else
{
const MatrixType mtype[3][3]
for(i = 0; i < dim; i++)
{
for(j = 0; j < dim; j++)
{
mkeyij = MemoryManager<StdMatrixKey>::AllocateSharedPtr(mkey,mtype[i][j]);
LaplacianMatrixOp(i,j,inarray,store,*mkeyij);
Vmath::Vadd(m_ncoeffs, store, 1, store2, 1, store2, 1);
}
}
}
Vmath::Vcopy(m_ncoeffs,store2.get(),1,outarray.get(),1);
}
void Nektar::StdRegions::StdExpansion::LaplacianMatrixOp_MatFree_Kernel ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
Array< OneD, NekDouble > &  wsp 
)
inlineprotected

Definition at line 1406 of file StdExpansion.h.

References v_LaplacianMatrixOp_MatFree_Kernel().

Referenced by Nektar::StdRegions::StdExpansion2D::v_HelmholtzMatrixOp_MatFree(), Nektar::StdRegions::StdExpansion3D::v_HelmholtzMatrixOp_MatFree(), Nektar::StdRegions::StdExpansion2D::v_LaplacianMatrixOp_MatFree(), and Nektar::StdRegions::StdExpansion3D::v_LaplacianMatrixOp_MatFree().

{
v_LaplacianMatrixOp_MatFree_Kernel(inarray, outarray, wsp);
}
void Nektar::StdRegions::StdExpansion::LinearAdvectionDiffusionReactionMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey,
bool  addDiffusionTerm = true 
)
inline

Definition at line 966 of file StdExpansion.h.

References v_LinearAdvectionDiffusionReactionMatrixOp().

Referenced by GeneralMatrixOp().

{
v_LinearAdvectionDiffusionReactionMatrixOp(inarray,outarray,mkey,addDiffusionTerm);
}
void Nektar::StdRegions::StdExpansion::LinearAdvectionDiffusionReactionMatrixOp_MatFree ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey,
bool  addDiffusionTerm = true 
)
protected

Definition at line 836 of file StdExpansion.cpp.

References ASSERTL0, ASSERTL1, DetShapeType(), Nektar::StdRegions::eFactorLambda, Nektar::StdRegions::eLaplacian, Nektar::StdRegions::eVarCoeffVelX, Nektar::StdRegions::eVarCoeffVelY, Nektar::StdRegions::StdMatrixKey::GetConstFactor(), GetCoordim(), Nektar::StdRegions::StdMatrixKey::GetNVarCoeff(), GetTotPoints(), Nektar::StdRegions::StdMatrixKey::GetVarCoeff(), LaplacianMatrixOp(), m_ncoeffs, Vmath::Svtvp(), v_BwdTrans(), v_IProductWRTBase(), v_PhysDeriv(), Vmath::Vadd(), Vmath::Vvtvp(), and Vmath::Zero().

Referenced by GeneralMatrixOp_MatFree(), and v_LinearAdvectionDiffusionReactionMatrixOp().

{
int i;
int ndir = mkey.GetNVarCoeff(); // assume num.r consts corresponds to directions
ASSERTL0(ndir,"Must define at least one advection velocity");
NekDouble lambda = mkey.GetConstFactor(eFactorLambda);
int totpts = GetTotPoints();
Array<OneD, NekDouble> tmp(3*totpts);
Array<OneD, NekDouble> tmp_deriv = tmp + totpts;
Array<OneD, NekDouble> tmp_adv = tmp_deriv + totpts;
ASSERTL1(ndir <= GetCoordim(),"Number of constants is larger than coordinate dimensions");
v_BwdTrans(inarray,tmp);
//calculate u dx + v dy + ..
Vmath::Zero(totpts,tmp_adv,1);
for(i = 0; i < ndir; ++i)
{
v_PhysDeriv(i,tmp,tmp_deriv);
Vmath::Vvtvp(totpts,mkey.GetVarCoeff(varcoefftypes[i]),1,tmp_deriv,1,tmp_adv,1,tmp_adv,1);
}
if(lambda) // add -lambda*u
{
Vmath::Svtvp(totpts,-lambda,tmp,1,tmp_adv,1,tmp_adv,1);
}
if(addDiffusionTerm)
{
Array<OneD, NekDouble> lap(m_ncoeffs);
StdMatrixKey mkeylap(eLaplacian,DetShapeType(),*this);
LaplacianMatrixOp(inarray,lap,mkeylap);
v_IProductWRTBase(tmp_adv, outarray);
// Lap v - u.grad v + lambda*u
// => (grad u, grad v) + u.grad v - lambda*u
Vmath::Vadd(m_ncoeffs,lap,1,outarray,1,outarray,1);
}
else
{
v_IProductWRTBase(tmp_adv, outarray);
}
}
NekDouble Nektar::StdRegions::StdExpansion::Linf ( const Array< OneD, const NekDouble > &  phys,
const Array< OneD, const NekDouble > &  sol = NullNekDouble1DArray 
)

Function to evaluate the discrete $ L_\infty$ error $ |\epsilon|_\infty = \max |u - u_{exact}|$ where $ u_{exact}$ is given by the array sol.

This function takes the physical value space array m_phys as approximate solution

Parameters
solarray of solution function at physical quadrature points
Returns
returns the $ L_\infty $ error as a NekDouble.

Definition at line 106 of file StdExpansion.cpp.

References GetTotPoints(), Nektar::NullNekDouble1DArray, Vmath::Vabs(), Vmath::Vamax(), and Vmath::Vsub().

{
NekDouble val;
int ntot = GetTotPoints();
Array<OneD, NekDouble> wsp(ntot);
{
Vmath::Vabs(ntot, phys, 1, wsp, 1);
}
else
{
Vmath::Vsub(ntot, sol, 1, phys, 1, wsp, 1);
Vmath::Vabs(ntot, wsp, 1, wsp, 1);
}
val = Vmath::Vamax(ntot, wsp, 1);
return val;
}
void Nektar::StdRegions::StdExpansion::LocCoordToLocCollapsed ( const Array< OneD, const NekDouble > &  xi,
Array< OneD, NekDouble > &  eta 
)
inline

Convert local cartesian coordinate xi into local collapsed coordinates eta.

Definition at line 1111 of file StdExpansion.h.

References v_LocCoordToLocCollapsed().

Referenced by Nektar::StdRegions::StdQuadExp::v_GenMatrix(), Nektar::StdRegions::StdTriExp::v_GenMatrix(), Nektar::StdRegions::StdPrismExp::v_GenMatrix(), Nektar::StdRegions::StdTetExp::v_GenMatrix(), Nektar::StdRegions::StdExpansion2D::v_PhysEvaluate(), and Nektar::StdRegions::StdExpansion3D::v_PhysEvaluate().

void Nektar::StdRegions::StdExpansion::MassLevelCurvatureMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
inline

Definition at line 959 of file StdExpansion.h.

References v_MassLevelCurvatureMatrixOp().

Referenced by GeneralMatrixOp().

{
v_MassLevelCurvatureMatrixOp(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::MassLevelCurvatureMatrixOp_MatFree ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
protected
Todo:
fix this

Definition at line 785 of file StdExpansion.cpp.

Referenced by GeneralMatrixOp_MatFree(), Nektar::LocalRegions::HexExp::v_MassLevelCurvatureMatrixOp(), Nektar::LocalRegions::TriExp::v_MassLevelCurvatureMatrixOp(), Nektar::LocalRegions::QuadExp::v_MassLevelCurvatureMatrixOp(), and v_MassLevelCurvatureMatrixOp().

{
///@todo fix this
// int nqtot = GetTotPoints();
// int matrixid = mkey.GetMatrixID();
//
// NekDouble checkweight=0.0;
// Array<OneD, NekDouble> tmp(nqtot), tan(nqtot), dtan0(nqtot), dtan1(nqtot), weight(nqtot,0.0);
//
// int gmatnumber = (mkey.GetVariableCoefficient(1)).num_elements();
//
// v_BwdTrans(inarray,tmp);
//
// // weight = \grad \cdot tanvec
// for(int k = 0; k < GetCoordim(); ++k)
// {
// Vmath::Vcopy(nqtot, &(mkey.GetVariableCoefficient(0))[k*nqtot],
// 1, &tan[0], 1);
//
// // For Regular mesh ...
// if(gmatnumber==1)
// {
// // D_{/xi} and D_{/eta}
// v_PhysDeriv(0,tan,dtan0);
// v_PhysDeriv(1,tan,dtan1);
//
// // d v / d x_i = (d \xi / d x_i)*( d v / d \xi ) + (d \eta / d x_i)*( d v / d \eta )
// Vmath::Svtvp(nqtot,(mkey.GetVariableCoefficient(2*k+1))[0],&dtan0[0],1,&weight[0],1,&weight[0],1);
// Vmath::Svtvp(nqtot,(mkey.GetVariableCoefficient(2*k+2))[0],&dtan1[0],1,&weight[0],1,&weight[0],1);
// }
//
// // For Curved mesh ...
// else if(gmatnumber==nqtot)
// {
// // D_{x} and D_{y}
// v_PhysDeriv(k,tan,dtan0);
// Vmath::Vadd(nqtot,&dtan0[0],1,&weight[0],1,&weight[0],1);
// }
//
// else
// {
// ASSERTL1( ((gmatnumber=1) || (gmatnumber==nqtot) ), "Gmat is not in a right size");
// }
// }
//
// Vmath::Vmul(nqtot, &weight[0], 1, &tmp[0], 1, &tmp[0], 1);
// v_IProductWRTBase(tmp, outarray);
}
void Nektar::StdRegions::StdExpansion::MassMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
inline

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 909 of file StdExpansion.h.

References v_MassMatrixOp().

Referenced by GeneralMatrixOp(), HelmholtzMatrixOp_MatFree_GenericImpl(), Nektar::StdRegions::StdPointExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdQuadExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::TriExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::SegExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::QuadExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdTriExp::v_FwdTrans_BndConstrained(), and Nektar::StdRegions::StdSegExp::v_FwdTrans_BndConstrained().

{
v_MassMatrixOp(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::MassMatrixOp_MatFree ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
protected

Definition at line 627 of file StdExpansion.cpp.

References Nektar::StdRegions::eVarCoeffMass, GetTotPoints(), Nektar::StdRegions::StdMatrixKey::GetVarCoeff(), Nektar::StdRegions::StdMatrixKey::HasVarCoeff(), v_BwdTrans(), v_IProductWRTBase(), and Vmath::Vmul().

Referenced by GeneralMatrixOp_MatFree(), Nektar::LocalRegions::NodalTriExp::MassMatrixOp(), Nektar::StdRegions::StdNodalTriExp::v_MassMatrixOp(), Nektar::LocalRegions::PrismExp::v_MassMatrixOp(), Nektar::LocalRegions::HexExp::v_MassMatrixOp(), Nektar::StdRegions::StdQuadExp::v_MassMatrixOp(), Nektar::LocalRegions::TriExp::v_MassMatrixOp(), Nektar::StdRegions::StdTriExp::v_MassMatrixOp(), Nektar::LocalRegions::QuadExp::v_MassMatrixOp(), Nektar::StdRegions::StdHexExp::v_MassMatrixOp(), and v_MassMatrixOp().

{
int nq = GetTotPoints();
Array<OneD, NekDouble> tmp(nq);
v_BwdTrans(inarray,tmp);
if(mkey.HasVarCoeff(eVarCoeffMass))
{
Vmath::Vmul(nq, mkey.GetVarCoeff(eVarCoeffMass), 1, tmp, 1, tmp, 1);
}
v_IProductWRTBase(tmp, outarray);
}
void Nektar::StdRegions::StdExpansion::MultiplyByQuadratureMetric ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 880 of file StdExpansion.h.

References v_MultiplyByQuadratureMetric().

Referenced by Nektar::LocalRegions::NodalTriExp::IProductWRTBase_SumFac(), Nektar::LocalRegions::HexExp::IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::NodalTriExp::IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::PyrExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::TetExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::HexExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::TriExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::QuadExp::v_ComputeLaplacianMetric(), Nektar::StdRegions::StdExpansion2D::v_HelmholtzMatrixOp_MatFree(), Nektar::StdRegions::StdExpansion3D::v_HelmholtzMatrixOp_MatFree(), Nektar::LocalRegions::QuadExp::v_IProductWRTBase(), Nektar::StdRegions::StdHexExp::v_IProductWRTBase(), Nektar::StdRegions::StdQuadExp::v_IProductWRTBase(), Nektar::StdRegions::StdPrismExp::v_IProductWRTBase(), Nektar::StdRegions::StdTetExp::v_IProductWRTBase(), Nektar::LocalRegions::TetExp::v_IProductWRTBase_SumFac(), Nektar::LocalRegions::PrismExp::v_IProductWRTBase_SumFac(), Nektar::LocalRegions::TriExp::v_IProductWRTBase_SumFac(), Nektar::LocalRegions::HexExp::v_IProductWRTBase_SumFac(), Nektar::LocalRegions::QuadExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdQuadExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdTriExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdPrismExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdHexExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdTetExp::v_IProductWRTBase_SumFac(), Nektar::LocalRegions::TetExp::v_IProductWRTDerivBase(), Nektar::LocalRegions::PrismExp::v_IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::TriExp::v_IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::QuadExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdQuadExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdTriExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdPrismExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdHexExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdTetExp::v_IProductWRTDerivBase_SumFac(), and Nektar::LocalRegions::PrismExp::v_LaplacianMatrixOp_MatFree_Kernel().

{
v_MultiplyByQuadratureMetric(inarray, outarray);
}
void Nektar::StdRegions::StdExpansion::MultiplyByStdQuadratureMetric ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 887 of file StdExpansion.h.

References v_MultiplyByStdQuadratureMetric().

Referenced by Nektar::LocalRegions::Expansion::ComputeQuadratureMetric(), Nektar::StdRegions::StdExpansion3D::v_Integral(), Nektar::StdRegions::StdPyrExp::v_IProductWRTBase(), and Nektar::StdRegions::StdPyrExp::v_IProductWRTDerivBase_SumFac().

{
v_MultiplyByStdQuadratureMetric(inarray, outarray);
}
void Nektar::StdRegions::StdExpansion::NegateEdgeNormal ( const int  edge)
inline

Definition at line 1214 of file StdExpansion.h.

References v_NegateEdgeNormal().

{
}
void Nektar::StdRegions::StdExpansion::NegateFaceNormal ( const int  face)
inline

Definition at line 1229 of file StdExpansion.h.

References v_NegateFaceNormal().

{
}
void Nektar::StdRegions::StdExpansion::NormVectorIProductWRTBase ( const Array< OneD, const NekDouble > &  Fx,
const Array< OneD, const NekDouble > &  Fy,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 689 of file StdExpansion.h.

References v_NormVectorIProductWRTBase().

Referenced by Nektar::MultiRegions::DisContField3DHomogeneous1D::NormVectorIProductWRTBase().

{
v_NormVectorIProductWRTBase(Fx,Fy,outarray);
}
void Nektar::StdRegions::StdExpansion::NormVectorIProductWRTBase ( const Array< OneD, const NekDouble > &  Fx,
const Array< OneD, const NekDouble > &  Fy,
const Array< OneD, const NekDouble > &  Fz,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 694 of file StdExpansion.h.

References v_NormVectorIProductWRTBase().

{
v_NormVectorIProductWRTBase(Fx,Fy,Fz,outarray);
}
int Nektar::StdRegions::StdExpansion::NumBndryCoeffs ( void  ) const
inline

Definition at line 374 of file StdExpansion.h.

References v_NumBndryCoeffs().

Referenced by Nektar::LocalRegions::Expansion1D::AddHDGHelmholtzTraceTerms(), Nektar::LocalRegions::Expansion1D::AddNormTraceInt(), Nektar::CoupledLocalToGlobalC0ContMap::CoupledLocalToGlobalC0ContMap(), Nektar::LocalRegions::PyrExp::CreateStaticCondMatrix(), Nektar::LocalRegions::NodalTriExp::CreateStaticCondMatrix(), Nektar::LocalRegions::TetExp::CreateStaticCondMatrix(), Nektar::LocalRegions::PrismExp::CreateStaticCondMatrix(), Nektar::LocalRegions::TriExp::CreateStaticCondMatrix(), Nektar::LocalRegions::QuadExp::CreateStaticCondMatrix(), Nektar::LocalRegions::SegExp::CreateStaticCondMatrix(), Nektar::LocalRegions::HexExp::CreateStaticCondMatrix(), CreateStdStaticCondMatrix(), Nektar::LocalRegions::Expansion1D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion3D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion2D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion3D::v_BuildInverseTransformationMatrix(), Nektar::LocalRegions::Expansion3D::v_BuildTransformationMatrix(), Nektar::StdRegions::StdQuadExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::TriExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::QuadExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::Expansion1D::v_GenMatrix(), Nektar::StdRegions::StdNodalPrismExp::v_GetBoundaryMap(), Nektar::StdRegions::StdNodalTetExp::v_GetBoundaryMap(), Nektar::StdRegions::StdNodalTriExp::v_GetBoundaryMap(), Nektar::StdRegions::StdSegExp::v_GetBoundaryMap(), Nektar::StdRegions::StdQuadExp::v_GetBoundaryMap(), Nektar::StdRegions::StdTriExp::v_GetBoundaryMap(), Nektar::StdRegions::StdHexExp::v_GetBoundaryMap(), Nektar::LocalRegions::Expansion3D::v_GetEdgeInverseBoundaryMap(), Nektar::LocalRegions::Expansion2D::v_GetEdgeInverseBoundaryMap(), Nektar::LocalRegions::Expansion3D::v_GetFaceInverseBoundaryMap(), Nektar::StdRegions::StdNodalPrismExp::v_GetInteriorMap(), Nektar::StdRegions::StdNodalTetExp::v_GetInteriorMap(), Nektar::StdRegions::StdNodalTriExp::v_GetInteriorMap(), Nektar::StdRegions::StdSegExp::v_GetInteriorMap(), Nektar::StdRegions::StdQuadExp::v_GetInteriorMap(), Nektar::StdRegions::StdTriExp::v_GetInteriorMap(), Nektar::StdRegions::StdPrismExp::v_GetInteriorMap(), Nektar::StdRegions::StdTetExp::v_GetInteriorMap(), Nektar::StdRegions::StdHexExp::v_GetInteriorMap(), and Nektar::StdRegions::StdPyrExp::v_GetInteriorMap().

{
return v_NumBndryCoeffs();
}
int Nektar::StdRegions::StdExpansion::NumDGBndryCoeffs ( void  ) const
inline

Definition at line 379 of file StdExpansion.h.

References v_NumDGBndryCoeffs().

Referenced by Nektar::LocalRegions::Expansion3D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion2D::v_AddRobinMassMatrix(), Nektar::LocalRegions::Expansion1D::v_GenMatrix(), Nektar::LocalRegions::Expansion3D::v_GenMatrix(), and Nektar::LocalRegions::Expansion2D::v_GenMatrix().

{
}
void Nektar::StdRegions::StdExpansion::PhysDeriv ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  out_d0,
Array< OneD, NekDouble > &  out_d1 = NullNekDouble1DArray,
Array< OneD, NekDouble > &  out_d2 = NullNekDouble1DArray 
)
inline

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 992 of file StdExpansion.h.

References v_PhysDeriv().

Referenced by Nektar::LocalRegions::SegExp::v_HelmholtzMatrixOp(), Nektar::LocalRegions::SegExp::v_LaplacianMatrixOp(), Nektar::StdRegions::StdHexExp::v_PhysDeriv(), Nektar::LocalRegions::SegExp::v_PhysDeriv(), Nektar::LocalRegions::TriExp::v_PhysDeriv(), and Nektar::LocalRegions::HexExp::v_PhysDeriv().

{
v_PhysDeriv (inarray, out_d0, out_d1, out_d2);
}
void Nektar::StdRegions::StdExpansion::PhysDeriv ( const int  dir,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 1000 of file StdExpansion.h.

References v_PhysDeriv().

{
v_PhysDeriv (dir, inarray, outarray);
}
void Nektar::StdRegions::StdExpansion::PhysDeriv_n ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  out_dn 
)
inline

Definition at line 1013 of file StdExpansion.h.

References v_PhysDeriv_n().

{
v_PhysDeriv_n(inarray,out_dn);
}
void Nektar::StdRegions::StdExpansion::PhysDeriv_s ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  out_ds 
)
inline

Definition at line 1007 of file StdExpansion.h.

References v_PhysDeriv_s().

{
v_PhysDeriv_s(inarray,out_ds);
}
void Nektar::StdRegions::StdExpansion::PhysDirectionalDeriv ( const Array< OneD, const NekDouble > &  inarray,
const Array< OneD, const NekDouble > &  direction,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 1019 of file StdExpansion.h.

References v_PhysDirectionalDeriv().

{
v_PhysDirectionalDeriv (inarray, direction, outarray);
}
NekDouble Nektar::StdRegions::StdExpansion::PhysEvaluate ( const Array< OneD, const NekDouble > &  coords,
const Array< OneD, const NekDouble > &  physvals 
)
inline

This function evaluates the expansion at a single (arbitrary) point of the domain.

This function is a wrapper around the virtual function v_PhysEvaluate()

Based on the value of the expansion at the quadrature points provided in physvals, this function calculates the value of the expansion at an arbitrary single points (with coordinates $ \mathbf{x_c}$ given by the pointer coords). This operation, equivalent to

\[ u(\mathbf{x_c}) = \sum_p \phi_p(\mathbf{x_c}) \hat{u}_p \]

is evaluated using Lagrangian interpolants through the quadrature points:

\[ u(\mathbf{x_c}) = \sum_p h_p(\mathbf{x_c}) u_p\]

Parameters
coordsthe coordinates of the single point
physvalsthe interpolated field at the quadrature points
Returns
returns the value of the expansion at the single point

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 1073 of file StdExpansion.h.

References v_PhysEvaluate().

{
return v_PhysEvaluate(coords,physvals);
}
NekDouble Nektar::StdRegions::StdExpansion::PhysEvaluate ( const Array< OneD, DNekMatSharedPtr > &  I,
const Array< OneD, const NekDouble > &  physvals 
)
inline

This function evaluates the expansion at a single (arbitrary) point of the domain.

This function is a wrapper around the virtual function v_PhysEvaluate()

Based on the value of the expansion at the quadrature points provided in physvals, this function calculates the value of the expansion at an arbitrary single points associated with the interpolation matrices provided in $ I $.

Parameters
Ian Array of lagrange interpolantes evaluated at the coordinate and going through the local physical quadrature
physvalsthe interpolated field at the quadrature points
Returns
returns the value of the expansion at the single point

Definition at line 1100 of file StdExpansion.h.

References v_PhysEvaluate().

{
return v_PhysEvaluate(I,physvals);
}
void Nektar::StdRegions::StdExpansion::PhysInterpToSimplexEquiSpaced ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)

This function performs an interpolation from the physical space points provided at input into an array of equispaced points which are not the collapsed coordinate. So for a tetrahedron you will only get a tetrahedral number of values.

This is primarily used for output purposes to get a better distribution of points more suitable for most postprocessing

Definition at line 1658 of file StdExpansion.cpp.

References DetShapeType(), Nektar::StdRegions::ePhysInterpToEquiSpaced, Nektar::eWrapper, Nektar::LibUtilities::GetNumberOfCoefficients(), GetStdMatrix(), and m_base.

{
StdMatrixKey Ikey(ePhysInterpToEquiSpaced, shape, *this);
int nqtot = 1;
int nqbase;
int np = 0;
for(int i = 0; i < m_base.num_elements(); ++i)
{
nqbase = m_base[i]->GetNumPoints();
nqtot *= nqbase;
np = max(np,nqbase);
}
NekVector<NekDouble> in (nqtot,inarray,eWrapper);
NekVector<NekDouble> out(LibUtilities::GetNumberOfCoefficients(shape,np,np,np),outarray,eWrapper);
out = (*intmat) * in;
}
void Nektar::StdRegions::StdExpansion::ReduceOrderCoeffs ( int  numMin,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 923 of file StdExpansion.h.

References v_ReduceOrderCoeffs().

{
v_ReduceOrderCoeffs(numMin,inarray,outarray);
}
void Nektar::StdRegions::StdExpansion::SetCoeffsToOrientation ( Array< OneD, NekDouble > &  coeffs,
StdRegions::Orientation  dir 
)
inline

Definition at line 729 of file StdExpansion.h.

References v_SetCoeffsToOrientation().

{
}
void Nektar::StdRegions::StdExpansion::SetCoeffsToOrientation ( StdRegions::Orientation  dir,
Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 736 of file StdExpansion.h.

References v_SetCoeffsToOrientation().

{
v_SetCoeffsToOrientation(dir,inarray,outarray);
}
void Nektar::StdRegions::StdExpansion::SetElmtId ( const int  id)
inline

Set the element id of this expansion when used in a list by returning value of m_elmt_id.

Definition at line 624 of file StdExpansion.h.

References m_elmt_id.

{
m_elmt_id = id;
}
void Nektar::StdRegions::StdExpansion::SetPhysNormals ( Array< OneD, const NekDouble > &  normal)
inline

Definition at line 682 of file StdExpansion.h.

References v_SetPhysNormals().

{
}
void Nektar::StdRegions::StdExpansion::SetUpPhysNormals ( const int  edge)
virtual

Definition at line 919 of file StdExpansion.cpp.

References v_SetUpPhysNormals().

{
}
void Nektar::StdRegions::StdExpansion::StdPhysDeriv ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  out_d0,
Array< OneD, NekDouble > &  out_d1 = NullNekDouble1DArray,
Array< OneD, NekDouble > &  out_d2 = NullNekDouble1DArray 
)
inline

Definition at line 1026 of file StdExpansion.h.

References v_StdPhysDeriv().

{
v_StdPhysDeriv(inarray, out_d0, out_d1, out_d2);
}
void Nektar::StdRegions::StdExpansion::StdPhysDeriv ( const int  dir,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
inline

Definition at line 1034 of file StdExpansion.h.

References v_StdPhysDeriv().

{
v_StdPhysDeriv(dir,inarray,outarray);
}
NekDouble Nektar::StdRegions::StdExpansion::StdPhysEvaluate ( const Array< OneD, const NekDouble > &  Lcoord,
const Array< OneD, const NekDouble > &  physvals 
)

Definition at line 924 of file StdExpansion.cpp.

References v_StdPhysEvaluate().

{
return v_StdPhysEvaluate(Lcoord,physvals);
}
void Nektar::StdRegions::StdExpansion::SVVLaplacianFilter ( Array< OneD, NekDouble > &  array,
const StdMatrixKey mkey 
)
inline

Definition at line 930 of file StdExpansion.h.

References v_SVVLaplacianFilter().

Referenced by LaplacianMatrixOp_MatFree().

{
v_SVVLaplacianFilter(array,mkey);
}
void Nektar::StdRegions::StdExpansion::v_AddRobinEdgeContribution ( const int  edgeid,
const Array< OneD, const NekDouble > &  primCoeffs,
Array< OneD, NekDouble > &  coeffs 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::Expansion2D, and Nektar::LocalRegions::Expansion1D.

Definition at line 1198 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by AddRobinEdgeContribution().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for "
"specific element types");
}
void Nektar::StdRegions::StdExpansion::v_AddRobinMassMatrix ( const int  edgeid,
const Array< OneD, const NekDouble > &  primCoeffs,
DNekMatSharedPtr inoutmat 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::Expansion2D, Nektar::LocalRegions::Expansion3D, and Nektar::LocalRegions::Expansion1D.

Definition at line 1192 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by AddRobinMassMatrix().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for "
"specific element types");
}
DNekMatSharedPtr Nektar::StdRegions::StdExpansion::v_BuildInverseTransformationMatrix ( const DNekScalMatSharedPtr m_transformationmatrix)
privatevirtual

Reimplemented in Nektar::LocalRegions::Expansion3D.

Definition at line 1651 of file StdExpansion.cpp.

References ErrorUtil::efatal, NEKERROR, and Nektar::NullDNekMatSharedPtr.

Referenced by BuildInverseTransformationMatrix().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for LocalRegions");
}
virtual void Nektar::StdRegions::StdExpansion::v_BwdTrans ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatepure virtual

Implemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdNodalPrismExp, Nektar::StdRegions::StdNodalTetExp, Nektar::StdRegions::StdNodalTriExp, and Nektar::StdRegions::StdPointExp.

Referenced by BwdTrans(), LaplacianMatrixOp_MatFree(), LinearAdvectionDiffusionReactionMatrixOp_MatFree(), MassMatrixOp_MatFree(), WeakDerivMatrixOp_MatFree(), and WeakDirectionalDerivMatrixOp_MatFree().

void Nektar::StdRegions::StdExpansion::v_BwdTrans_SumFac ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdNodalPrismExp, Nektar::StdRegions::StdNodalTetExp, Nektar::StdRegions::StdNodalTriExp, and Nektar::StdRegions::StdPointExp.

Definition at line 1437 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by BwdTrans_SumFac().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape" );
}
int Nektar::StdRegions::StdExpansion::v_CalcNumberOfCoefficients ( const std::vector< unsigned int > &  nummodes,
int &  modes_offset 
)
virtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, and Nektar::StdRegions::StdTriExp.

Definition at line 952 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by CalcNumberOfCoefficients().

{
NEKERROR(ErrorUtil::efatal, "This function is not defined for this class");
return 0;
}
void Nektar::StdRegions::StdExpansion::v_ComputeEdgeNormal ( const int  edge)
privatevirtual

Reimplemented in Nektar::LocalRegions::QuadExp, and Nektar::LocalRegions::TriExp.

Definition at line 1581 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by ComputeEdgeNormal().

{
ASSERTL0(false, "Cannot compute edge normal for this expansion.");
}
void Nektar::StdRegions::StdExpansion::v_ComputeFaceNormal ( const int  face)
privatevirtual

Reimplemented in Nektar::LocalRegions::HexExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::TetExp, and Nektar::LocalRegions::PyrExp.

Definition at line 1597 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by ComputeFaceNormal().

{
ASSERTL0(false, "Cannot compute face normal for this expansion.");
}
void Nektar::StdRegions::StdExpansion::v_ComputeVertexNormal ( const int  vertex)
privatevirtual

Reimplemented in Nektar::LocalRegions::SegExp.

Definition at line 1607 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by ComputeVertexNormal().

{
ASSERTL0(false, "Cannot compute vertex normal for this expansion.");
}
DNekMatSharedPtr Nektar::StdRegions::StdExpansion::v_CreateStdMatrix ( const StdMatrixKey mkey)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::LocalRegions::HexExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, Nektar::LocalRegions::SegExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdSegExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::TetExp, Nektar::StdRegions::StdNodalTriExp, Nektar::StdRegions::StdNodalTetExp, Nektar::StdRegions::StdNodalPrismExp, Nektar::LocalRegions::PyrExp, and Nektar::StdRegions::StdPointExp.

Definition at line 1300 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by CreateStdMatrix().

{
NEKERROR(ErrorUtil::efatal, "This function has not "
"been defined for this element");
DNekMatSharedPtr returnval;
return returnval;
}
int Nektar::StdRegions::StdExpansion::v_DetCartesianDirOfEdge ( const int  edge)
privatevirtual

Reimplemented in Nektar::StdRegions::StdTriExp, and Nektar::StdRegions::StdQuadExp.

Definition at line 1090 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by DetCartesianDirOfEdge().

{
ASSERTL0(false, "This function is not valid or not defined");
return 0;
}
const LibUtilities::BasisKey Nektar::StdRegions::StdExpansion::v_DetEdgeBasisKey ( const int  i) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdTriExp, and Nektar::StdRegions::StdQuadExp.

Definition at line 1096 of file StdExpansion.cpp.

References ASSERTL0, and Nektar::LibUtilities::NullBasisKey().

Referenced by DetEdgeBasisKey().

{
ASSERTL0(false, "This function is not valid or not defined");
}
const LibUtilities::BasisKey Nektar::StdRegions::StdExpansion::v_DetFaceBasisKey ( const int  i,
const int  k 
) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, and Nektar::StdRegions::StdPrismExp.

Definition at line 1102 of file StdExpansion.cpp.

References ASSERTL0, and Nektar::LibUtilities::NullBasisKey().

Referenced by DetFaceBasisKey().

{
ASSERTL0(false, "This function is not valid or not defined");
}
LibUtilities::ShapeType Nektar::StdRegions::StdExpansion::v_DetShapeType ( ) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::TetExp, and Nektar::StdRegions::StdPointExp.

Definition at line 1145 of file StdExpansion.cpp.

References ASSERTL0, and Nektar::LibUtilities::eNoShapeType.

Referenced by DetShapeType().

{
ASSERTL0(false, "This expansion does not have a shape type defined");
}
void Nektar::StdRegions::StdExpansion::v_DropLocStaticCondMatrix ( const LocalRegions::MatrixKey mkey)
virtual

Reimplemented in Nektar::LocalRegions::HexExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::TetExp, Nektar::LocalRegions::PrismExp, and Nektar::LocalRegions::PyrExp.

Definition at line 988 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by DropLocStaticCondMatrix().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for LocalRegions");
}
bool Nektar::StdRegions::StdExpansion::v_EdgeNormalNegated ( const int  edge)
privatevirtual

Reimplemented in Nektar::LocalRegions::Expansion2D.

Definition at line 1591 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by EdgeNormalNegated().

{
ASSERTL0(false, "Not implemented.");
return false;
}
void Nektar::StdRegions::StdExpansion::v_ExtractDataToCoeffs ( const NekDouble data,
const std::vector< unsigned int > &  nummodes,
const int  nmode_offset,
NekDouble coeffs 
)
virtual

Unpack data from input file assuming it comes from the same expansion type.

See Also
StdExpansion::ExtractDataToCoeffs

Reimplemented in Nektar::LocalRegions::SegExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::PrismExp, and Nektar::LocalRegions::TetExp.

Definition at line 958 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by ExtractDataToCoeffs().

{
NEKERROR(ErrorUtil::efatal, "This function is not defined for this class");
}
void Nektar::StdRegions::StdExpansion::v_FillMode ( const int  mode,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdNodalPrismExp, Nektar::StdRegions::StdNodalTetExp, and Nektar::StdRegions::StdNodalTriExp.

Definition at line 1286 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by FillMode().

{
NEKERROR(ErrorUtil::efatal, "This function has not "
"been defined for this shape");
}
virtual void Nektar::StdRegions::StdExpansion::v_FwdTrans ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatepure virtual

Transform a given function from physical quadrature space to coefficient space.

See Also
StdExpansion::FwdTrans

Implemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdTriExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::SegExp, Nektar::StdRegions::StdNodalPrismExp, Nektar::StdRegions::StdNodalTetExp, Nektar::StdRegions::StdNodalTriExp, Nektar::LocalRegions::PyrExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::TetExp, and Nektar::StdRegions::StdPointExp.

Referenced by FwdTrans().

void Nektar::StdRegions::StdExpansion::v_FwdTrans_BndConstrained ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdTriExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::TriExp, Nektar::StdRegions::StdQuadExp, and Nektar::StdRegions::StdPointExp.

Definition at line 1173 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by FwdTrans_BndConstrained().

{
NEKERROR(ErrorUtil::efatal, "This method has not been defined");
}
DNekMatSharedPtr Nektar::StdRegions::StdExpansion::v_GenMatrix ( const StdMatrixKey mkey)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::LocalRegions::HexExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, Nektar::LocalRegions::SegExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdSegExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::PrismExp, Nektar::StdRegions::StdNodalTriExp, Nektar::LocalRegions::NodalTriExp, Nektar::LocalRegions::TetExp, Nektar::StdRegions::StdNodalTetExp, Nektar::StdRegions::StdNodalPrismExp, Nektar::LocalRegions::PyrExp, Nektar::LocalRegions::Expansion2D, Nektar::StdRegions::StdPointExp, Nektar::LocalRegions::Expansion3D, and Nektar::LocalRegions::Expansion1D.

Definition at line 1292 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GenMatrix().

{
NEKERROR(ErrorUtil::efatal, "This function has not "
"been defined for this element");
DNekMatSharedPtr returnval;
return returnval;
}
void Nektar::StdRegions::StdExpansion::v_GetBoundaryMap ( Array< OneD, unsigned int > &  outarray)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdNodalTriExp, Nektar::StdRegions::StdNodalTetExp, and Nektar::StdRegions::StdNodalPrismExp.

Definition at line 1327 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetBoundaryMap().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape" );
}
StdRegions::Orientation Nektar::StdRegions::StdExpansion::v_GetCartesianEorient ( int  edge)
virtual

Reimplemented in Nektar::LocalRegions::QuadExp, and Nektar::LocalRegions::TriExp.

Definition at line 1013 of file StdExpansion.cpp.

References ErrorUtil::efatal, Nektar::StdRegions::eForwards, and NEKERROR.

Referenced by GetCartesianEorient().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for two-dimensional LocalRegions");
return eForwards;
}
void Nektar::StdRegions::StdExpansion::v_GetCoord ( const Array< OneD, const NekDouble > &  Lcoord,
Array< OneD, NekDouble > &  coord 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::HexExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::TetExp, Nektar::LocalRegions::PrismExp, and Nektar::LocalRegions::PyrExp.

Definition at line 1315 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetCoord().

{
NEKERROR(ErrorUtil::efatal, "Write coordinate definition method");
}
int Nektar::StdRegions::StdExpansion::v_GetCoordim ( void  )
privatevirtual

Reimplemented in Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::TetExp, and Nektar::LocalRegions::PyrExp.

Definition at line 1321 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetCoordim(), and H1().

{
NEKERROR(ErrorUtil::efatal, "Write method");
return -1;
}
void Nektar::StdRegions::StdExpansion::v_GetCoords ( Array< OneD, NekDouble > &  coords_0,
Array< OneD, NekDouble > &  coords_1,
Array< OneD, NekDouble > &  coords_2 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::Expansion, Nektar::LocalRegions::PointExp, Nektar::LocalRegions::TetExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::PyrExp, and Nektar::StdRegions::StdPointExp.

Definition at line 1308 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetCoords().

{
NEKERROR(ErrorUtil::efatal, "Write coordinate definition method");
}
LibUtilities::BasisType Nektar::StdRegions::StdExpansion::v_GetEdgeBasisType ( const int  i) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, and Nektar::StdRegions::StdQuadExp.

Definition at line 1138 of file StdExpansion.cpp.

References ASSERTL0, and Nektar::LibUtilities::eNoBasisType.

Referenced by GetEdgeBasisType().

{
ASSERTL0(false, "This function is not valid or not defined");
}
void Nektar::StdRegions::StdExpansion::v_GetEdgeInteriorMap ( const int  eid,
const Orientation  edgeOrient,
Array< OneD, unsigned int > &  maparray,
Array< OneD, int > &  signarray 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdQuadExp, and Nektar::StdRegions::StdNodalTriExp.

Definition at line 1344 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by CreateIndexMap(), and GetEdgeInteriorMap().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape" );
}
void Nektar::StdRegions::StdExpansion::v_GetEdgeInterpVals ( const int  edge,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::QuadExp, and Nektar::LocalRegions::TriExp.

Definition at line 1393 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetEdgeInterpVals().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape or library" );
}
Array< OneD, unsigned int > Nektar::StdRegions::StdExpansion::v_GetEdgeInverseBoundaryMap ( int  eid)
privatevirtual

Reimplemented in Nektar::LocalRegions::Expansion2D, and Nektar::LocalRegions::Expansion3D.

Definition at line 1634 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetEdgeInverseBoundaryMap().

{
ASSERTL0(false, "Not implemented.");
Array<OneD, unsigned int> noinversemap(1);
return noinversemap;
}
int Nektar::StdRegions::StdExpansion::v_GetEdgeNcoeffs ( const int  i) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, and Nektar::StdRegions::StdQuadExp.

Definition at line 1072 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetEdgeNcoeffs().

{
ASSERTL0(false, "This function is not valid or not defined");
return 0;
}
const NormalVector & Nektar::StdRegions::StdExpansion::v_GetEdgeNormal ( const int  edge) const
privatevirtual

Reimplemented in Nektar::LocalRegions::Expansion2D.

Definition at line 1574 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetEdgeNormal().

{
ASSERTL0(false, "Cannot get edge normals for this expansion.");
static NormalVector result;
return result;
}
int Nektar::StdRegions::StdExpansion::v_GetEdgeNumPoints ( const int  i) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdTriExp, and Nektar::StdRegions::StdQuadExp.

Definition at line 1084 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetEdgeNumPoints().

{
ASSERTL0(false, "This function is not valid or not defined");
return 0;
}
void Nektar::StdRegions::StdExpansion::v_GetEdgePhysVals ( const int  edge,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Extract the physical values along edge edge from inarray into outarray following the local edge orientation and point distribution defined by defined in EdgeExp.

Reimplemented in Nektar::LocalRegions::QuadExp.

Definition at line 1373 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetEdgePhysVals().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape or library" );
}
void Nektar::StdRegions::StdExpansion::v_GetEdgePhysVals ( const int  edge,
const boost::shared_ptr< StdExpansion > &  EdgeExp,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Definition at line 1378 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape or library" );
}
void Nektar::StdRegions::StdExpansion::v_GetEdgeQFactors ( const int  edge,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::QuadExp, and Nektar::LocalRegions::TriExp.

Definition at line 1398 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetEdgeQFactors().

{
"Method does not exist for this shape or library");
}
void Nektar::StdRegions::StdExpansion::v_GetEdgeToElementMap ( const int  eid,
const Orientation  edgeOrient,
Array< OneD, unsigned int > &  maparray,
Array< OneD, int > &  signarray 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdTriExp, and Nektar::StdRegions::StdNodalTriExp.

Definition at line 1358 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by CreateIndexMap(), and GetEdgeToElementMap().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape" );
}
int Nektar::StdRegions::StdExpansion::v_GetElmtId ( void  )
virtual

Get the element id of this expansion when used in a list by returning value of m_elmt_id.

Definition at line 930 of file StdExpansion.cpp.

References m_elmt_id.

{
return m_elmt_id;
}
StdRegions::Orientation Nektar::StdRegions::StdExpansion::v_GetEorient ( int  edge)
virtual

Reimplemented in Nektar::LocalRegions::QuadExp, and Nektar::LocalRegions::TriExp.

Definition at line 1000 of file StdExpansion.cpp.

References ErrorUtil::efatal, Nektar::StdRegions::eForwards, and NEKERROR.

Referenced by Nektar::LocalRegions::Expansion2D::AddEdgeBoundaryInt(), GetEorient(), Nektar::LocalRegions::Expansion2D::v_AddRobinEdgeContribution(), and Nektar::LocalRegions::Expansion2D::v_AddRobinMassMatrix().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for two-dimensional LocalRegions");
return eForwards;
}
void Nektar::StdRegions::StdExpansion::v_GetFaceInteriorMap ( const int  fid,
const Orientation  faceOrient,
Array< OneD, unsigned int > &  maparray,
Array< OneD, int > &  signarray 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdTetExp, and Nektar::StdRegions::StdPrismExp.

Definition at line 1351 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by CreateIndexMap(), and GetFaceInteriorMap().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape" );
}
int Nektar::StdRegions::StdExpansion::v_GetFaceIntNcoeffs ( const int  i) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, and Nektar::StdRegions::StdHexExp.

Definition at line 1120 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetFaceIntNcoeffs().

{
ASSERTL0(false, "This function is not valid or not defined");
return 0;
}
Array< OneD, unsigned int > Nektar::StdRegions::StdExpansion::v_GetFaceInverseBoundaryMap ( int  fid,
StdRegions::Orientation  faceOrient = eNoOrientation 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::Expansion3D.

Definition at line 1642 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetFaceInverseBoundaryMap().

{
ASSERTL0(false, "Not implemented.");
Array<OneD, unsigned int> noinversemap(1);
return noinversemap;
}
int Nektar::StdRegions::StdExpansion::v_GetFaceNcoeffs ( const int  i) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, and Nektar::StdRegions::StdPrismExp.

Definition at line 1114 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetFaceNcoeffs().

{
ASSERTL0(false, "This function is not valid or not defined");
return 0;
}
const NormalVector & Nektar::StdRegions::StdExpansion::v_GetFaceNormal ( const int  face) const
privatevirtual

Definition at line 1612 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetFaceNormal().

{
ASSERTL0(false, "Cannot get face normals for this expansion.");
static NormalVector result;
return result;
}
int Nektar::StdRegions::StdExpansion::v_GetFaceNumPoints ( const int  i) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, and Nektar::StdRegions::StdPrismExp.

Definition at line 1108 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetFaceNumPoints().

{
ASSERTL0(false, "This function is not valid or not defined");
return 0;
}
void Nektar::StdRegions::StdExpansion::v_GetFacePhysVals ( const int  face,
const boost::shared_ptr< StdExpansion > &  FaceExp,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
StdRegions::Orientation  orient 
)
privatevirtual

Definition at line 1406 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetFacePhysVals().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape or library" );
}
LibUtilities::PointsKey Nektar::StdRegions::StdExpansion::v_GetFacePointsKey ( const int  i,
const int  j 
) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, and Nektar::StdRegions::StdPrismExp.

Definition at line 1132 of file StdExpansion.cpp.

References ASSERTL0, and Nektar::LibUtilities::NullPointsKey().

Referenced by GetFacePointsKey().

{
ASSERTL0(false, "This function is not valid or not defined");
}
void Nektar::StdRegions::StdExpansion::v_GetFaceToElementMap ( const int  fid,
const Orientation  faceOrient,
Array< OneD, unsigned int > &  maparray,
Array< OneD, int > &  signarray,
int  nummodesA = -1,
int  nummodesB = -1 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, and Nektar::StdRegions::StdPrismExp.

Definition at line 1365 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by CreateIndexMap(), and GetFaceToElementMap().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape" );
}
StdRegions::Orientation Nektar::StdRegions::StdExpansion::v_GetForient ( int  face)
virtual

Reimplemented in Nektar::LocalRegions::Expansion3D.

Definition at line 993 of file StdExpansion.cpp.

References Nektar::StdRegions::eDir1FwdDir1_Dir2FwdDir2, ErrorUtil::efatal, and NEKERROR.

Referenced by GetForient().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for three-dimensional LocalRegions");
}
void Nektar::StdRegions::StdExpansion::v_GetInteriorMap ( Array< OneD, unsigned int > &  outarray)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdNodalTriExp, Nektar::StdRegions::StdNodalTetExp, and Nektar::StdRegions::StdNodalPrismExp.

Definition at line 1332 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetInteriorMap().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape" );
}
DNekScalBlkMatSharedPtr Nektar::StdRegions::StdExpansion::v_GetLocStaticCondMatrix ( const LocalRegions::MatrixKey mkey)
virtual

Reimplemented in Nektar::LocalRegions::HexExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::TetExp, Nektar::LocalRegions::PrismExp, and Nektar::LocalRegions::PyrExp.

Definition at line 982 of file StdExpansion.cpp.

References ErrorUtil::efatal, NEKERROR, and Nektar::NullDNekScalBlkMatSharedPtr.

Referenced by GetLocStaticCondMatrix().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for LocalRegions");
}
const boost::shared_ptr< SpatialDomains::GeomFactors > & Nektar::StdRegions::StdExpansion::v_GetMetricInfo ( ) const
privatevirtual

Reimplemented in Nektar::LocalRegions::QuadExp, and Nektar::LocalRegions::Expansion.

Definition at line 1430 of file StdExpansion.cpp.

References ErrorUtil::efatal, NEKERROR, and Nektar::SpatialDomains::NullGeomFactorsSharedPtr.

Referenced by GetMetricInfo().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for LocalRegions");
}
int Nektar::StdRegions::StdExpansion::v_GetNedges ( ) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, and Nektar::StdRegions::StdTriExp.

Definition at line 1048 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetNedges().

{
ASSERTL0(false, "This function is needs defining for this shape");
return 0;
}
int Nektar::StdRegions::StdExpansion::v_GetNfaces ( ) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, and Nektar::StdRegions::StdPrismExp.

Definition at line 1054 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetNfaces().

{
ASSERTL0(false, "This function is needs defining for this shape");
return 0;
}
virtual int Nektar::StdRegions::StdExpansion::v_GetNverts ( ) const
privatepure virtual

Implemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, and Nektar::StdRegions::StdTriExp.

Referenced by GetNverts().

const Array< OneD, const NekDouble > & Nektar::StdRegions::StdExpansion::v_GetPhysNormals ( void  )
virtual

Reimplemented in Nektar::LocalRegions::SegExp.

Definition at line 935 of file StdExpansion.cpp.

References ErrorUtil::efatal, NEKERROR, and Nektar::NullNekDouble1DArray.

Referenced by GetPhysNormals().

{
NEKERROR(ErrorUtil::efatal, "This function is not valid for this class");
}
StdRegions::Orientation Nektar::StdRegions::StdExpansion::v_GetPorient ( int  point)
virtual

Reimplemented in Nektar::LocalRegions::SegExp.

Definition at line 1006 of file StdExpansion.cpp.

References ErrorUtil::efatal, Nektar::StdRegions::eFwd, and NEKERROR.

Referenced by GetPorient().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for one-dimensional LocalRegions");
return eFwd;
}
int Nektar::StdRegions::StdExpansion::v_GetShapeDimension ( ) const
privatevirtual

Definition at line 1151 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetShapeDimension().

{
ASSERTL0(false, "This function is not valid or not defined");
return 0;
}
void Nektar::StdRegions::StdExpansion::v_GetSimplexEquiSpacedConnectivity ( Array< OneD, int > &  conn,
bool  standard = true 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdTetExp, and Nektar::LocalRegions::PrismExp.

Definition at line 1681 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetSimplexEquiSpacedConnectivity().

{
ASSERTL0(false, "Not implemented.");
}
const NormalVector & Nektar::StdRegions::StdExpansion::v_GetSurfaceNormal ( const int  id) const
privatevirtual

Reimplemented in Nektar::LocalRegions::Expansion2D.

Definition at line 1626 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetSurfaceNormal().

{
ASSERTL0(false, "Cannot get face normals for this expansion.");
static NormalVector result;
return result;
}
int Nektar::StdRegions::StdExpansion::v_GetTotalEdgeIntNcoeffs ( ) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, and Nektar::StdRegions::StdPrismExp.

Definition at line 1078 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetTotalEdgeIntNcoeffs().

{
ASSERTL0(false, "This function is not valid or not defined");
return 0;
}
int Nektar::StdRegions::StdExpansion::v_GetTotalFaceIntNcoeffs ( ) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, and Nektar::StdRegions::StdHexExp.

Definition at line 1126 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetTotalFaceIntNcoeffs().

{
ASSERTL0(false, "This function is not valid or not defined");
return 0;
}
void Nektar::StdRegions::StdExpansion::v_GetTracePhysVals ( const int  edge,
const boost::shared_ptr< StdExpansion > &  EdgeExp,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
StdRegions::Orientation  orient = eNoOrientation 
)
privatevirtual

Definition at line 1383 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetTracePhysVals().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape or library" );
}
int Nektar::StdRegions::StdExpansion::v_GetVertexMap ( int  localVertexId,
bool  useCoeffPacking = false 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdNodalTriExp, Nektar::StdRegions::StdNodalTetExp, and Nektar::StdRegions::StdNodalPrismExp.

Definition at line 1337 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetVertexMap().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape" );
return 0;
}
const NormalVector & Nektar::StdRegions::StdExpansion::v_GetVertexNormal ( const int  vertex) const
privatevirtual

Definition at line 1619 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by GetVertexNormal().

{
ASSERTL0(false, "Cannot get vertex normals for this expansion.");
static NormalVector result;
return result;
}
void Nektar::StdRegions::StdExpansion::v_GetVertexPhysVals ( const int  vertex,
const Array< OneD, const NekDouble > &  inarray,
NekDouble outarray 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::SegExp.

Definition at line 1388 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by GetVertexPhysVals().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape or library" );
}
void Nektar::StdRegions::StdExpansion::v_HelmholtzMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdHexExp, Nektar::LocalRegions::QuadExp, Nektar::StdRegions::StdTriExp, Nektar::LocalRegions::TriExp, Nektar::StdRegions::StdQuadExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::PrismExp, Nektar::StdRegions::StdNodalTriExp, Nektar::StdRegions::StdSegExp, and Nektar::LocalRegions::TetExp.

Definition at line 1539 of file StdExpansion.cpp.

References HelmholtzMatrixOp_MatFree().

Referenced by HelmholtzMatrixOp().

{
// If this function is not reimplemented on shape level, the function
// below will be called
HelmholtzMatrixOp_MatFree(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::v_HelmholtzMatrixOp_MatFree ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdExpansion3D, and Nektar::StdRegions::StdExpansion2D.

Definition at line 1565 of file StdExpansion.cpp.

References HelmholtzMatrixOp_MatFree_GenericImpl().

Referenced by HelmholtzMatrixOp_MatFree().

{
// If this function is not reimplemented on shape level, the function
// below will be called
HelmholtzMatrixOp_MatFree_GenericImpl(inarray,outarray,mkey);
}
NekDouble Nektar::StdRegions::StdExpansion::v_Integral ( const Array< OneD, const NekDouble > &  inarray)
privatevirtual

Integrates the specified function over the domain.

See Also
StdRegions::StdExpansion::Integral.

Reimplemented in Nektar::StdRegions::StdExpansion3D, Nektar::LocalRegions::HexExp, Nektar::StdRegions::StdSegExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::PyrExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::TetExp, Nektar::StdRegions::StdQuadExp, and Nektar::StdRegions::StdTriExp.

Definition at line 1184 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by H1(), Integral(), and L2().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for "
"local expansions");
return 0;
}
virtual void Nektar::StdRegions::StdExpansion::v_IProductWRTBase ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatepure virtual

Calculates the inner product of a given function f with the different modes of the expansion.

Implemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdTriExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::TriExp, Nektar::StdRegions::StdNodalPrismExp, Nektar::StdRegions::StdNodalTetExp, Nektar::StdRegions::StdNodalTriExp, Nektar::LocalRegions::PyrExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::TetExp, and Nektar::StdRegions::StdPointExp.

Referenced by IProductWRTBase(), LinearAdvectionDiffusionReactionMatrixOp_MatFree(), MassMatrixOp_MatFree(), WeakDerivMatrixOp_MatFree(), and WeakDirectionalDerivMatrixOp_MatFree().

virtual void Nektar::StdRegions::StdExpansion::v_IProductWRTBase ( const Array< OneD, const NekDouble > &  base,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
int  coll_check 
)
inlineprivatevirtual

Reimplemented in Nektar::StdRegions::StdSegExp, Nektar::LocalRegions::SegExp, and Nektar::StdRegions::StdPointExp.

Definition at line 1525 of file StdExpansion.h.

References ASSERTL0.

{
ASSERTL0(false, "StdExpansion::v_IProductWRTBase has no (and should have no) implementation");
}
void Nektar::StdRegions::StdExpansion::v_IProductWRTBase_SumFac ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdQuadExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::TriExp, Nektar::StdRegions::StdNodalPrismExp, Nektar::StdRegions::StdNodalTetExp, Nektar::StdRegions::StdNodalTriExp, Nektar::StdRegions::StdPointExp, Nektar::LocalRegions::PrismExp, and Nektar::LocalRegions::TetExp.

Definition at line 1443 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by IProductWRTBase_SumFac().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape" );
}
void Nektar::StdRegions::StdExpansion::v_IProductWRTDerivBase ( const int  dir,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdTriExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::StdRegions::StdNodalPrismExp, Nektar::StdRegions::StdNodalTetExp, Nektar::StdRegions::StdNodalTriExp, Nektar::StdRegions::StdPointExp, Nektar::LocalRegions::PrismExp, and Nektar::LocalRegions::TetExp.

Definition at line 1163 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by IProductWRTDerivBase(), and LaplacianMatrixOp_MatFree().

{
NEKERROR(ErrorUtil::efatal, "This method has not been defined");
}
void Nektar::StdRegions::StdExpansion::v_IProductWRTDerivBase_SumFac ( const int  dir,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdQuadExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::StdRegions::StdNodalPrismExp, Nektar::StdRegions::StdNodalTetExp, Nektar::StdRegions::StdNodalTriExp, and Nektar::LocalRegions::PrismExp.

Definition at line 1449 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by IProductWRTDerivBase_SumFac().

{
NEKERROR(ErrorUtil::efatal,"Method does not exist for this shape" );
}
bool Nektar::StdRegions::StdExpansion::v_IsBoundaryInteriorExpansion ( )
privatevirtual

Reimplemented in Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, and Nektar::StdRegions::StdQuadExp.

Definition at line 1157 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by IsBoundaryInteriorExpansion().

{
ASSERTL0(false,"This function has not been defined for this expansion");
return false;
}
void Nektar::StdRegions::StdExpansion::v_LaplacianMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdHexExp, Nektar::LocalRegions::QuadExp, Nektar::StdRegions::StdTriExp, Nektar::LocalRegions::TriExp, Nektar::StdRegions::StdQuadExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::TetExp, Nektar::StdRegions::StdSegExp, and Nektar::StdRegions::StdNodalTriExp.

Definition at line 1465 of file StdExpansion.cpp.

References LaplacianMatrixOp_MatFree().

Referenced by LaplacianMatrixOp().

{
// If this function is not reimplemented on shape level, the function
// below will be called
LaplacianMatrixOp_MatFree(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::v_LaplacianMatrixOp ( const int  k1,
const int  k2,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdTriExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::StdRegions::StdQuadExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::TetExp, and Nektar::StdRegions::StdNodalTriExp.

Definition at line 1488 of file StdExpansion.cpp.

References LaplacianMatrixOp_MatFree().

{
// If this function is not reimplemented on shape level, the function
// below will be called
LaplacianMatrixOp_MatFree(k1,k2,inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::v_LaplacianMatrixOp_MatFree ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdExpansion3D, and Nektar::StdRegions::StdExpansion2D.

Definition at line 1548 of file StdExpansion.cpp.

References LaplacianMatrixOp_MatFree_GenericImpl().

Referenced by LaplacianMatrixOp_MatFree().

{
// If this function is not reimplemented on shape level, the function
// below will be called
LaplacianMatrixOp_MatFree_GenericImpl(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::v_LaplacianMatrixOp_MatFree_Kernel ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
Array< OneD, NekDouble > &  wsp 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::QuadExp, and Nektar::LocalRegions::TriExp.

Definition at line 1557 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by LaplacianMatrixOp_MatFree_Kernel().

{
ASSERTL0(false, "Not implemented.");
}
void Nektar::StdRegions::StdExpansion::v_LinearAdvectionDiffusionReactionMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey,
bool  addDiffusionTerm = true 
)
privatevirtual

Definition at line 1528 of file StdExpansion.cpp.

References LinearAdvectionDiffusionReactionMatrixOp_MatFree().

Referenced by LinearAdvectionDiffusionReactionMatrixOp().

{
// If this function is not reimplemented on shape level, the function
// below will be called
LinearAdvectionDiffusionReactionMatrixOp_MatFree(inarray,outarray,mkey,addDiffusionTerm);
}
void Nektar::StdRegions::StdExpansion::v_LocCoordToLocCollapsed ( const Array< OneD, const NekDouble > &  xi,
Array< OneD, NekDouble > &  eta 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, and Nektar::StdRegions::StdTriExp.

Definition at line 1043 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by LocCoordToLocCollapsed().

{
NEKERROR(ErrorUtil::efatal, "This function is not defined for this shape");
}
void Nektar::StdRegions::StdExpansion::v_MassLevelCurvatureMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, and Nektar::LocalRegions::HexExp.

Definition at line 1519 of file StdExpansion.cpp.

References MassLevelCurvatureMatrixOp_MatFree().

Referenced by MassLevelCurvatureMatrixOp().

{
// If this function is not reimplemented on shape level, the function
// below will be called
MassLevelCurvatureMatrixOp_MatFree(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::v_MassMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdHexExp, Nektar::LocalRegions::QuadExp, Nektar::StdRegions::StdTriExp, Nektar::LocalRegions::TriExp, Nektar::StdRegions::StdQuadExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::PrismExp, and Nektar::StdRegions::StdNodalTriExp.

Definition at line 1456 of file StdExpansion.cpp.

References MassMatrixOp_MatFree().

Referenced by MassMatrixOp().

{
// If this function is not reimplemented on shape level, the function
// below will be called
MassMatrixOp_MatFree(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::v_MultiplyByQuadratureMetric ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::Expansion.

Definition at line 1416 of file StdExpansion.cpp.

References v_MultiplyByStdQuadratureMetric().

Referenced by MultiplyByQuadratureMetric().

{
v_MultiplyByStdQuadratureMetric(inarray, outarray);
}
void Nektar::StdRegions::StdExpansion::v_MultiplyByStdQuadratureMetric ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdTriExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, and Nektar::StdRegions::StdPyrExp.

Definition at line 1423 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by MultiplyByStdQuadratureMetric(), and v_MultiplyByQuadratureMetric().

{
NEKERROR(ErrorUtil::efatal, "Method does not exist for this shape or library");
}
void Nektar::StdRegions::StdExpansion::v_NegateEdgeNormal ( const int  edge)
privatevirtual

Reimplemented in Nektar::LocalRegions::Expansion2D.

Definition at line 1586 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by NegateEdgeNormal().

{
ASSERTL0(false, "Not implemented.");
}
void Nektar::StdRegions::StdExpansion::v_NegateFaceNormal ( const int  face)
privatevirtual

Reimplemented in Nektar::StdRegions::StdExpansion3D.

Definition at line 1602 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by NegateFaceNormal().

{
ASSERTL0(false, "Not implemented.");
}
void Nektar::StdRegions::StdExpansion::v_NormVectorIProductWRTBase ( const Array< OneD, const NekDouble > &  Fx,
const Array< OneD, const NekDouble > &  Fy,
Array< OneD, NekDouble > &  outarray 
)
virtual

Reimplemented in Nektar::LocalRegions::SegExp.

Definition at line 968 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by NormVectorIProductWRTBase().

{
NEKERROR(ErrorUtil::efatal, "This function is not valid for this class");
}
void Nektar::StdRegions::StdExpansion::v_NormVectorIProductWRTBase ( const Array< OneD, const NekDouble > &  Fx,
const Array< OneD, const NekDouble > &  Fy,
const Array< OneD, const NekDouble > &  Fz,
Array< OneD, NekDouble > &  outarray 
)
virtual

Reimplemented in Nektar::LocalRegions::QuadExp, and Nektar::LocalRegions::TriExp.

Definition at line 973 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

{
NEKERROR(ErrorUtil::efatal, "This function is not valid for this class");
}
int Nektar::StdRegions::StdExpansion::v_NumBndryCoeffs ( ) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::LocalRegions::SegExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdTriExp, and Nektar::StdRegions::StdNodalTriExp.

Definition at line 1060 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by NumBndryCoeffs().

{
ASSERTL0(false, "This function is needs defining for this shape");
return 0;
}
int Nektar::StdRegions::StdExpansion::v_NumDGBndryCoeffs ( ) const
privatevirtual

Reimplemented in Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdPrismExp, Nektar::LocalRegions::SegExp, Nektar::StdRegions::StdQuadExp, and Nektar::StdRegions::StdTriExp.

Definition at line 1066 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by NumDGBndryCoeffs().

{
ASSERTL0(false, "This function is needs defining for this shape");
return 0;
}
void Nektar::StdRegions::StdExpansion::v_PhysDeriv ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  out_d1,
Array< OneD, NekDouble > &  out_d2,
Array< OneD, NekDouble > &  out_d3 
)
privatevirtual

Calculate the derivative of the physical points.

See Also
StdRegions::StdExpansion::PhysDeriv

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::LocalRegions::HexExp, Nektar::StdRegions::StdTetExp, Nektar::LocalRegions::QuadExp, Nektar::StdRegions::StdSegExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::PyrExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::TetExp, Nektar::LocalRegions::SegExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdHexExp, and Nektar::StdRegions::StdTriExp.

Definition at line 1208 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by H1(), LaplacianMatrixOp_MatFree(), LinearAdvectionDiffusionReactionMatrixOp_MatFree(), PhysDeriv(), and WeakDerivMatrixOp_MatFree().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for "
"local expansions");
}
void Nektar::StdRegions::StdExpansion::v_PhysDeriv ( const int  dir,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  out_d0 
)
privatevirtual

Calculate the derivative of the physical points in a given direction.

See Also
StdRegions::StdExpansion::PhysDeriv

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::LocalRegions::HexExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdSegExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::SegExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdHexExp, and Nektar::StdRegions::StdTriExp.

Definition at line 1235 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for "
"specific element types");
}
void Nektar::StdRegions::StdExpansion::v_PhysDeriv_n ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  out_dn 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::SegExp.

Definition at line 1223 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by PhysDeriv_n().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for "
"local expansions");
}
void Nektar::StdRegions::StdExpansion::v_PhysDeriv_s ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  out_ds 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::SegExp.

Definition at line 1217 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by PhysDeriv_s().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for "
"local expansions");
}
void Nektar::StdRegions::StdExpansion::v_PhysDirectionalDeriv ( const Array< OneD, const NekDouble > &  inarray,
const Array< OneD, const NekDouble > &  direction,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Physical derivative along a direction vector.

See Also
StdRegions::StdExpansion::PhysDirectionalDeriv

Reimplemented in Nektar::LocalRegions::QuadExp, and Nektar::LocalRegions::TriExp.

Definition at line 1248 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by PhysDirectionalDeriv().

{
NEKERROR(ErrorUtil::efatal, "This function is only valid for "
"specific element types");
}
NekDouble Nektar::StdRegions::StdExpansion::v_PhysEvaluate ( const Array< OneD, const NekDouble > &  coords,
const Array< OneD, const NekDouble > &  physvals 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdExpansion3D, Nektar::LocalRegions::TriExp, Nektar::LocalRegions::QuadExp, Nektar::StdRegions::StdExpansion2D, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::PyrExp, Nektar::LocalRegions::TetExp, Nektar::StdRegions::StdExpansion1D, and Nektar::StdRegions::StdExpansion0D.

Definition at line 1272 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by PhysEvaluate().

{
NEKERROR(ErrorUtil::efatal, "Method does not exist for this shape");
return 0;
}
NekDouble Nektar::StdRegions::StdExpansion::v_PhysEvaluate ( const Array< OneD, DNekMatSharedPtr > &  I,
const Array< OneD, const NekDouble > &  physvals 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdExpansion3D, and Nektar::StdRegions::StdExpansion2D.

Definition at line 1279 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

{
NEKERROR(ErrorUtil::efatal, "Method does not exist for this shape");
return 0;
}
void Nektar::StdRegions::StdExpansion::v_ReduceOrderCoeffs ( int  numMin,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdTriExp, and Nektar::LocalRegions::HexExp.

Definition at line 1481 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by ReduceOrderCoeffs().

{
ASSERTL0(false, "This function is not defined in StdExpansion.");
}
void Nektar::StdRegions::StdExpansion::v_SetCoeffsToOrientation ( StdRegions::Orientation  dir,
Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
protectedvirtual

Reimplemented in Nektar::LocalRegions::SegExp.

Definition at line 1020 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by SetCoeffsToOrientation().

{
NEKERROR(ErrorUtil::efatal, "This function is not defined for this shape");
}
void Nektar::StdRegions::StdExpansion::v_SetCoeffsToOrientation ( Array< OneD, NekDouble > &  coeffs,
StdRegions::Orientation  dir 
)
protectedvirtual

Reimplemented in Nektar::LocalRegions::SegExp.

Definition at line 1027 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

{
NEKERROR(ErrorUtil::efatal, "This function is not defined for this shape");
}
void Nektar::StdRegions::StdExpansion::v_SetPhysNormals ( Array< OneD, const NekDouble > &  normal)
virtual

Definition at line 942 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by SetPhysNormals().

{
NEKERROR(ErrorUtil::efatal, "This function is not valid for this class");
}
void Nektar::StdRegions::StdExpansion::v_SetUpPhysNormals ( const int  edge)
virtual

Reimplemented in Nektar::LocalRegions::Expansion2D.

Definition at line 947 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by SetUpPhysNormals().

{
NEKERROR(ErrorUtil::efatal, "This function is not valid for this class");
}
void Nektar::StdRegions::StdExpansion::v_StdPhysDeriv ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  out_d1,
Array< OneD, NekDouble > &  out_d2,
Array< OneD, NekDouble > &  out_d3 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdHexExp, and Nektar::StdRegions::StdTriExp.

Definition at line 1256 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by StdPhysDeriv().

{
NEKERROR(ErrorUtil::efatal, "Method does not exist for this shape");
}
void Nektar::StdRegions::StdExpansion::v_StdPhysDeriv ( const int  dir,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdPyrExp, Nektar::StdRegions::StdSegExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdPrismExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdHexExp, and Nektar::StdRegions::StdTriExp.

Definition at line 1264 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

{
NEKERROR(ErrorUtil::efatal, "Method does not exist for this shape");
}
NekDouble Nektar::StdRegions::StdExpansion::v_StdPhysEvaluate ( const Array< OneD, const NekDouble > &  Lcoord,
const Array< OneD, const NekDouble > &  physvals 
)
protectedvirtual

Reimplemented in Nektar::LocalRegions::TriExp, Nektar::LocalRegions::HexExp, Nektar::LocalRegions::SegExp, Nektar::LocalRegions::PrismExp, Nektar::LocalRegions::TetExp, and Nektar::LocalRegions::QuadExp.

Definition at line 1035 of file StdExpansion.cpp.

References ErrorUtil::efatal, and NEKERROR.

Referenced by StdPhysEvaluate().

{
NEKERROR(ErrorUtil::efatal, "This function is not defined for this shape");
return 0;
}
void Nektar::StdRegions::StdExpansion::v_SVVLaplacianFilter ( Array< OneD, NekDouble > &  array,
const StdMatrixKey mkey 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdTetExp, Nektar::StdRegions::StdQuadExp, Nektar::StdRegions::StdPrismExp, and Nektar::StdRegions::StdTriExp.

Definition at line 1475 of file StdExpansion.cpp.

References ASSERTL0.

Referenced by SVVLaplacianFilter().

{
ASSERTL0(false, "This function is not defined in StdExpansion.");
}
void Nektar::StdRegions::StdExpansion::v_WeakDerivMatrixOp ( const int  i,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
privatevirtual

Reimplemented in Nektar::StdRegions::StdHexExp, Nektar::StdRegions::StdTriExp, Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, Nektar::StdRegions::StdQuadExp, Nektar::LocalRegions::HexExp, and Nektar::StdRegions::StdNodalTriExp.

Definition at line 1498 of file StdExpansion.cpp.

References WeakDerivMatrixOp_MatFree().

Referenced by WeakDerivMatrixOp().

{
// If this function is not reimplemented on shape level, the function
// below will be called
WeakDerivMatrixOp_MatFree(i,inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::v_WeakDirectionalDerivMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
privatevirtual

Reimplemented in Nektar::LocalRegions::QuadExp, Nektar::LocalRegions::TriExp, and Nektar::LocalRegions::HexExp.

Definition at line 1509 of file StdExpansion.cpp.

References WeakDirectionalDerivMatrixOp_MatFree().

Referenced by WeakDirectionalDerivMatrixOp().

{
// If this function is not reimplemented on shape level, the function
// below will be called
WeakDirectionalDerivMatrixOp_MatFree(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::WeakDerivMatrixOp ( const int  i,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
inline

Reimplemented in Nektar::LocalRegions::NodalTriExp.

Definition at line 944 of file StdExpansion.h.

References v_WeakDerivMatrixOp().

Referenced by GeneralMatrixOp().

{
v_WeakDerivMatrixOp(i,inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::WeakDerivMatrixOp_MatFree ( const int  i,
const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
protected

Definition at line 741 of file StdExpansion.cpp.

References Nektar::StdRegions::eVarCoeffD00, Nektar::StdRegions::eVarCoeffD11, Nektar::StdRegions::eVarCoeffD22, GetTotPoints(), Nektar::StdRegions::StdMatrixKey::GetVarCoeff(), Nektar::StdRegions::StdMatrixKey::HasVarCoeff(), v_BwdTrans(), v_IProductWRTBase(), v_PhysDeriv(), and Vmath::Vmul().

Referenced by GeneralMatrixOp_MatFree(), Nektar::StdRegions::StdNodalTriExp::v_WeakDerivMatrixOp(), Nektar::LocalRegions::HexExp::v_WeakDerivMatrixOp(), Nektar::StdRegions::StdQuadExp::v_WeakDerivMatrixOp(), Nektar::LocalRegions::TriExp::v_WeakDerivMatrixOp(), Nektar::LocalRegions::QuadExp::v_WeakDerivMatrixOp(), Nektar::StdRegions::StdTriExp::v_WeakDerivMatrixOp(), Nektar::StdRegions::StdHexExp::v_WeakDerivMatrixOp(), v_WeakDerivMatrixOp(), and Nektar::LocalRegions::NodalTriExp::WeakDerivMatrixOp().

{
Array<OneD, NekDouble> tmp(GetTotPoints());
int nq = GetTotPoints();
v_BwdTrans(inarray,tmp);
v_PhysDeriv(k1,tmp,tmp);
if(mkey.HasVarCoeff(keys[k1]))
{
Vmath::Vmul(nq, &(mkey.GetVarCoeff(keys[k1]))[0], 1, &tmp[0], 1, &tmp[0], 1);
}
v_IProductWRTBase(tmp, outarray);
}
void Nektar::StdRegions::StdExpansion::WeakDirectionalDerivMatrixOp ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
inline

Definition at line 952 of file StdExpansion.h.

References v_WeakDirectionalDerivMatrixOp().

Referenced by GeneralMatrixOp().

{
v_WeakDirectionalDerivMatrixOp(inarray,outarray,mkey);
}
void Nektar::StdRegions::StdExpansion::WeakDirectionalDerivMatrixOp_MatFree ( const Array< OneD, const NekDouble > &  inarray,
Array< OneD, NekDouble > &  outarray,
const StdMatrixKey mkey 
)
protected

Definition at line 761 of file StdExpansion.cpp.

References GetTotPoints(), v_BwdTrans(), and v_IProductWRTBase().

Referenced by GeneralMatrixOp_MatFree(), Nektar::LocalRegions::HexExp::v_WeakDirectionalDerivMatrixOp(), Nektar::LocalRegions::TriExp::v_WeakDirectionalDerivMatrixOp(), Nektar::LocalRegions::QuadExp::v_WeakDirectionalDerivMatrixOp(), and v_WeakDirectionalDerivMatrixOp().

{
int nq = GetTotPoints();
// int varsize = ((mkey.GetVariableCoefficient(0)).num_elements())/dim;
Array<OneD, NekDouble> tmp(nq);
v_BwdTrans(inarray,tmp);
// For Deformed mesh ==============
// if (varsize==nq)
// {
// v_PhysDirectionalDeriv(tmp,mkey.GetVariableCoefficient(0),tmp);
// }
//
// // For Regular mesh ==========
// else
// {
// ASSERTL0(false, "Wrong route");
// }
v_IProductWRTBase(tmp, outarray);
}

Member Data Documentation

Array<OneD, LibUtilities::BasisSharedPtr> Nektar::StdRegions::StdExpansion::m_base
protected

Bases needed for the expansion

Definition at line 1327 of file StdExpansion.h.

Referenced by Nektar::LocalRegions::QuadExp::CreateMatrix(), Nektar::LocalRegions::SegExp::CreateMatrix(), Nektar::LocalRegions::NodalTriExp::CreateStdMatrix(), EvalBasisNumModesMax(), Nektar::LocalRegions::Expansion::Expansion(), GetBase(), GetBasis(), GetBasisNumModes(), GetBasisType(), Nektar::StdRegions::StdPrismExp::GetMode(), Nektar::StdRegions::StdTetExp::GetMode(), GetNtrace(), GetNumBases(), GetNumPoints(), GetPoints(), GetPointsKeys(), GetPointsType(), Nektar::StdRegions::StdPyrExp::GetTetMode(), GetTotPoints(), Nektar::LocalRegions::NodalTriExp::Integral(), Nektar::StdRegions::StdExpansion2D::Integral(), Nektar::LocalRegions::NodalTriExp::IProductWRTBase_SumFac(), Nektar::LocalRegions::HexExp::IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::NodalTriExp::IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::NodalTriExp::PhysDeriv(), PhysInterpToSimplexEquiSpaced(), Nektar::StdRegions::StdExpansion0D::PhysTensorDeriv(), Nektar::StdRegions::StdExpansion1D::PhysTensorDeriv(), Nektar::StdRegions::StdExpansion2D::PhysTensorDeriv(), Nektar::StdRegions::StdExpansion3D::PhysTensorDeriv(), StdExpansion(), Nektar::StdRegions::StdNodalTriExp::StdNodalTriExp(), Nektar::LocalRegions::Expansion2D::v_AddEdgeNormBoundaryInt(), Nektar::LocalRegions::Expansion3D::v_AddFaceNormBoundaryInt(), Nektar::StdRegions::StdPointExp::v_BwdTrans(), Nektar::StdRegions::StdHexExp::v_BwdTrans(), Nektar::StdRegions::StdQuadExp::v_BwdTrans(), Nektar::StdRegions::StdPrismExp::v_BwdTrans(), Nektar::StdRegions::StdTetExp::v_BwdTrans(), Nektar::StdRegions::StdSegExp::v_BwdTrans(), Nektar::StdRegions::StdPyrExp::v_BwdTrans(), Nektar::StdRegions::StdHexExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdTriExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdPrismExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdQuadExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdTetExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdPyrExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdTriExp::v_BwdTrans_SumFacKernel(), Nektar::StdRegions::StdHexExp::v_BwdTrans_SumFacKernel(), Nektar::StdRegions::StdPrismExp::v_BwdTrans_SumFacKernel(), Nektar::StdRegions::StdQuadExp::v_BwdTrans_SumFacKernel(), Nektar::StdRegions::StdTetExp::v_BwdTrans_SumFacKernel(), Nektar::StdRegions::StdPyrExp::v_BwdTrans_SumFacKernel(), Nektar::LocalRegions::TriExp::v_ComputeEdgeNormal(), Nektar::LocalRegions::QuadExp::v_ComputeEdgeNormal(), Nektar::LocalRegions::NodalTriExp::v_ComputeEdgeNormal(), Nektar::LocalRegions::HexExp::v_ComputeFaceNormal(), Nektar::LocalRegions::PyrExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::TetExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::TriExp::v_ComputeLaplacianMetric(), Nektar::LocalRegions::SegExp::v_ComputeVertexNormal(), Nektar::LocalRegions::PyrExp::v_CreateStdMatrix(), Nektar::LocalRegions::TetExp::v_CreateStdMatrix(), Nektar::LocalRegions::PrismExp::v_CreateStdMatrix(), Nektar::LocalRegions::TriExp::v_CreateStdMatrix(), Nektar::LocalRegions::QuadExp::v_CreateStdMatrix(), Nektar::LocalRegions::SegExp::v_CreateStdMatrix(), Nektar::LocalRegions::HexExp::v_CreateStdMatrix(), Nektar::StdRegions::StdTriExp::v_DetEdgeBasisKey(), Nektar::StdRegions::StdPrismExp::v_DetFaceBasisKey(), Nektar::StdRegions::StdHexExp::v_DetFaceBasisKey(), Nektar::StdRegions::StdTetExp::v_DetFaceBasisKey(), Nektar::StdRegions::StdPyrExp::v_DetFaceBasisKey(), Nektar::LocalRegions::TetExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::PrismExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::HexExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::TriExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::QuadExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::SegExp::v_ExtractDataToCoeffs(), Nektar::StdRegions::StdTriExp::v_FillMode(), Nektar::StdRegions::StdQuadExp::v_FillMode(), Nektar::StdRegions::StdSegExp::v_FillMode(), Nektar::StdRegions::StdHexExp::v_FillMode(), Nektar::StdRegions::StdPointExp::v_FwdTrans(), Nektar::LocalRegions::TetExp::v_FwdTrans(), Nektar::LocalRegions::PrismExp::v_FwdTrans(), Nektar::LocalRegions::PyrExp::v_FwdTrans(), Nektar::LocalRegions::SegExp::v_FwdTrans(), Nektar::LocalRegions::QuadExp::v_FwdTrans(), Nektar::LocalRegions::HexExp::v_FwdTrans(), Nektar::StdRegions::StdSegExp::v_FwdTrans(), Nektar::StdRegions::StdHexExp::v_FwdTrans(), Nektar::StdRegions::StdQuadExp::v_FwdTrans(), Nektar::StdRegions::StdPointExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdQuadExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::TriExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::SegExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::QuadExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdTriExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdSegExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdSegExp::v_GenMatrix(), Nektar::StdRegions::StdQuadExp::v_GenMatrix(), Nektar::StdRegions::StdTriExp::v_GenMatrix(), Nektar::StdRegions::StdPrismExp::v_GenMatrix(), Nektar::StdRegions::StdTetExp::v_GenMatrix(), Nektar::LocalRegions::TriExp::v_GetBasis(), Nektar::LocalRegions::QuadExp::v_GetBasis(), Nektar::StdRegions::StdSegExp::v_GetBoundaryMap(), Nektar::StdRegions::StdQuadExp::v_GetBoundaryMap(), Nektar::StdRegions::StdTriExp::v_GetBoundaryMap(), Nektar::StdRegions::StdPrismExp::v_GetBoundaryMap(), Nektar::StdRegions::StdTetExp::v_GetBoundaryMap(), Nektar::StdRegions::StdHexExp::v_GetBoundaryMap(), Nektar::StdRegions::StdPointExp::v_GetCoords(), Nektar::LocalRegions::Expansion::v_GetCoords(), Nektar::StdRegions::StdPrismExp::v_GetCoords(), Nektar::StdRegions::StdTetExp::v_GetCoords(), Nektar::StdRegions::StdSegExp::v_GetCoords(), Nektar::StdRegions::StdTriExp::v_GetCoords(), Nektar::StdRegions::StdQuadExp::v_GetCoords(), Nektar::StdRegions::StdPyrExp::v_GetCoords(), Nektar::StdRegions::StdHexExp::v_GetCoords(), Nektar::StdRegions::StdQuadExp::v_GetEdgeInteriorMap(), Nektar::StdRegions::StdTriExp::v_GetEdgeInteriorMap(), Nektar::StdRegions::StdPrismExp::v_GetEdgeInteriorMap(), Nektar::StdRegions::StdTetExp::v_GetEdgeInteriorMap(), Nektar::StdRegions::StdHexExp::v_GetEdgeInteriorMap(), Nektar::StdRegions::StdPyrExp::v_GetEdgeInteriorMap(), Nektar::LocalRegions::QuadExp::v_GetEdgeInterpVals(), Nektar::StdRegions::StdTetExp::v_GetEdgeNcoeffs(), Nektar::LocalRegions::QuadExp::v_GetEdgePhysVals(), Nektar::LocalRegions::TriExp::v_GetEdgePhysVals(), Nektar::LocalRegions::QuadExp::v_GetEdgeQFactors(), Nektar::StdRegions::StdTriExp::v_GetEdgeToElementMap(), Nektar::StdRegions::StdQuadExp::v_GetEdgeToElementMap(), Nektar::StdRegions::StdPrismExp::v_GetFaceInteriorMap(), Nektar::StdRegions::StdTetExp::v_GetFaceInteriorMap(), Nektar::StdRegions::StdHexExp::v_GetFaceInteriorMap(), Nektar::StdRegions::StdPyrExp::v_GetFaceInteriorMap(), Nektar::StdRegions::StdTetExp::v_GetFaceIntNcoeffs(), Nektar::StdRegions::StdPyrExp::v_GetFaceIntNcoeffs(), Nektar::StdRegions::StdPrismExp::v_GetFaceNumPoints(), Nektar::StdRegions::StdHexExp::v_GetFaceNumPoints(), Nektar::StdRegions::StdTetExp::v_GetFaceNumPoints(), Nektar::StdRegions::StdPyrExp::v_GetFaceNumPoints(), Nektar::LocalRegions::PyrExp::v_GetFacePhysVals(), Nektar::LocalRegions::TetExp::v_GetFacePhysVals(), Nektar::LocalRegions::PrismExp::v_GetFacePhysVals(), Nektar::LocalRegions::HexExp::v_GetFacePhysVals(), Nektar::StdRegions::StdPrismExp::v_GetFacePointsKey(), Nektar::StdRegions::StdHexExp::v_GetFacePointsKey(), Nektar::StdRegions::StdTetExp::v_GetFacePointsKey(), Nektar::StdRegions::StdPrismExp::v_GetFaceToElementMap(), Nektar::StdRegions::StdHexExp::v_GetFaceToElementMap(), Nektar::StdRegions::StdTetExp::v_GetFaceToElementMap(), Nektar::StdRegions::StdPyrExp::v_GetFaceToElementMap(), Nektar::StdRegions::StdQuadExp::v_GetInteriorMap(), Nektar::StdRegions::StdTriExp::v_GetInteriorMap(), Nektar::StdRegions::StdPrismExp::v_GetInteriorMap(), Nektar::StdRegions::StdTetExp::v_GetInteriorMap(), Nektar::StdRegions::StdHexExp::v_GetInteriorMap(), Nektar::LocalRegions::PrismExp::v_GetSimplexEquiSpacedConnectivity(), Nektar::StdRegions::StdQuadExp::v_GetSimplexEquiSpacedConnectivity(), Nektar::StdRegions::StdTetExp::v_GetSimplexEquiSpacedConnectivity(), Nektar::StdRegions::StdTriExp::v_GetSimplexEquiSpacedConnectivity(), Nektar::StdRegions::StdTetExp::v_GetTotalEdgeIntNcoeffs(), Nektar::StdRegions::StdTetExp::v_GetTotalFaceIntNcoeffs(), Nektar::StdRegions::StdSegExp::v_GetVertexMap(), Nektar::StdRegions::StdQuadExp::v_GetVertexMap(), Nektar::StdRegions::StdTriExp::v_GetVertexMap(), Nektar::StdRegions::StdHexExp::v_GetVertexMap(), Nektar::LocalRegions::SegExp::v_GetVertexPhysVals(), Nektar::StdRegions::StdSegExp::v_HelmholtzMatrixOp(), Nektar::LocalRegions::SegExp::v_HelmholtzMatrixOp(), Nektar::StdRegions::StdExpansion2D::v_HelmholtzMatrixOp_MatFree(), Nektar::StdRegions::StdExpansion3D::v_HelmholtzMatrixOp_MatFree(), Nektar::StdRegions::StdTriExp::v_Integral(), Nektar::StdRegions::StdQuadExp::v_Integral(), Nektar::LocalRegions::TetExp::v_Integral(), Nektar::LocalRegions::SegExp::v_Integral(), Nektar::LocalRegions::PrismExp::v_Integral(), Nektar::LocalRegions::PyrExp::v_Integral(), Nektar::LocalRegions::TriExp::v_Integral(), Nektar::LocalRegions::QuadExp::v_Integral(), Nektar::StdRegions::StdSegExp::v_Integral(), Nektar::LocalRegions::HexExp::v_Integral(), Nektar::StdRegions::StdPointExp::v_IProductWRTBase(), Nektar::LocalRegions::PyrExp::v_IProductWRTBase(), Nektar::LocalRegions::SegExp::v_IProductWRTBase(), Nektar::LocalRegions::QuadExp::v_IProductWRTBase(), Nektar::StdRegions::StdQuadExp::v_IProductWRTBase(), Nektar::StdRegions::StdHexExp::v_IProductWRTBase(), Nektar::StdRegions::StdPrismExp::v_IProductWRTBase(), Nektar::StdRegions::StdTetExp::v_IProductWRTBase(), Nektar::StdRegions::StdSegExp::v_IProductWRTBase(), Nektar::StdRegions::StdPyrExp::v_IProductWRTBase(), Nektar::LocalRegions::TetExp::v_IProductWRTBase_SumFac(), Nektar::LocalRegions::PrismExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdPointExp::v_IProductWRTBase_SumFac(), Nektar::LocalRegions::TriExp::v_IProductWRTBase_SumFac(), Nektar::LocalRegions::HexExp::v_IProductWRTBase_SumFac(), Nektar::LocalRegions::QuadExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdQuadExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdTriExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdPrismExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdHexExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdTetExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdSegExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdPyrExp::v_IProductWRTBase_SumFac(), Nektar::StdRegions::StdTriExp::v_IProductWRTBase_SumFacKernel(), Nektar::StdRegions::StdQuadExp::v_IProductWRTBase_SumFacKernel(), Nektar::StdRegions::StdPrismExp::v_IProductWRTBase_SumFacKernel(), Nektar::StdRegions::StdHexExp::v_IProductWRTBase_SumFacKernel(), Nektar::StdRegions::StdTetExp::v_IProductWRTBase_SumFacKernel(), Nektar::StdRegions::StdPyrExp::v_IProductWRTBase_SumFacKernel(), Nektar::LocalRegions::TetExp::v_IProductWRTDerivBase(), Nektar::StdRegions::StdPointExp::v_IProductWRTDerivBase(), Nektar::LocalRegions::SegExp::v_IProductWRTDerivBase(), Nektar::StdRegions::StdSegExp::v_IProductWRTDerivBase(), Nektar::LocalRegions::PrismExp::v_IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::TriExp::v_IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::QuadExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdQuadExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdTriExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdPrismExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdHexExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdTetExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdPyrExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdQuadExp::v_IsBoundaryInteriorExpansion(), Nektar::StdRegions::StdTriExp::v_IsBoundaryInteriorExpansion(), Nektar::StdRegions::StdPrismExp::v_IsBoundaryInteriorExpansion(), Nektar::StdRegions::StdSegExp::v_IsBoundaryInteriorExpansion(), Nektar::StdRegions::StdHexExp::v_IsBoundaryInteriorExpansion(), Nektar::StdRegions::StdTetExp::v_IsBoundaryInteriorExpansion(), Nektar::StdRegions::StdSegExp::v_LaplacianMatrixOp(), Nektar::LocalRegions::SegExp::v_LaplacianMatrixOp(), Nektar::StdRegions::StdExpansion2D::v_LaplacianMatrixOp_MatFree(), Nektar::StdRegions::StdExpansion3D::v_LaplacianMatrixOp_MatFree(), Nektar::LocalRegions::PyrExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::LocalRegions::PrismExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::LocalRegions::TetExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::LocalRegions::TriExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::LocalRegions::QuadExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::LocalRegions::HexExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::StdRegions::StdPyrExp::v_MultiplyByStdQuadratureMetric(), Nektar::StdRegions::StdPrismExp::v_MultiplyByStdQuadratureMetric(), Nektar::StdRegions::StdTetExp::v_MultiplyByStdQuadratureMetric(), Nektar::StdRegions::StdQuadExp::v_MultiplyByStdQuadratureMetric(), Nektar::StdRegions::StdTriExp::v_MultiplyByStdQuadratureMetric(), Nektar::StdRegions::StdHexExp::v_MultiplyByStdQuadratureMetric(), Nektar::LocalRegions::SegExp::v_NormVectorIProductWRTBase(), Nektar::LocalRegions::TriExp::v_NormVectorIProductWRTBase(), Nektar::LocalRegions::QuadExp::v_NormVectorIProductWRTBase(), Nektar::StdRegions::StdPrismExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdHexExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdTetExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdPyrExp::v_NumBndryCoeffs(), Nektar::StdRegions::StdPrismExp::v_NumDGBndryCoeffs(), Nektar::StdRegions::StdHexExp::v_NumDGBndryCoeffs(), Nektar::StdRegions::StdTetExp::v_NumDGBndryCoeffs(), Nektar::StdRegions::StdTriExp::v_PhysDeriv(), Nektar::StdRegions::StdPrismExp::v_PhysDeriv(), Nektar::LocalRegions::SegExp::v_PhysDeriv(), Nektar::LocalRegions::TetExp::v_PhysDeriv(), Nektar::LocalRegions::PyrExp::v_PhysDeriv(), Nektar::LocalRegions::TriExp::v_PhysDeriv(), Nektar::LocalRegions::QuadExp::v_PhysDeriv(), Nektar::StdRegions::StdTetExp::v_PhysDeriv(), Nektar::LocalRegions::HexExp::v_PhysDeriv(), Nektar::StdRegions::StdPyrExp::v_PhysDeriv(), Nektar::LocalRegions::SegExp::v_PhysDeriv_n(), Nektar::LocalRegions::SegExp::v_PhysDeriv_s(), Nektar::LocalRegions::TriExp::v_PhysDirectionalDeriv(), Nektar::LocalRegions::QuadExp::v_PhysDirectionalDeriv(), Nektar::StdRegions::StdExpansion0D::v_PhysEvaluate(), Nektar::StdRegions::StdExpansion1D::v_PhysEvaluate(), Nektar::StdRegions::StdExpansion2D::v_PhysEvaluate(), Nektar::StdRegions::StdExpansion3D::v_PhysEvaluate(), Nektar::LocalRegions::HexExp::v_ReduceOrderCoeffs(), Nektar::StdRegions::StdTriExp::v_ReduceOrderCoeffs(), Nektar::StdRegions::StdPrismExp::v_ReduceOrderCoeffs(), Nektar::StdRegions::StdQuadExp::v_ReduceOrderCoeffs(), Nektar::StdRegions::StdTetExp::v_ReduceOrderCoeffs(), Nektar::LocalRegions::TriExp::v_ReduceOrderCoeffs(), Nektar::LocalRegions::QuadExp::v_ReduceOrderCoeffs(), Nektar::StdRegions::StdTriExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdPrismExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdQuadExp::v_SVVLaplacianFilter(), Nektar::StdRegions::StdTetExp::v_SVVLaplacianFilter(), and Nektar::StdRegions::StdHexExp::v_SVVLaplacianFilter().

int Nektar::StdRegions::StdExpansion::m_elmt_id
protected

Definition at line 1328 of file StdExpansion.h.

Referenced by GetElmtId(), SetElmtId(), and v_GetElmtId().

LibUtilities::NekManager<IndexMapKey, IndexMapValues, IndexMapKey::opLess> Nektar::StdRegions::StdExpansion::m_IndexMapManager
protected

Definition at line 1332 of file StdExpansion.h.

Referenced by GetIndexMap().

int Nektar::StdRegions::StdExpansion::m_ncoeffs
protected

Total number of coefficients used in the expansion

Definition at line 1329 of file StdExpansion.h.

Referenced by BwdTrans_MatOp(), CreateGeneralMatrix(), Nektar::LocalRegions::PyrExp::CreateStaticCondMatrix(), Nektar::LocalRegions::NodalTriExp::CreateStaticCondMatrix(), Nektar::LocalRegions::TetExp::CreateStaticCondMatrix(), Nektar::LocalRegions::PrismExp::CreateStaticCondMatrix(), Nektar::LocalRegions::TriExp::CreateStaticCondMatrix(), Nektar::LocalRegions::QuadExp::CreateStaticCondMatrix(), Nektar::LocalRegions::SegExp::CreateStaticCondMatrix(), Nektar::LocalRegions::HexExp::CreateStaticCondMatrix(), CreateStdStaticCondMatrix(), Nektar::LocalRegions::NodalTriExp::FwdTrans(), Nektar::LocalRegions::NodalTriExp::GeneralMatrixOp_MatOp(), Nektar::LocalRegions::TetExp::GeneralMatrixOp_MatOp(), Nektar::StdRegions::StdNodalPrismExp::GenNBasisTransMatrix(), Nektar::StdRegions::StdNodalTetExp::GenNBasisTransMatrix(), Nektar::StdRegions::StdNodalTriExp::GenNBasisTransMatrix(), GetNcoeffs(), HelmholtzMatrixOp_MatFree_GenericImpl(), Nektar::LocalRegions::NodalTriExp::IProductWRTBase_MatOp(), Nektar::LocalRegions::HexExp::IProductWRTDerivBase_MatOp(), Nektar::LocalRegions::NodalTriExp::IProductWRTDerivBase_MatOp(), Nektar::LocalRegions::HexExp::IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::NodalTriExp::IProductWRTDerivBase_SumFac(), LaplacianMatrixOp_MatFree_GenericImpl(), LinearAdvectionDiffusionReactionMatrixOp_MatFree(), Nektar::StdRegions::StdNodalTetExp::ModalToNodal(), Nektar::StdRegions::StdNodalPrismExp::ModalToNodal(), Nektar::StdRegions::StdNodalTriExp::ModalToNodal(), Nektar::LocalRegions::SegExp::MultiplyByElmtInvMass(), Nektar::StdRegions::StdNodalTetExp::NodalToModal(), Nektar::StdRegions::StdNodalPrismExp::NodalToModal(), Nektar::StdRegions::StdNodalTriExp::NodalToModal(), Nektar::StdRegions::StdNodalTetExp::NodalToModalTranspose(), Nektar::StdRegions::StdNodalPrismExp::NodalToModalTranspose(), Nektar::StdRegions::StdNodalTriExp::NodalToModalTranspose(), Nektar::LocalRegions::PointExp::PointExp(), Nektar::LocalRegions::SegExp::ReverseCoeffsAndSign(), Nektar::StdRegions::StdPyrExp::StdPyrExp(), Nektar::StdRegions::StdPointExp::v_BwdTrans(), Nektar::StdRegions::StdSegExp::v_BwdTrans(), Nektar::StdRegions::StdNodalPrismExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdNodalTetExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdNodalTriExp::v_BwdTrans_SumFac(), Nektar::StdRegions::StdHexExp::v_BwdTrans_SumFacKernel(), Nektar::StdRegions::StdQuadExp::v_BwdTrans_SumFacKernel(), Nektar::LocalRegions::TetExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::PrismExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::HexExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::TriExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::QuadExp::v_ExtractDataToCoeffs(), Nektar::LocalRegions::SegExp::v_ExtractDataToCoeffs(), Nektar::StdRegions::StdNodalPrismExp::v_FillMode(), Nektar::StdRegions::StdNodalTetExp::v_FillMode(), Nektar::StdRegions::StdNodalTriExp::v_FillMode(), Nektar::StdRegions::StdTriExp::v_FillMode(), Nektar::StdRegions::StdQuadExp::v_FillMode(), Nektar::StdRegions::StdPrismExp::v_FillMode(), Nektar::StdRegions::StdHexExp::v_FillMode(), Nektar::StdRegions::StdSegExp::v_FillMode(), Nektar::StdRegions::StdTetExp::v_FillMode(), Nektar::StdRegions::StdPyrExp::v_FillMode(), Nektar::StdRegions::StdPointExp::v_FwdTrans(), Nektar::LocalRegions::TetExp::v_FwdTrans(), Nektar::LocalRegions::PrismExp::v_FwdTrans(), Nektar::LocalRegions::PyrExp::v_FwdTrans(), Nektar::StdRegions::StdNodalPrismExp::v_FwdTrans(), Nektar::StdRegions::StdNodalTetExp::v_FwdTrans(), Nektar::StdRegions::StdNodalTriExp::v_FwdTrans(), Nektar::LocalRegions::SegExp::v_FwdTrans(), Nektar::LocalRegions::TriExp::v_FwdTrans(), Nektar::LocalRegions::QuadExp::v_FwdTrans(), Nektar::LocalRegions::HexExp::v_FwdTrans(), Nektar::StdRegions::StdTriExp::v_FwdTrans(), Nektar::StdRegions::StdSegExp::v_FwdTrans(), Nektar::StdRegions::StdHexExp::v_FwdTrans(), Nektar::StdRegions::StdPrismExp::v_FwdTrans(), Nektar::StdRegions::StdQuadExp::v_FwdTrans(), Nektar::StdRegions::StdTetExp::v_FwdTrans(), Nektar::StdRegions::StdPyrExp::v_FwdTrans(), Nektar::StdRegions::StdPointExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdQuadExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::TriExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::SegExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::QuadExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdTriExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdSegExp::v_FwdTrans_BndConstrained(), Nektar::LocalRegions::PrismExp::v_GeneralMatrixOp_MatOp(), Nektar::LocalRegions::HexExp::v_GeneralMatrixOp_MatOp(), Nektar::StdRegions::StdQuadExp::v_GeneralMatrixOp_MatOp(), Nektar::LocalRegions::TriExp::v_GeneralMatrixOp_MatOp(), Nektar::StdRegions::StdTriExp::v_GeneralMatrixOp_MatOp(), Nektar::LocalRegions::QuadExp::v_GeneralMatrixOp_MatOp(), Nektar::StdRegions::StdHexExp::v_GeneralMatrixOp_MatOp(), Nektar::LocalRegions::Expansion3D::v_GenMatrix(), Nektar::StdRegions::StdPointExp::v_GenMatrix(), Nektar::LocalRegions::Expansion2D::v_GenMatrix(), Nektar::StdRegions::StdSegExp::v_GenMatrix(), Nektar::StdRegions::StdQuadExp::v_GenMatrix(), Nektar::StdRegions::StdNodalPrismExp::v_GetInteriorMap(), Nektar::StdRegions::StdNodalTetExp::v_GetInteriorMap(), Nektar::StdRegions::StdPrismExp::v_GetInteriorMap(), Nektar::StdRegions::StdTetExp::v_GetInteriorMap(), Nektar::StdRegions::StdHexExp::v_GetInteriorMap(), Nektar::StdRegions::StdPyrExp::v_GetInteriorMap(), Nektar::LocalRegions::SegExp::v_GetNcoeffs(), Nektar::StdRegions::StdSegExp::v_HelmholtzMatrixOp(), Nektar::LocalRegions::SegExp::v_HelmholtzMatrixOp(), Nektar::StdRegions::StdExpansion2D::v_HelmholtzMatrixOp_MatFree(), Nektar::StdRegions::StdExpansion3D::v_HelmholtzMatrixOp_MatFree(), Nektar::StdRegions::StdPointExp::v_IProductWRTBase(), Nektar::StdRegions::StdSegExp::v_IProductWRTBase(), Nektar::LocalRegions::TriExp::v_IProductWRTBase_MatOp(), Nektar::LocalRegions::QuadExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdTriExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdHexExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdPrismExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdQuadExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdTetExp::v_IProductWRTBase_MatOp(), Nektar::StdRegions::StdQuadExp::v_IProductWRTBase_SumFacKernel(), Nektar::StdRegions::StdHexExp::v_IProductWRTBase_SumFacKernel(), Nektar::LocalRegions::TetExp::v_IProductWRTDerivBase(), Nektar::LocalRegions::TriExp::v_IProductWRTDerivBase_MatOp(), Nektar::LocalRegions::QuadExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdTriExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdPrismExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdQuadExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdHexExp::v_IProductWRTDerivBase_MatOp(), Nektar::StdRegions::StdTetExp::v_IProductWRTDerivBase_MatOp(), Nektar::LocalRegions::PrismExp::v_IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::TriExp::v_IProductWRTDerivBase_SumFac(), Nektar::LocalRegions::QuadExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdTriExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdPrismExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdTetExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdPyrExp::v_IProductWRTDerivBase_SumFac(), Nektar::StdRegions::StdExpansion2D::v_LaplacianMatrixOp_MatFree(), Nektar::LocalRegions::PyrExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::LocalRegions::PrismExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::LocalRegions::TetExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::LocalRegions::TriExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::LocalRegions::QuadExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::LocalRegions::HexExp::v_LaplacianMatrixOp_MatFree_Kernel(), Nektar::StdRegions::StdPrismExp::v_ReduceOrderCoeffs(), and Nektar::StdRegions::StdTetExp::v_ReduceOrderCoeffs().

LibUtilities::NekManager<StdMatrixKey, DNekMat, StdMatrixKey::opLess> Nektar::StdRegions::StdExpansion::m_stdMatrixManager
protected

Definition at line 1330 of file StdExpansion.h.

Referenced by GetStdMatrix(), Nektar::LocalRegions::Expansion2D::v_AddEdgeNormBoundaryInt(), Nektar::StdRegions::StdQuadExp::v_GeneralMatrixOp_MatOp(), Nektar::StdRegions::StdTriExp::v_GeneralMatrixOp_MatOp(), and Nektar::StdRegions::StdHexExp::v_GeneralMatrixOp_MatOp().

LibUtilities::NekManager<StdMatrixKey, DNekBlkMat, StdMatrixKey::opLess> Nektar::StdRegions::StdExpansion::m_stdStaticCondMatrixManager
protected

Definition at line 1331 of file StdExpansion.h.

Referenced by GetStdStaticCondMatrix(), Nektar::StdRegions::StdPointExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdQuadExp::v_FwdTrans_BndConstrained(), Nektar::StdRegions::StdTriExp::v_FwdTrans_BndConstrained(), and Nektar::StdRegions::StdSegExp::v_FwdTrans_BndConstrained().