Nektar++
|
#include <SegExp.h>
Public Member Functions | |
SegExp (const LibUtilities::BasisKey &Ba, const SpatialDomains::Geometry1DSharedPtr &geom) | |
Constructor using BasisKey class for quadrature points and order definition. More... | |
SegExp (const SegExp &S) | |
Copy Constructor. More... | |
~SegExp () | |
Public Member Functions inherited from Nektar::StdRegions::StdSegExp | |
StdSegExp () | |
Default constructor. More... | |
StdSegExp (const LibUtilities::BasisKey &Ba) | |
Constructor using BasisKey class for quadrature points and order definition. More... | |
StdSegExp (const StdSegExp &T) | |
Copy Constructor. More... | |
~StdSegExp () | |
Public Member Functions inherited from Nektar::StdRegions::StdExpansion1D | |
StdExpansion1D () | |
StdExpansion1D (int numcoeffs, const LibUtilities::BasisKey &Ba) | |
StdExpansion1D (const StdExpansion1D &T) | |
virtual | ~StdExpansion1D () |
void | PhysTensorDeriv (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
Evaluate the derivative at the physical quadrature points given by inarray and return in outarray. More... | |
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... | |
boost::shared_ptr< StdExpansion > | GetStdExp (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) |
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) |
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, 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 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). More... | |
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 | 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 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 | 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... | |
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. More... | |
virtual void | v_SetPhysNormals (Array< OneD, const NekDouble > &normal) |
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, const Array< OneD, const NekDouble > &Fz, Array< OneD, NekDouble > &outarray) |
virtual StdRegions::Orientation | v_GetForient (int face) |
virtual StdRegions::Orientation | v_GetEorient (int edge) |
virtual StdRegions::Orientation | v_GetCartesianEorient (int edge) |
NekDouble | Linf (const Array< OneD, const NekDouble > &phys, const Array< OneD, const NekDouble > &sol=NullNekDouble1DArray) |
Function to evaluate the discrete error where 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 error, where 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 error, where 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) |
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) |
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 > | |
boost::shared_ptr< T > | as () |
void | IProductWRTBase_SumFac (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, bool multiplybyweights=true) |
Public Member Functions inherited from Nektar::LocalRegions::Expansion1D | |
Expansion1D (SpatialDomains::Geometry1DSharedPtr pGeom) | |
virtual | ~Expansion1D () |
void | AddNormTraceInt (const int dir, Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
Expansion2DSharedPtr | GetLeftAdjacentElementExp () const |
Expansion2DSharedPtr | GetRightAdjacentElementExp () const |
int | GetLeftAdjacentElementEdge () const |
int | GetRightAdjacentElementEdge () const |
void | SetAdjacentElementExp (int edge, Expansion2DSharedPtr &e) |
void | AddHDGHelmholtzTraceTerms (const NekDouble tau, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
SpatialDomains::Geometry1DSharedPtr | GetGeom1D () const |
Public Member Functions inherited from Nektar::LocalRegions::Expansion | |
Expansion (SpatialDomains::GeometrySharedPtr pGeom) | |
Expansion (const Expansion &pSrc) | |
virtual | ~Expansion () |
DNekScalMatSharedPtr | GetLocMatrix (const LocalRegions::MatrixKey &mkey) |
DNekScalMatSharedPtr | GetLocMatrix (const StdRegions::MatrixType mtype, const StdRegions::ConstFactorMap &factors=StdRegions::NullConstFactorMap, const StdRegions::VarCoeffMap &varcoeffs=StdRegions::NullVarCoeffMap) |
SpatialDomains::GeometrySharedPtr | GetGeom () const |
void | Reset () |
virtual const SpatialDomains::GeomFactorsSharedPtr & | v_GetMetricInfo () const |
DNekMatSharedPtr | BuildTransformationMatrix (const DNekScalMatSharedPtr &r_bnd, const StdRegions::MatrixType matrixType) |
DNekMatSharedPtr | BuildVertexMatrix (const DNekScalMatSharedPtr &r_bnd) |
void | AddEdgeNormBoundaryInt (const int edge, const boost::shared_ptr< Expansion > &EdgeExp, const Array< OneD, const NekDouble > &Fx, const Array< OneD, const NekDouble > &Fy, Array< OneD, NekDouble > &outarray) |
void | AddEdgeNormBoundaryInt (const int edge, const boost::shared_ptr< Expansion > &EdgeExp, const Array< OneD, const NekDouble > &Fn, Array< OneD, NekDouble > &outarray) |
void | AddFaceNormBoundaryInt (const int face, const boost::shared_ptr< Expansion > &FaceExp, const Array< OneD, const NekDouble > &Fn, Array< OneD, NekDouble > &outarray) |
void | DGDeriv (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, ExpansionSharedPtr > &EdgeExp, Array< OneD, Array< OneD, NekDouble > > &coeffs, Array< OneD, NekDouble > &outarray) |
Protected Member Functions | |
virtual NekDouble | v_Integral (const Array< OneD, const NekDouble > &inarray) |
Integrate the physical point list inarray over region and return the value. More... | |
virtual void | v_PhysDeriv (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d0, Array< OneD, NekDouble > &out_d1=NullNekDouble1DArray, Array< OneD, NekDouble > &out_d2=NullNekDouble1DArray) |
Evaluate the derivative at the physical quadrature points given by inarray and return in outarray. 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_PhysDeriv_s (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_ds) |
Evaluate the derivative along a line: . The derivative is calculated performing the product . More... | |
virtual void | v_PhysDeriv_n (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_dn) |
Evaluate the derivative normal to a line: . The derivative is calculated performing the product . More... | |
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_FwdTrans_BndConstrained (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
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 (this)->_Base[0] and return in outarray. More... | |
virtual void | v_IProductWRTBase (const Array< OneD, const NekDouble > &base, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, int coll_check) |
Inner product of inarray over region with respect to expansion basis base and return in outarray. More... | |
virtual void | v_IProductWRTDerivBase (const int dir, const Array< OneD, const NekDouble > &inarray, 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 Array< OneD, NekDouble > > &Fvec, Array< OneD, NekDouble > &outarray) |
virtual NekDouble | v_StdPhysEvaluate (const Array< OneD, const NekDouble > &Lcoord, const Array< OneD, const NekDouble > &physvals) |
virtual NekDouble | v_PhysEvaluate (const Array< OneD, const NekDouble > &coord, const Array< OneD, const NekDouble > &physvals) |
virtual void | v_GetCoord (const Array< OneD, const NekDouble > &Lcoords, Array< OneD, NekDouble > &coords) |
virtual void | v_GetCoords (Array< OneD, NekDouble > &coords_1, Array< OneD, NekDouble > &coords_2, Array< OneD, NekDouble > &coords_3) |
virtual void | v_GetVertexPhysVals (const int vertex, const Array< OneD, const NekDouble > &inarray, NekDouble &outarray) |
virtual void | v_GetTracePhysVals (const int edge, const StdRegions::StdExpansionSharedPtr &EdgeExp, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, StdRegions::Orientation orient) |
virtual StdRegions::StdExpansionSharedPtr | v_GetStdExp (void) const |
virtual int | v_GetCoordim () |
virtual void | v_SetCoeffsToOrientation (Array< OneD, NekDouble > &coeffs, StdRegions::Orientation dir) |
virtual void | v_SetCoeffsToOrientation (StdRegions::Orientation dir, Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual int | v_GetNumPoints (const int dir) const |
virtual int | v_GetNcoeffs (void) const |
virtual const LibUtilities::BasisSharedPtr & | v_GetBasis (int dir) const |
virtual int | v_NumBndryCoeffs () const |
virtual int | v_NumDGBndryCoeffs () const |
virtual void | v_ComputeVertexNormal (const int vertex) |
virtual StdRegions::Orientation | v_GetPorient (int point) |
virtual SpatialDomains::GeomType | v_MetricInfoType () |
virtual void | v_ExtractDataToCoeffs (const NekDouble *data, const std::vector< unsigned int > &nummodes, const int mode_offset, NekDouble *coeffs) |
Unpack data from input file assuming it comes from. More... | |
virtual const Array< OneD, const NekDouble > & | v_GetPhysNormals (void) |
virtual void | v_LaplacianMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdRegions::StdMatrixKey &mkey) |
virtual void | v_HelmholtzMatrixOp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdRegions::StdMatrixKey &mkey) |
virtual DNekMatSharedPtr | v_GenMatrix (const StdRegions::StdMatrixKey &mkey) |
DNekScalMatSharedPtr | CreateMatrix (const MatrixKey &mkey) |
virtual DNekMatSharedPtr | v_CreateStdMatrix (const StdRegions::StdMatrixKey &mkey) |
DNekScalBlkMatSharedPtr | CreateStaticCondMatrix (const MatrixKey &mkey) |
virtual DNekScalMatSharedPtr | v_GetLocMatrix (const MatrixKey &mkey) |
virtual DNekScalBlkMatSharedPtr | v_GetLocStaticCondMatrix (const MatrixKey &mkey) |
void | v_DropLocStaticCondMatrix (const MatrixKey &mkey) |
Protected Member Functions inherited from Nektar::StdRegions::StdSegExp | |
virtual void | v_StdPhysDeriv (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d0, Array< OneD, NekDouble > &out_d1=NullNekDouble1DArray, Array< OneD, NekDouble > &out_d2=NullNekDouble1DArray) |
virtual void | v_StdPhysDeriv (const int dir, 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 transform from coefficient space given in inarray and evaluate at the physical quadrature points outarray. More... | |
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, bool multiplybyweights=true) |
virtual void | v_MultiplyByStdQuadratureMetric (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual void | v_FillMode (const int mode, Array< OneD, NekDouble > &outarray) |
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 int | v_GetNverts () const |
virtual bool | v_IsBoundaryInteriorExpansion () |
virtual int | v_CalcNumberOfCoefficients (const std::vector< unsigned int > &nummodes, int &modes_offset) |
virtual LibUtilities::ShapeType | v_DetShapeType () const |
Return Shape of region, using ShapeType enum list. i.e. Segment. More... | |
virtual void | v_ReduceOrderCoeffs (int numMin, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
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 | 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) |
Protected Member Functions inherited from Nektar::LocalRegions::Expansion1D | |
virtual void | v_AddRobinMassMatrix (const int vert, const Array< OneD, const NekDouble > &primCoeffs, DNekMatSharedPtr &inoutmat) |
virtual void | v_AddRobinEdgeContribution (const int vert, const Array< OneD, const NekDouble > &primCoeffs, Array< OneD, NekDouble > &coeffs) |
Protected Member Functions inherited from Nektar::LocalRegions::Expansion | |
void | ComputeLaplacianMetric () |
void | ComputeQuadratureMetric () |
virtual void | v_MultiplyByQuadratureMetric (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual void | v_ComputeLaplacianMetric () |
virtual DNekMatSharedPtr | v_BuildTransformationMatrix (const DNekScalMatSharedPtr &r_bnd, const StdRegions::MatrixType matrixType) |
virtual DNekMatSharedPtr | v_BuildVertexMatrix (const DNekScalMatSharedPtr &r_bnd) |
virtual void | v_AddEdgeNormBoundaryInt (const int edge, const boost::shared_ptr< Expansion > &EdgeExp, const Array< OneD, const NekDouble > &Fx, const Array< OneD, const NekDouble > &Fy, Array< OneD, NekDouble > &outarray) |
virtual void | v_AddEdgeNormBoundaryInt (const int edge, const boost::shared_ptr< Expansion > &EdgeExp, const Array< OneD, const NekDouble > &Fn, Array< OneD, NekDouble > &outarray) |
virtual void | v_AddFaceNormBoundaryInt (const int face, const boost::shared_ptr< Expansion > &FaceExp, const Array< OneD, const NekDouble > &Fn, Array< OneD, NekDouble > &outarray) |
virtual void | v_DGDeriv (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, ExpansionSharedPtr > &EdgeExp, Array< OneD, Array< OneD, NekDouble > > &coeffs, Array< OneD, NekDouble > &outarray) |
Private Member Functions | |
SegExp () | |
void | ReverseCoeffsAndSign (const Array< OneD, NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
Reverse the coefficients in a boundary interior expansion this routine is of use when we need the segment coefficients corresponding to a expansion in the reverse coordinate direction. More... | |
void | MultiplyByElmtInvMass (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
Additional Inherited Members | |
Protected Attributes inherited from Nektar::StdRegions::StdExpansion1D | |
std::map< int, NormalVector > | m_vertexNormals |
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 |
Protected Attributes inherited from Nektar::LocalRegions::Expansion | |
SpatialDomains::GeometrySharedPtr | m_geom |
SpatialDomains::GeomFactorsSharedPtr | m_metricinfo |
MetricMap | m_metrics |
Nektar::LocalRegions::SegExp::SegExp | ( | const LibUtilities::BasisKey & | Ba, |
const SpatialDomains::Geometry1DSharedPtr & | geom | ||
) |
Constructor using BasisKey class for quadrature points and order definition.
Ba | Basis key of segment expansion. |
geom | Description of geometry. |
Definition at line 58 of file SegExp.cpp.
Nektar::LocalRegions::SegExp::SegExp | ( | const SegExp & | S | ) |
Copy Constructor.
S | Existing segment to duplicate. |
Definition at line 79 of file SegExp.cpp.
Nektar::LocalRegions::SegExp::~SegExp | ( | ) |
Definition at line 94 of file SegExp.cpp.
|
private |
|
protected |
Definition at line 1198 of file SegExp.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), ASSERTL1, ASSERTL2, Nektar::StdRegions::StdExpansion::DetShapeType(), Nektar::SpatialDomains::eDeformed, Nektar::StdRegions::eFactorGaussVertex, Nektar::StdRegions::eFactorLambda, ErrorUtil::efatal, Nektar::StdRegions::eHelmholtz, Nektar::StdRegions::eHybridDGHelmBndLam, Nektar::StdRegions::eHybridDGHelmholtz, Nektar::StdRegions::eHybridDGLamToQ0, Nektar::StdRegions::eHybridDGLamToU, Nektar::StdRegions::eInterpGauss, Nektar::StdRegions::eInvHybridDGHelmholtz, Nektar::StdRegions::eInvMass, Nektar::StdRegions::eLaplacian, Nektar::StdRegions::eMass, Nektar::SpatialDomains::eNoGeomType, Nektar::StdRegions::eWeakDeriv0, Nektar::StdRegions::eWeakDeriv1, Nektar::StdRegions::eWeakDeriv2, Nektar::StdRegions::StdExpansion::GenMatrix(), Nektar::StdRegions::StdMatrixKey::GetConstFactor(), Nektar::StdRegions::StdMatrixKey::GetConstFactors(), Nektar::StdRegions::StdMatrixKey::GetMatrixType(), Nektar::StdRegions::StdMatrixKey::GetNVarCoeff(), Nektar::StdRegions::StdExpansion::GetPointsKeys(), Nektar::StdRegions::StdMatrixKey::GetShapeType(), Nektar::StdRegions::StdExpansion::GetStdMatrix(), Nektar::StdRegions::StdMatrixKey::GetVarCoeffs(), Nektar::StdRegions::StdExpansion::m_base, Nektar::LocalRegions::Expansion::m_geom, m_matrixManager, Nektar::LocalRegions::Expansion::m_metricinfo, and NEKERROR.
|
protected |
Definition at line 1432 of file SegExp.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), ASSERTL2, Nektar::SpatialDomains::eDeformed, Nektar::StdRegions::eHelmholtz, Nektar::StdRegions::eLaplacian, Nektar::SpatialDomains::eNoGeomType, Nektar::StdRegions::StdExpansion::GetBoundaryMap(), Nektar::StdRegions::StdExpansion::GetInteriorMap(), Nektar::LocalRegions::Expansion::GetLocMatrix(), Nektar::StdRegions::StdMatrixKey::GetMatrixType(), Nektar::StdRegions::StdExpansion::GetStdStaticCondMatrix(), Nektar::LocalRegions::Expansion::m_metricinfo, Nektar::StdRegions::StdExpansion::m_ncoeffs, and Nektar::StdRegions::StdExpansion::NumBndryCoeffs().
|
private |
Definition at line 1621 of file SegExp.cpp.
References Nektar::StdRegions::StdExpansion::DetShapeType(), Nektar::eCopy, Nektar::StdRegions::eInvMass, Nektar::eWrapper, m_matrixManager, and Nektar::StdRegions::StdExpansion::m_ncoeffs.
|
private |
Reverse the coefficients in a boundary interior expansion this routine is of use when we need the segment coefficients corresponding to a expansion in the reverse coordinate direction.
Definition at line 1579 of file SegExp.cpp.
References ASSERTL0, ASSERTL1, Nektar::LibUtilities::eGauss_Lagrange, Nektar::LibUtilities::eGLL_Lagrange, Nektar::LibUtilities::eModified_A, Nektar::StdRegions::StdExpansion::GetBasisType(), and Nektar::StdRegions::StdExpansion::m_ncoeffs.
Referenced by v_SetCoeffsToOrientation().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 885 of file SegExp.cpp.
References ASSERTL0, Nektar::SpatialDomains::eMovingRegular, Nektar::SpatialDomains::eRegular, Vmath::Fill(), Nektar::StdRegions::StdExpansion::GetCoordim(), Nektar::LocalRegions::Expansion::GetGeom(), Nektar::StdRegions::StdExpansion::GetPointsKeys(), Nektar::StdRegions::StdExpansion1D::m_vertexNormals, Vmath::Smul(), and Nektar::NekMeshUtils::vert.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 1187 of file SegExp.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), and Nektar::StdRegions::StdExpansion::m_base.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 1176 of file SegExp.cpp.
References m_staticCondMatrixManager.
|
protectedvirtual |
Unpack data from input file assuming it comes from.
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 841 of file SegExp.cpp.
References ASSERTL0, Nektar::LibUtilities::eGauss_Lagrange, Nektar::LibUtilities::eGaussGaussLegendre, Nektar::LibUtilities::eGaussLobattoLegendre, Nektar::LibUtilities::eGLL_Lagrange, Nektar::LibUtilities::eModified_A, Nektar::StdRegions::StdExpansion::GetBasisType(), Nektar::LibUtilities::Interp1D(), Nektar::StdRegions::StdExpansion::m_base, Nektar::StdRegions::StdExpansion::m_ncoeffs, Vmath::Vcopy(), and Vmath::Zero().
|
protectedvirtual |
Forward transform from physical quadrature space stored in inarray and evaluate the expansion coefficients and store in outarray.
Perform a forward transform using a Galerkin projection by taking the inner product of the physical points and multiplying by the inverse of the mass matrix using the Solve method of the standard matrix container holding the local mass matrix, i.e. where
Inputs:
Outputs:
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 376 of file SegExp.cpp.
References Nektar::StdRegions::StdExpansion::DetShapeType(), Nektar::eCopy, Nektar::StdRegions::eInvMass, Nektar::eWrapper, Nektar::StdRegions::StdExpansion::m_base, m_matrixManager, Nektar::StdRegions::StdExpansion::m_ncoeffs, v_IProductWRTBase(), and Vmath::Vcopy().
Referenced by v_FwdTrans_BndConstrained().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 400 of file SegExp.cpp.
References ASSERTL0, ASSERTL1, Nektar::StdRegions::StdExpansion::DetShapeType(), Nektar::LibUtilities::eGauss_Lagrange, Nektar::LibUtilities::eGaussLobattoLegendre, Nektar::LibUtilities::eGLL_Lagrange, Nektar::StdRegions::eMass, Nektar::LibUtilities::eModified_A, Nektar::LibUtilities::eModified_B, Nektar::StdRegions::StdExpansion::GetBasisType(), Nektar::StdRegions::StdExpansion::GetPointsType(), Nektar::StdRegions::StdExpansion::GetVertexMap(), Nektar::StdRegions::StdExpansion::m_base, Nektar::StdRegions::StdExpansion::m_ncoeffs, m_staticCondMatrixManager, Nektar::StdRegions::StdExpansion::MassMatrixOp(), v_FwdTrans(), v_IProductWRTBase(), Vmath::Vcopy(), and Vmath::Vsub().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 1408 of file SegExp.cpp.
References Nektar::StdRegions::eHybridDGHelmBndLam, Nektar::StdRegions::eHybridDGHelmholtz, Nektar::StdRegions::eHybridDGLamToQ0, Nektar::StdRegions::eHybridDGLamToQ1, Nektar::StdRegions::eHybridDGLamToQ2, Nektar::StdRegions::eHybridDGLamToU, Nektar::StdRegions::StdMatrixKey::GetMatrixType(), and Nektar::LocalRegions::Expansion1D::v_GenMatrix().
|
protectedvirtual |
Definition at line 821 of file SegExp.cpp.
References Nektar::StdRegions::StdExpansion::GetBasis().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 679 of file SegExp.cpp.
References ASSERTL1, and Nektar::LocalRegions::Expansion::m_geom.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion1D.
Definition at line 795 of file SegExp.cpp.
References Nektar::LocalRegions::Expansion::m_geom.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 695 of file SegExp.cpp.
References Nektar::LocalRegions::Expansion::v_GetCoords().
|
protectedvirtual |
Reimplemented from Nektar::LocalRegions::Expansion.
Definition at line 1181 of file SegExp.cpp.
References m_matrixManager.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 1170 of file SegExp.cpp.
References m_staticCondMatrixManager.
|
protectedvirtual |
|
protectedvirtual |
Definition at line 811 of file SegExp.cpp.
References Nektar::StdRegions::StdExpansion::GetNumPoints().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 800 of file SegExp.cpp.
References ErrorUtil::efatal, NEKERROR, and Nektar::NullNekDouble1DArray.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 783 of file SegExp.cpp.
References Nektar::LocalRegions::Expansion::m_geom.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 789 of file SegExp.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), and Nektar::StdRegions::StdExpansion::m_base.
|
protectedvirtual |
Definition at line 740 of file SegExp.cpp.
References v_GetVertexPhysVals().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 704 of file SegExp.cpp.
References Vmath::Ddot(), Nektar::StdRegions::StdExpansion::DetShapeType(), Nektar::StdRegions::eFactorGaussVertex, Nektar::LibUtilities::eGaussGaussLegendre, Nektar::StdRegions::eInterpGauss, Nektar::StdRegions::StdExpansion::GetPointsType(), Nektar::StdRegions::StdExpansion::m_base, and m_matrixManager.
Referenced by v_GetTracePhysVals().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 1055 of file SegExp.cpp.
References ASSERTL0, Nektar::StdRegions::StdExpansion::BwdTrans(), Nektar::SpatialDomains::eDeformed, Nektar::StdRegions::eFactorLambda, Nektar::StdRegions::StdMatrixKey::GetConstFactor(), Nektar::StdRegions::StdExpansion::GetPointsKeys(), Nektar::StdRegions::StdExpansion::m_base, Nektar::LocalRegions::Expansion::m_geom, Nektar::LocalRegions::Expansion::m_metricinfo, Nektar::StdRegions::StdExpansion::m_ncoeffs, Nektar::StdRegions::StdExpansion::PhysDeriv(), v_IProductWRTBase(), Vmath::Vmul(), and Vmath::Vvtvp().
|
protectedvirtual |
Integrate the physical point list inarray over region and return the value.
Inputs:
Outputs:
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 117 of file SegExp.cpp.
References Nektar::SpatialDomains::eDeformed, Nektar::StdRegions::StdExpansion::GetPointsKeys(), Nektar::StdRegions::StdExpansion::m_base, Nektar::LocalRegions::Expansion::m_metricinfo, Vmath::Smul(), and Vmath::Vmul().
|
protectedvirtual |
Inner product of inarray over region with respect to the expansion basis (this)->_Base[0] and return in outarray.
Wrapper call to SegExp::IProduct_WRT_B
Input:
Output:
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 503 of file SegExp.cpp.
References Nektar::StdRegions::StdExpansion::m_base.
Referenced by v_FwdTrans(), v_FwdTrans_BndConstrained(), v_HelmholtzMatrixOp(), v_IProductWRTDerivBase(), v_LaplacianMatrixOp(), and v_NormVectorIProductWRTBase().
|
protectedvirtual |
Inner product of inarray over region with respect to expansion basis base and return in outarray.
Calculate where .
Inputs:
Output:
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 538 of file SegExp.cpp.
References Nektar::SpatialDomains::eDeformed, Nektar::StdRegions::StdExpansion::GetPointsKeys(), Nektar::StdRegions::StdExpansion::m_base, Nektar::LocalRegions::Expansion::m_metricinfo, Vmath::Smul(), and Vmath::Vmul().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 562 of file SegExp.cpp.
References ASSERTL1, Nektar::SpatialDomains::eDeformed, Nektar::StdRegions::StdExpansion::GetPointsKeys(), Nektar::StdRegions::StdExpansion::m_base, Nektar::LocalRegions::Expansion::m_geom, Nektar::LocalRegions::Expansion::m_metricinfo, Vmath::Smul(), v_IProductWRTBase(), and Vmath::Vmul().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 949 of file SegExp.cpp.
References ASSERTL0, Nektar::StdRegions::StdExpansion::BwdTrans(), Nektar::SpatialDomains::eDeformed, Nektar::StdRegions::StdExpansion::GetPointsKeys(), Nektar::StdRegions::StdExpansion::m_base, Nektar::LocalRegions::Expansion::m_geom, Nektar::LocalRegions::Expansion::m_metricinfo, Nektar::StdRegions::StdExpansion::PhysDeriv(), v_IProductWRTBase(), Vmath::Vmul(), and Vmath::Vvtvp().
|
protectedvirtual |
Definition at line 806 of file SegExp.cpp.
References Nektar::LocalRegions::Expansion::m_metricinfo.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 621 of file SegExp.cpp.
References Nektar::StdRegions::StdExpansion::GetEdgeNormal(), Nektar::LocalRegions::Expansion1D::GetLeftAdjacentElementEdge(), Nektar::LocalRegions::Expansion1D::GetLeftAdjacentElementExp(), Nektar::StdRegions::StdExpansion::m_base, v_IProductWRTBase(), Vmath::Vmul(), and Vmath::Vvtvp().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 641 of file SegExp.cpp.
References Nektar::StdRegions::StdExpansion::NormVectorIProductWRTBase().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 827 of file SegExp.cpp.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 833 of file SegExp.cpp.
|
protectedvirtual |
Evaluate the derivative at the physical quadrature points given by inarray and return in outarray.
This is a wrapper around StdExpansion1D::Tensor_Deriv
Input:
Output:
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 165 of file SegExp.cpp.
References Nektar::SpatialDomains::eDeformed, Nektar::StdRegions::StdExpansion::GetPointsKeys(), Nektar::StdRegions::StdExpansion::m_base, Nektar::LocalRegions::Expansion::m_metricinfo, Nektar::StdRegions::StdExpansion1D::PhysTensorDeriv(), Vmath::Smul(), and Vmath::Vmul().
Referenced by v_PhysDeriv_n().
|
protectedvirtual |
Calculate the derivative of the physical points in a given direction.
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 318 of file SegExp.cpp.
References ASSERTL1, Nektar::NullNekDouble1DArray, and Nektar::StdRegions::StdExpansion::PhysDeriv().
|
protectedvirtual |
Evaluate the derivative normal to a line: . The derivative is calculated performing the product .
inarray | function to derive |
out_dn | result of the derivative operation |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 268 of file SegExp.cpp.
References ASSERTL0, Nektar::StdRegions::StdExpansion::GetPointsKeys(), Nektar::StdRegions::StdExpansion::m_base, Nektar::LocalRegions::Expansion::m_geom, Nektar::LocalRegions::Expansion::m_metricinfo, Nektar::NullNekDoubleArrayofArray, v_PhysDeriv(), Vmath::Vadd(), Vmath::Vmul(), and Vmath::Zero().
|
protectedvirtual |
Evaluate the derivative along a line: . The derivative is calculated performing the product .
inarray | function to derive |
out_ds | result of the derivative operation |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 228 of file SegExp.cpp.
References Nektar::SpatialDomains::eDeformed, Nektar::StdRegions::StdExpansion::GetPointsKeys(), Nektar::StdRegions::StdExpansion::m_base, Nektar::LocalRegions::Expansion::m_geom, Nektar::LocalRegions::Expansion::m_metricinfo, Nektar::StdRegions::StdExpansion1D::PhysTensorDeriv(), Vmath::Smul(), Vmath::Vdiv(), and Vmath::Zero().
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdSegExp.
Definition at line 666 of file SegExp.cpp.
References ASSERTL0, and Nektar::LocalRegions::Expansion::m_geom.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 756 of file SegExp.cpp.
|
protectedvirtual |
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 763 of file SegExp.cpp.
References Nektar::StdRegions::eBackwards, and ReverseCoeffsAndSign().
|
protectedvirtual |
Given the local cartesian coordinate Lcoord evaluate the value of physvals at this point by calling through to the StdExpansion method
Reimplemented from Nektar::StdRegions::StdExpansion.
Definition at line 658 of file SegExp.cpp.
|
private |
Definition at line 246 of file SegExp.h.
Referenced by CreateMatrix(), MultiplyByElmtInvMass(), v_FwdTrans(), v_GetLocMatrix(), and v_GetVertexPhysVals().
|
private |
Definition at line 248 of file SegExp.h.
Referenced by v_DropLocStaticCondMatrix(), v_FwdTrans_BndConstrained(), and v_GetLocStaticCondMatrix().