|
Nektar++
|
#include <StdPyrExp.h>
Public Member Functions | |
| StdPyrExp () | |
| StdPyrExp (const LibUtilities::BasisKey &Ba, const LibUtilities::BasisKey &Bb, const LibUtilities::BasisKey &Bc) | |
| StdPyrExp (const LibUtilities::BasisKey &Ba, const LibUtilities::BasisKey &Bb, const LibUtilities::BasisKey &Bc, NekDouble *coeffs, NekDouble *phys) | |
| StdPyrExp (const StdPyrExp &T) | |
| ~StdPyrExp () | |
Public Member Functions inherited from Nektar::StdRegions::StdExpansion3D | |
| StdExpansion3D () | |
| StdExpansion3D (int numcoeffs, const LibUtilities::BasisKey &Ba, const LibUtilities::BasisKey &Bb, const LibUtilities::BasisKey &Bc) | |
| StdExpansion3D (const StdExpansion3D &T) | |
| virtual | ~StdExpansion3D () |
| void | PhysTensorDeriv (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray_d1, Array< OneD, NekDouble > &outarray_d2, Array< OneD, NekDouble > &outarray_d3) |
| Calculate the 3D derivative in the local tensor/collapsed coordinate at the physical points. More... | |
| void | BwdTrans_SumFacKernel (const Array< OneD, const NekDouble > &base0, const Array< OneD, const NekDouble > &base1, const Array< OneD, const NekDouble > &base2, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, Array< OneD, NekDouble > &wsp, bool doCheckCollDir0, bool doCheckCollDir1, bool doCheckCollDir2) |
| void | IProductWRTBase_SumFacKernel (const Array< OneD, const NekDouble > &base0, const Array< OneD, const NekDouble > &base1, const Array< OneD, const NekDouble > &base2, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, Array< OneD, NekDouble > &wsp, bool doCheckCollDir0, bool doCheckCollDir1, bool doCheckCollDir2) |
Public Member Functions inherited from Nektar::StdRegions::StdExpansion | |
| StdExpansion () | |
| Default Constructor. More... | |
| 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. More... | |
| StdExpansion (const StdExpansion &T) | |
| Copy Constructor. More... | |
| virtual | ~StdExpansion () |
| Destructor. More... | |
| int | GetNumBases () const |
| This function returns the number of 1D bases used in the expansion. More... | |
| const Array< OneD, const LibUtilities::BasisSharedPtr > & | GetBase () const |
| This function gets the shared point to basis. More... | |
| const LibUtilities::BasisSharedPtr & | GetBasis (int dir) const |
| This function gets the shared point to basis in the dir direction. More... | |
| int | GetNcoeffs (void) const |
| This function returns the total number of coefficients used in the expansion. More... | |
| int | GetTotPoints () const |
| This function returns the total number of quadrature points used in the element. More... | |
| LibUtilities::BasisType | GetBasisType (const int dir) const |
| This function returns the type of basis used in the dir direction. More... | |
| int | GetBasisNumModes (const int dir) const |
| This function returns the number of expansion modes in the dir direction. More... | |
| int | EvalBasisNumModesMax (void) const |
| This function returns the maximum number of expansion modes over all local directions. More... | |
| LibUtilities::PointsType | GetPointsType (const int dir) const |
| This function returns the type of quadrature points used in the dir direction. More... | |
| int | GetNumPoints (const int dir) const |
| This function returns the number of quadrature points in the dir direction. More... | |
| 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. More... | |
| int | GetNverts () const |
| This function returns the number of vertices of the expansion domain. More... | |
| int | GetNedges () const |
| This function returns the number of edges of the expansion domain. More... | |
| int | GetEdgeNcoeffs (const int i) const |
| This function returns the number of expansion coefficients belonging to the i-th edge. More... | |
| int | GetTotalEdgeIntNcoeffs () const |
| int | GetEdgeNumPoints (const int i) const |
| This function returns the number of quadrature points belonging to the i-th edge. More... | |
| 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. More... | |
| int | GetFaceNcoeffs (const int i) const |
| This function returns the number of expansion coefficients belonging to the i-th face. More... | |
| int | GetFaceIntNcoeffs (const int i) const |
| int | GetTotalFaceIntNcoeffs () const |
| int | GetTraceNcoeffs (const int i) const |
| This function returns the number of expansion coefficients belonging to the i-th edge/face. More... | |
| 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. More... | |
| const LibUtilities::PointsKey | GetNodalPointsKey () const |
| This function returns the type of expansion Nodal point type if defined. More... | |
| int | GetNfaces () const |
| This function returns the number of faces of the expansion domain. More... | |
| int | GetNtrace () const |
| Returns the number of trace elements connected to this element. More... | |
| LibUtilities::ShapeType | DetShapeType () const |
| This function returns the shape of the expansion domain. More... | |
| std::shared_ptr< StdExpansion > | GetStdExp (void) const |
| std::shared_ptr< StdExpansion > | GetLinStdExp (void) const |
| int | GetShapeDimension () const |
| bool | IsBoundaryInteriorExpansion () |
| bool | IsNodalNonTensorialExp () |
| void | BwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| This function performs the Backward transformation from coefficient space to physical space. More... | |
| void | FwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| This function performs the Forward transformation from physical space to coefficient space. More... | |
| 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. More... | |
| void | FillMode (const int mode, Array< OneD, NekDouble > &outarray) |
| This function fills the array outarray with the mode-th mode of the expansion. More... | |
| 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 More... | |
| 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) |
| void | IProductWRTDirectionalDerivBase (const Array< OneD, const NekDouble > &direction, 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. More... | |
| void | SetElmtId (const int id) |
| Set the element id of this expansion when used in a list by returning value of m_elmt_id. More... | |
| 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 More... | |
| 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 More... | |
| 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, Array< OneD, NekDouble > &outarray) |
| void | NormVectorIProductWRTBase (const Array< OneD, const NekDouble > &Fx, const Array< OneD, 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) |
| void | NormVectorIProductWRTBase (const Array< OneD, const Array< OneD, NekDouble > > &Fvec, 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) |
| 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) |
| 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 | GetFaceNumModes (const int fid, const Orientation faceOrient, int &numModes0, int &numModes1) |
| 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, int P=-1) |
| 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. More... | |
| void | GetEdgePhysVals (const int edge, const std::shared_ptr< StdExpansion > &EdgeExp, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| void | GetTracePhysVals (const int edge, const std::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). More... | |
| void | GetFacePhysVals (const int face, const std::shared_ptr< StdExpansion > &FaceExp, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, StdRegions::Orientation orient=eNoOrientation) |
| void | GetEdgePhysMap (const int edge, Array< OneD, int > &outarray) |
| void | GetFacePhysMap (const int face, Array< OneD, int > &outarray) |
| 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}\) More... | |
| 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 | ExponentialFilter (Array< OneD, NekDouble > &array, const NekDouble alpha, const NekDouble exponent, const NekDouble cutoff) |
| 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. More... | |
| 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. More... | |
| void | LocCoordToLocCollapsed (const Array< OneD, const NekDouble > &xi, Array< OneD, NekDouble > &eta) |
| Convert local cartesian coordinate xi into local collapsed coordinates eta. More... | |
| virtual int | v_GetElmtId () |
| Get the element id of this expansion when used in a list by returning value of m_elmt_id. More... | |
| 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 void | v_NormVectorIProductWRTBase (const Array< OneD, const NekDouble > &Fx, Array< OneD, NekDouble > &outarray) |
| 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 void | v_NormVectorIProductWRTBase (const Array< OneD, const Array< OneD, NekDouble > > &Fvec, 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) |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| const NormalVector & | GetEdgeNormal (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) |
| bool | FaceNormalNegated (const int face) |
| void | ComputeVertexNormal (const int vertex) |
| void | NegateVertexNormal (const int vertex) |
| bool | VertexNormalNegated (const int vertex) |
| const NormalVector & | GetFaceNormal (const int face) const |
| const NormalVector & | GetVertexNormal (const int vertex) const |
| const NormalVector & | GetSurfaceNormal (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, int P1=-1, int P2=-1) |
| void | GetInverseBoundaryMaps (Array< OneD, unsigned int > &vmap, Array< OneD, Array< OneD, unsigned int > > &emap, Array< OneD, Array< OneD, unsigned int > > &fmap) |
| DNekMatSharedPtr | BuildInverseTransformationMatrix (const DNekScalMatSharedPtr &m_transformationmatrix) |
| void | PhysInterpToSimplexEquiSpaced (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, int npset=-1) |
| 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. More... | |
| 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. More... | |
| void | EquiSpacedToCoeffs (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| This function performs a projection/interpolation from the equispaced points sometimes used in post-processing onto the coefficient space. More... | |
| template<class T > | |
| std::shared_ptr< T > | as () |
| void | IProductWRTBase_SumFac (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, bool multiplybyweights=true) |
Protected Member Functions | |
| virtual void | v_PhysDeriv (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d0, Array< OneD, NekDouble > &out_d1, Array< OneD, NekDouble > &out_d2) |
| Calculate the derivative of the physical points. More... | |
| virtual void | v_PhysDeriv (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| Calculate the derivative of the physical points in a given direction. More... | |
| virtual void | v_StdPhysDeriv (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d0, Array< OneD, NekDouble > &out_d1, Array< OneD, NekDouble > &out_d2) |
| virtual void | v_StdPhysDeriv (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| void | v_MultiplyByStdQuadratureMetric (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| virtual void | v_BwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| Backward transformation is evaluated at the quadrature points. More... | |
| virtual void | v_BwdTrans_SumFac (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| virtual void | v_BwdTrans_SumFacKernel (const Array< OneD, const NekDouble > &base0, const Array< OneD, const NekDouble > &base1, const Array< OneD, const NekDouble > &base2, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, Array< OneD, NekDouble > &wsp, bool doCheckCollDir0, bool doCheckCollDir1, bool doCheckCollDir2) |
| virtual void | v_FwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| Forward transform from physical quadrature space stored in inarray and evaluate the expansion coefficients and store in outarray. More... | |
| virtual void | v_IProductWRTBase (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| Inner product of inarray over region with respect to the expansion basis m_base[0]->GetBdata(),m_base[1]->GetBdata(), m_base[2]->GetBdata() and return in outarray. More... | |
| virtual void | v_IProductWRTBase_SumFac (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, bool multiplybyweights=true) |
| virtual void | v_IProductWRTBase_SumFacKernel (const Array< OneD, const NekDouble > &base0, const Array< OneD, const NekDouble > &base1, const Array< OneD, const NekDouble > &base2, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, Array< OneD, NekDouble > &wsp, bool doCheckCollDir0, bool doCheckCollDir1, bool doCheckCollDir2) |
| virtual void | v_IProductWRTDerivBase (const int dir, 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_LocCoordToLocCollapsed (const Array< OneD, const NekDouble > &xi, Array< OneD, NekDouble > &eta) |
| virtual void | v_GetCoords (Array< OneD, NekDouble > &xi_x, Array< OneD, NekDouble > &xi_y, Array< OneD, NekDouble > &xi_z) |
| virtual void | v_FillMode (const int mode, Array< OneD, NekDouble > &outarray) |
| virtual void | v_GetFaceNumModes (const int fid, const Orientation faceOrient, int &numModes0, int &numModes1) |
| virtual int | v_GetNverts () const |
| virtual int | v_GetNedges () const |
| virtual int | v_GetNfaces () const |
| virtual LibUtilities::ShapeType | v_DetShapeType () const |
| virtual int | v_NumBndryCoeffs () const |
| virtual int | v_NumDGBndryCoeffs () const |
| virtual int | v_GetEdgeNcoeffs (const int i) const |
| virtual int | v_GetFaceNcoeffs (const int i) const |
| virtual int | v_GetFaceIntNcoeffs (const int i) const |
| virtual int | v_GetFaceNumPoints (const int i) const |
| virtual int | v_CalcNumberOfCoefficients (const std::vector< unsigned int > &nummodes, int &modes_offset) |
| virtual const LibUtilities::BasisKey | v_DetFaceBasisKey (const int i, const int k) const |
| virtual LibUtilities::BasisType | v_GetEdgeBasisType (const int i) const |
| 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 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_GetInteriorMap (Array< OneD, unsigned int > &outarray) |
| virtual void | v_GetBoundaryMap (Array< OneD, unsigned int > &outarray) |
| virtual DNekMatSharedPtr | v_GenMatrix (const StdMatrixKey &mkey) |
| virtual DNekMatSharedPtr | v_CreateStdMatrix (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) |
Protected Member Functions inherited from Nektar::StdRegions::StdExpansion3D | |
| virtual NekDouble | v_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. More... | |
| virtual NekDouble | v_PhysEvaluate (const Array< OneD, DNekMatSharedPtr > &I, const Array< OneD, const NekDouble > &physvals) |
| virtual void | v_LaplacianMatrixOp_MatFree (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdRegions::StdMatrixKey &mkey) |
| virtual void | v_HelmholtzMatrixOp_MatFree (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdRegions::StdMatrixKey &mkey) |
| virtual NekDouble | v_Integral (const Array< OneD, const NekDouble > &inarray) |
| Integrates the specified function over the domain. More... | |
| virtual void | v_NegateFaceNormal (const int face) |
| virtual bool | v_FaceNormalNegated (const int face) |
| virtual int | v_GetTraceNcoeffs (const int i) const |
Protected Member Functions inherited from Nektar::StdRegions::StdExpansion | |
| DNekMatSharedPtr | CreateStdMatrix (const StdMatrixKey &mkey) |
| DNekBlkMatSharedPtr | CreateStdStaticCondMatrix (const StdMatrixKey &mkey) |
| Create the static condensation of a matrix when using a boundary interior decomposition. More... | |
| 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. More... | |
| 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 | IProductWRTDerivBase_SumFac (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| void | IProductWRTDirectionalDerivBase_SumFac (const Array< OneD, const NekDouble > &direction, 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) |
Private Member Functions | |
| int | GetMode (int I, int J, int K) |
| Compute the mode number in the expansion for a particular tensorial combination. More... | |
Additional Inherited Members | |
Protected Attributes inherited from Nektar::StdRegions::StdExpansion3D | |
| std::map< int, NormalVector > | m_faceNormals |
| std::map< int, bool > | m_negatedNormals |
Protected Attributes inherited from Nektar::StdRegions::StdExpansion | |
| 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 |
Definition at line 81 of file StdPyrExp.h.
| Nektar::StdRegions::StdPyrExp::StdPyrExp | ( | ) |
Definition at line 47 of file StdPyrExp.cpp.
| Nektar::StdRegions::StdPyrExp::StdPyrExp | ( | const LibUtilities::BasisKey & | Ba, |
| const LibUtilities::BasisKey & | Bb, | ||
| const LibUtilities::BasisKey & | Bc | ||
| ) |
Definition at line 51 of file StdPyrExp.cpp.
References ASSERTL0, ASSERTL1, Nektar::LibUtilities::eModifiedPyr_C, Nektar::LibUtilities::eOrthoPyr_C, Nektar::LibUtilities::BasisKey::GetBasisType(), and Nektar::LibUtilities::BasisKey::GetNumModes().
| Nektar::StdRegions::StdPyrExp::StdPyrExp | ( | const LibUtilities::BasisKey & | Ba, |
| const LibUtilities::BasisKey & | Bb, | ||
| const LibUtilities::BasisKey & | Bc, | ||
| NekDouble * | coeffs, | ||
| NekDouble * | phys | ||
| ) |
| Nektar::StdRegions::StdPyrExp::StdPyrExp | ( | const StdPyrExp & | T | ) |
Definition at line 76 of file StdPyrExp.cpp.
| Nektar::StdRegions::StdPyrExp::~StdPyrExp | ( | ) |
Definition at line 84 of file StdPyrExp.cpp.
|
private |
Compute the mode number in the expansion for a particular tensorial combination.
Modes are numbered with the r index travelling fastest, followed by q and then p, and each q-r plane is of size
(R+1-p)*(Q+1) - l(l+1)/2 where l = max(0,Q-p)
For example, when P=2, Q=3 and R=4 the indexing inside each q-r plane (with r increasing upwards and q to the right) is:
4 3 8 17 21 2 7 11 16 20 24 29 32 35 1 6 10 13 15 19 23 26 28 31 34 37 0 5 9 12 14 18 22 25 27 30 33 36
Note that in this element, we must have that \( P,Q \leq R\).
Definition at line 1850 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::m_base.
Referenced by v_GetBoundaryMap(), v_GetEdgeInteriorMap(), v_GetFaceInteriorMap(), v_GetFaceToElementMap(), v_GetInteriorMap(), and v_GetVertexMap().
|
protectedvirtual |
Backward transformation is evaluated at the quadrature points.
\( u^{\delta} (\xi_{1i}, \xi_{2j}, \xi_{3k}) = \sum_{m(pqr)} \hat u_{pqr} \phi_{pqr} (\xi_{1i}, \xi_{2j}, \xi_{3k})\)
Backward transformation is three dimensional tensorial expansion
\( u (\xi_{1i}, \xi_{2j}, \xi_{3k}) = \sum_{p=0}^{Q_x} \psi_p^a (\xi_{1i}) \lbrace { \sum_{q=0}^{Q_y} \psi_{q}^a (\xi_{2j}) \lbrace { \sum_{r=0}^{Q_z} \hat u_{pqr} \psi_{pqr}^c (\xi_{3k}) \rbrace} \rbrace}. \)
And sumfactorizing step of the form is as:\ \ \( f_{pqr} (\xi_{3k}) = \sum_{r=0}^{Q_z} \hat u_{pqr} \psi_{pqr}^c (\xi_{3k}),\\ g_{p} (\xi_{2j}, \xi_{3k}) = \sum_{r=0}^{Q_y} \psi_{p}^a (\xi_{2j}) f_{pqr} (\xi_{3k}),\\ u(\xi_{1i}, \xi_{2j}, \xi_{3k}) = \sum_{p=0}^{Q_x} \psi_{p}^a (\xi_{1i}) g_{p} (\xi_{2j}, \xi_{3k}). \)
Implements Nektar::StdRegions::StdExpansion.
Definition at line 252 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::GetNumPoints(), Nektar::StdRegions::StdExpansion::m_base, v_BwdTrans_SumFac(), and Vmath::Vcopy().
Referenced by v_FillMode().
|
protectedvirtual |
Sum-factorisation implementation of the BwdTrans operation.
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 273 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::m_base, and v_BwdTrans_SumFacKernel().
Referenced by v_BwdTrans().
|
protectedvirtual |
Implements Nektar::StdRegions::StdExpansion3D.
Definition at line 293 of file StdPyrExp.cpp.
References Blas::Daxpy(), Blas::Dgemm(), Blas::Dgemv(), Nektar::LibUtilities::eModified_A, Nektar::StdRegions::StdExpansion::GetBasisType(), and Nektar::StdRegions::StdExpansion::m_base.
Referenced by v_BwdTrans_SumFac().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 1003 of file StdPyrExp.cpp.
References Nektar::LibUtilities::StdPyrData::getNumberOfCoefficients().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Reimplemented in Nektar::LocalRegions::PyrExp.
Definition at line 1820 of file StdPyrExp.cpp.
References v_GenMatrix().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 965 of file StdPyrExp.cpp.
References ASSERTL2, Nektar::StdRegions::EvaluateQuadFaceBasisKey(), Nektar::StdRegions::EvaluateTriFaceBasisKey(), Nektar::StdRegions::StdExpansion::GetBasisType(), Nektar::StdRegions::StdExpansion::GetNumPoints(), Nektar::StdRegions::StdExpansion::m_base, and Nektar::LibUtilities::NullBasisKey().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 837 of file StdPyrExp.cpp.
References Nektar::LibUtilities::ePyramid.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 771 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::m_ncoeffs, and v_BwdTrans().
|
protectedvirtual |
Forward transform from physical quadrature space stored in inarray and evaluate the expansion coefficients and store in outarray.
Inputs:
Outputs:
Implements Nektar::StdRegions::StdExpansion.
Reimplemented in Nektar::LocalRegions::PyrExp.
Definition at line 394 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::DetShapeType(), Nektar::StdRegions::eInvMass, Nektar::eWrapper, Nektar::StdRegions::StdExpansion::GetStdMatrix(), Nektar::StdRegions::StdExpansion::m_ncoeffs, and v_IProductWRTBase().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Reimplemented in Nektar::LocalRegions::PyrExp.
Definition at line 1815 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::CreateGeneralMatrix().
Referenced by v_CreateStdMatrix().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 1750 of file StdPyrExp.cpp.
References ASSERTL1, Nektar::LibUtilities::eGLL_Lagrange, Nektar::LibUtilities::eModified_A, Nektar::LibUtilities::eModifiedPyr_C, Nektar::StdRegions::StdExpansion::GetBasisType(), GetMode(), Nektar::StdRegions::StdExpansion::m_base, Nektar::StdRegions::StdExpansion::NumBndryCoeffs(), class_topology::P, and CellMLToNektar.cellml_metadata::p.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Reimplemented in Nektar::LocalRegions::PyrExp.
Definition at line 743 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::GetNumPoints(), and Nektar::StdRegions::StdExpansion::m_base.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 1016 of file StdPyrExp.cpp.
References ASSERTL2, and Nektar::StdRegions::StdExpansion::GetBasisType().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 1431 of file StdPyrExp.cpp.
References ASSERTL0, Nektar::StdRegions::eBackwards, GetMode(), Nektar::StdRegions::StdExpansion::m_base, class_topology::P, and v_GetEdgeNcoeffs().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 883 of file StdPyrExp.cpp.
References ASSERTL2, and Nektar::StdRegions::StdExpansion::GetBasisNumModes().
Referenced by v_GetEdgeInteriorMap().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 1530 of file StdPyrExp.cpp.
References ASSERTL0, GetMode(), Nektar::StdRegions::StdExpansion::m_base, class_topology::P, CellMLToNektar.cellml_metadata::p, and v_GetFaceIntNcoeffs().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 921 of file StdPyrExp.cpp.
References ASSERTL2, Nektar::StdRegions::StdExpansion::m_base, and class_topology::P.
Referenced by v_GetFaceInteriorMap().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 901 of file StdPyrExp.cpp.
References ASSERTL2, Nektar::StdRegions::StdExpansion::GetBasisNumModes(), and class_topology::P.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 778 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::m_base.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 943 of file StdPyrExp.cpp.
References ASSERTL2, and Nektar::StdRegions::StdExpansion::m_base.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 1038 of file StdPyrExp.cpp.
References ASSERTL0, ASSERTL1, Nektar::LibUtilities::eModified_A, Nektar::LibUtilities::eModifiedPyr_C, Nektar::StdRegions::StdExpansion::GetEdgeBasisType(), Nektar::StdRegions::StdExpansion::GetFaceNcoeffs(), GetMode(), Nektar::StdRegions::StdExpansion::m_base, class_topology::P, and CellMLToNektar.cellml_metadata::p.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 1710 of file StdPyrExp.cpp.
References ASSERTL1, Nektar::LibUtilities::eGLL_Lagrange, Nektar::LibUtilities::eModified_A, Nektar::LibUtilities::eModifiedPyr_C, Nektar::StdRegions::StdExpansion::GetBasisType(), GetMode(), Nektar::StdRegions::StdExpansion::m_base, Nektar::StdRegions::StdExpansion::m_ncoeffs, Nektar::StdRegions::StdExpansion::NumBndryCoeffs(), class_topology::P, and CellMLToNektar.cellml_metadata::p.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 827 of file StdPyrExp.cpp.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 832 of file StdPyrExp.cpp.
|
protectedvirtual |
Implements Nektar::StdRegions::StdExpansion.
Definition at line 822 of file StdPyrExp.cpp.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 1370 of file StdPyrExp.cpp.
References ASSERTL0, Nektar::LibUtilities::eModified_A, Nektar::LibUtilities::eModifiedPyr_C, Nektar::StdRegions::StdExpansion::GetEdgeBasisType(), and GetMode().
|
protectedvirtual |
Inner product of inarray over region with respect to the expansion basis m_base[0]->GetBdata(),m_base[1]->GetBdata(), m_base[2]->GetBdata() and return in outarray.
Wrapper call to StdPyrExp::IProductWRTBase
Input:
Output:
Implements Nektar::StdRegions::StdExpansion.
Reimplemented in Nektar::LocalRegions::PyrExp.
Definition at line 430 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::m_base, Nektar::StdRegions::StdExpansion::MultiplyByStdQuadratureMetric(), and v_IProductWRTBase_SumFac().
Referenced by v_FwdTrans().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Reimplemented in Nektar::LocalRegions::PyrExp.
Definition at line 446 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::m_base, v_IProductWRTBase_SumFacKernel(), and v_MultiplyByStdQuadratureMetric().
Referenced by v_IProductWRTBase().
|
protectedvirtual |
Implements Nektar::StdRegions::StdExpansion3D.
Definition at line 481 of file StdPyrExp.cpp.
References ASSERTL1, Blas::Ddot(), Blas::Dgemm(), Blas::Dgemv(), Nektar::LibUtilities::eModified_A, Nektar::StdRegions::StdExpansion::GetBasisType(), and Nektar::StdRegions::StdExpansion::m_base.
Referenced by v_IProductWRTBase_SumFac().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Reimplemented in Nektar::LocalRegions::PyrExp.
Definition at line 571 of file StdPyrExp.cpp.
References v_IProductWRTDerivBase_SumFac().
|
protectedvirtual |
| inarray | Function evaluated at physical collocation points. |
| outarray | Inner product with respect to each basis function over the element. |
Reimplemented from Nektar::StdRegions::StdExpansion.
Reimplemented in Nektar::LocalRegions::PyrExp.
Definition at line 585 of file StdPyrExp.cpp.
References ASSERTL1, Nektar::StdRegions::StdExpansion3D::IProductWRTBase_SumFacKernel(), Nektar::StdRegions::StdExpansion::m_base, Nektar::StdRegions::StdExpansion::m_ncoeffs, Nektar::StdRegions::StdExpansion::MultiplyByStdQuadratureMetric(), Vmath::Smul(), Vmath::Vadd(), and Vmath::Vmul().
Referenced by v_IProductWRTDerivBase().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 723 of file StdPyrExp.cpp.
References Nektar::NekConstants::kNekZeroTol.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 1879 of file StdPyrExp.cpp.
References Blas::Dscal(), Nektar::LibUtilities::eGaussRadauMAlpha2Beta0, Nektar::StdRegions::StdExpansion::GetPointsType(), Nektar::StdRegions::StdExpansion::m_base, and Vmath::Vmul().
Referenced by v_IProductWRTBase_SumFac().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 842 of file StdPyrExp.cpp.
References ASSERTL1, Nektar::LibUtilities::eGLL_Lagrange, Nektar::LibUtilities::eModified_A, Nektar::LibUtilities::eModifiedPyr_C, Nektar::StdRegions::StdExpansion::GetBasisType(), Nektar::LibUtilities::StdPyrData::getNumberOfBndCoefficients(), Nektar::StdRegions::StdExpansion::m_base, and class_topology::P.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 862 of file StdPyrExp.cpp.
References ASSERTL1, Nektar::LibUtilities::eGLL_Lagrange, Nektar::LibUtilities::eModified_A, Nektar::LibUtilities::eModifiedPyr_C, Nektar::StdRegions::StdExpansion::GetBasisType(), Nektar::StdRegions::StdExpansion::m_base, and class_topology::P.
|
protectedvirtual |
Calculate the derivative of the physical points.
The derivative is evaluated at the nodal physical points. Derivatives with respect to the local Cartesian coordinates.
\(\begin{Bmatrix} \frac {\partial} {\partial \xi_1} \\ \frac {\partial} {\partial \xi_2} \\ \frac {\partial} {\partial \xi_3} \end{Bmatrix} = \begin{Bmatrix} \frac 2 {(1-\eta_3)} \frac \partial {\partial \bar \eta_1} \\ \frac {\partial} {\partial \xi_2} \ \ \frac {(1 + \bar \eta_1)} {(1 - \eta_3)} \frac \partial {\partial \bar \eta_1} + \frac {\partial} {\partial \eta_3} \end{Bmatrix}\)
Reimplemented from Nektar::StdRegions::StdExpansion.
Reimplemented in Nektar::LocalRegions::PyrExp.
Definition at line 106 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::m_base, and Nektar::StdRegions::StdExpansion3D::PhysTensorDeriv().
Referenced by v_PhysDeriv(), and v_StdPhysDeriv().
|
protectedvirtual |
Calculate the derivative of the physical points in a given direction.
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 177 of file StdPyrExp.cpp.
References ASSERTL1, Nektar::NullNekDouble1DArray, and v_PhysDeriv().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 2072 of file StdPyrExp.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), Nektar::StdRegions::StdExpansion::BwdTrans(), Nektar::LibUtilities::eOrtho_A, Nektar::LibUtilities::eOrthoPyr_C, Nektar::StdRegions::StdExpansion::FwdTrans(), Nektar::StdRegions::StdExpansion::m_base, Nektar::StdRegions::StdExpansion::m_ncoeffs, and Vmath::Vcopy().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 212 of file StdPyrExp.cpp.
References v_PhysDeriv().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 220 of file StdPyrExp.cpp.
References v_PhysDeriv().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Reimplemented in Nektar::LocalRegions::PyrExp.
Definition at line 1937 of file StdPyrExp.cpp.
References Nektar::StdRegions::StdExpansion::BwdTrans(), Nektar::StdRegions::StdMatrixKey::ConstFactorExists(), Nektar::StdRegions::eFactorSVVCutoffRatio, Nektar::StdRegions::eFactorSVVDGKerDiffCoeff, Nektar::StdRegions::eFactorSVVDiffCoeff, Nektar::StdRegions::eFactorSVVPowerKerDiffCoeff, Nektar::LibUtilities::eOrtho_A, Nektar::LibUtilities::eOrthoPyr_C, Nektar::StdRegions::StdExpansion::FwdTrans(), Nektar::StdRegions::StdMatrixKey::GetConstFactor(), Nektar::StdRegions::StdExpansion::GetNcoeffs(), Nektar::StdRegions::StdExpansion::GetPointsType(), Nektar::StdRegions::kSVVDGFilter, Nektar::StdRegions::kSVVDGFiltermodesmax, Nektar::StdRegions::kSVVDGFiltermodesmin, and Nektar::StdRegions::StdExpansion::m_base.
1.8.13