Nektar++
|
Base class for all multi-elemental spectral/hp expansions. More...
#include <ExpList.h>
Public Member Functions | |
ExpList () | |
The default constructor. More... | |
ExpList (const LibUtilities::SessionReaderSharedPtr &pSession) | |
The default constructor. More... | |
ExpList (const LibUtilities::SessionReaderSharedPtr &pSession, const SpatialDomains::MeshGraphSharedPtr &pGraph) | |
The default constructor. More... | |
ExpList (const ExpList &in, const std::vector< unsigned int > &eIDs, const bool DeclareCoeffPhysArrays=true) | |
Constructor copying only elements defined in eIds. More... | |
ExpList (const ExpList &in, const bool DeclareCoeffPhysArrays=true) | |
The copy constructor. More... | |
virtual | ~ExpList () |
The default destructor. More... | |
int | GetNcoeffs (void) const |
Returns the total number of local degrees of freedom \(N_{\mathrm{eof}}=\sum_{e=1}^{{N_{\mathrm{el}}}}N^{e}_m\). More... | |
int | GetNcoeffs (const int eid) const |
Returns the total number of local degrees of freedom for element eid. More... | |
ExpansionType | GetExpType (void) |
Returns the type of the expansion. More... | |
void | SetExpType (ExpansionType Type) |
Returns the type of the expansion. More... | |
int | EvalBasisNumModesMax (void) const |
Evaulates the maximum number of modes in the elemental basis order over all elements. More... | |
const Array< OneD, int > | EvalBasisNumModesMaxPerExp (void) const |
Returns the vector of the number of modes in the elemental basis order over all elements. More... | |
int | GetTotPoints (void) const |
Returns the total number of quadrature points m_npoints \(=Q_{\mathrm{tot}}\). More... | |
int | GetTotPoints (const int eid) const |
Returns the total number of quadrature points for eid's element \(=Q_{\mathrm{tot}}\). More... | |
int | GetNpoints (void) const |
Returns the total number of quadrature points m_npoints \(=Q_{\mathrm{tot}}\). More... | |
int | Get1DScaledTotPoints (const NekDouble scale) const |
Returns the total number of qudature points scaled by the factor scale on each 1D direction. More... | |
void | SetWaveSpace (const bool wavespace) |
Sets the wave space to the one of the possible configuration true or false. More... | |
void | SetModifiedBasis (const bool modbasis) |
Set Modified Basis for the stability analysis. More... | |
void | SetPhys (int i, NekDouble val) |
Set the i th value of m_phys to value val. More... | |
bool | GetWaveSpace (void) const |
This function returns the third direction expansion condition, which can be in wave space (coefficient) or not It is stored in the variable m_WaveSpace. More... | |
void | SetPhys (const Array< OneD, const NekDouble > &inarray) |
Fills the array m_phys. More... | |
void | SetPhysArray (Array< OneD, NekDouble > &inarray) |
Sets the array m_phys. More... | |
void | SetPhysState (const bool physState) |
This function manually sets whether the array of physical values \(\boldsymbol{u}_l\) (implemented as m_phys) is filled or not. More... | |
bool | GetPhysState (void) const |
This function indicates whether the array of physical values \(\boldsymbol{u}_l\) (implemented as m_phys) is filled or not. More... | |
NekDouble | PhysIntegral (void) |
This function integrates a function \(f(\boldsymbol{x})\) over the domain consisting of all the elements of the expansion. More... | |
NekDouble | PhysIntegral (const Array< OneD, const NekDouble > &inarray) |
This function integrates a function \(f(\boldsymbol{x})\) over the domain consisting of all the elements of the expansion. More... | |
void | IProductWRTBase_IterPerExp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
This function calculates the inner product of a function \(f(\boldsymbol{x})\) with respect to all local expansion modes \(\phi_n^e(\boldsymbol{x})\). More... | |
void | IProductWRTBase (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate=eLocal) |
void | IProductWRTDerivBase (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
This function calculates the inner product of a function \(f(\boldsymbol{x})\) with respect to the derivative (in direction. More... | |
void | IProductWRTDirectionalDerivBase (const Array< OneD, const NekDouble > &direction, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
Directional derivative along a given direction. More... | |
void | IProductWRTDerivBase (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, NekDouble > &outarray) |
This function calculates the inner product of a function \(f(\boldsymbol{x})\) with respect to the derivative (in direction. More... | |
void | FwdTrans_IterPerExp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
This function elementally evaluates the forward transformation of a function \(u(\boldsymbol{x})\) onto the global spectral/hp expansion. More... | |
void | FwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate=eLocal) |
void | ExponentialFilter (Array< OneD, NekDouble > &array, const NekDouble alpha, const NekDouble exponent, const NekDouble cutoff) |
void | MultiplyByElmtInvMass (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
This function elementally mulplies the coefficient space of Sin my the elemental inverse of the mass matrix. More... | |
void | MultiplyByInvMassMatrix (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate=eLocal) |
void | SmoothField (Array< OneD, NekDouble > &field) |
Smooth a field across elements. More... | |
void | HelmSolve (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const FlagList &flags, const StdRegions::ConstFactorMap &factors, const StdRegions::VarCoeffMap &varcoeff=StdRegions::NullVarCoeffMap, const MultiRegions::VarFactorsMap &varfactors=MultiRegions::NullVarFactorsMap, const Array< OneD, const NekDouble > &dirForcing=NullNekDouble1DArray, const bool PhysSpaceForcing=true) |
Solve helmholtz problem. More... | |
void | LinearAdvectionDiffusionReactionSolve (const Array< OneD, Array< OneD, NekDouble > > &velocity, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const NekDouble lambda, CoeffState coeffstate=eLocal, const Array< OneD, const NekDouble > &dirForcing=NullNekDouble1DArray) |
Solve Advection Diffusion Reaction. More... | |
void | LinearAdvectionReactionSolve (const Array< OneD, Array< OneD, NekDouble > > &velocity, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const NekDouble lambda, CoeffState coeffstate=eLocal, const Array< OneD, const NekDouble > &dirForcing=NullNekDouble1DArray) |
Solve Advection Diffusion Reaction. More... | |
void | FwdTrans_BndConstrained (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
void | BwdTrans_IterPerExp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
This function elementally evaluates the backward transformation of the global spectral/hp element expansion. More... | |
void | BwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate=eLocal) |
void | GetCoords (Array< OneD, NekDouble > &coord_0, Array< OneD, NekDouble > &coord_1=NullNekDouble1DArray, Array< OneD, NekDouble > &coord_2=NullNekDouble1DArray) |
This function calculates the coordinates of all the elemental quadrature points \(\boldsymbol{x}_i\). More... | |
void | HomogeneousFwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate=eLocal, bool Shuff=true, bool UnShuff=true) |
void | HomogeneousBwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate=eLocal, bool Shuff=true, bool UnShuff=true) |
void | DealiasedProd (const Array< OneD, NekDouble > &inarray1, const Array< OneD, NekDouble > &inarray2, Array< OneD, NekDouble > &outarray, CoeffState coeffstate=eLocal) |
void | DealiasedDotProd (const Array< OneD, Array< OneD, NekDouble > > &inarray1, const Array< OneD, Array< OneD, NekDouble > > &inarray2, Array< OneD, Array< OneD, NekDouble > > &outarray, CoeffState coeffstate=eLocal) |
void | GetBCValues (Array< OneD, NekDouble > &BndVals, const Array< OneD, NekDouble > &TotField, int BndID) |
void | NormVectorIProductWRTBase (Array< OneD, const NekDouble > &V1, Array< OneD, const NekDouble > &V2, Array< OneD, NekDouble > &outarray, int BndID) |
void | NormVectorIProductWRTBase (Array< OneD, Array< OneD, NekDouble > > &V, Array< OneD, NekDouble > &outarray) |
void | ApplyGeomInfo () |
Apply geometry information to each expansion. More... | |
void | Reset () |
Reset geometry information and reset matrices. More... | |
void | WriteTecplotHeader (std::ostream &outfile, std::string var="") |
void | WriteTecplotZone (std::ostream &outfile, int expansion=-1) |
void | WriteTecplotField (std::ostream &outfile, int expansion=-1) |
void | WriteTecplotConnectivity (std::ostream &outfile, int expansion=-1) |
void | WriteVtkHeader (std::ostream &outfile) |
void | WriteVtkFooter (std::ostream &outfile) |
void | WriteVtkPieceHeader (std::ostream &outfile, int expansion, int istrip=0) |
void | WriteVtkPieceFooter (std::ostream &outfile, int expansion) |
void | WriteVtkPieceData (std::ostream &outfile, int expansion, std::string var="v") |
int | GetCoordim (int eid) |
This function returns the dimension of the coordinates of the element eid. More... | |
void | SetCoeff (int i, NekDouble val) |
Set the i th coefficiient in m_coeffs to value val. More... | |
void | SetCoeffs (int i, NekDouble val) |
Set the i th coefficiient in m_coeffs to value val. More... | |
void | SetCoeffsArray (Array< OneD, NekDouble > &inarray) |
Set the m_coeffs array to inarray. More... | |
int | GetShapeDimension () |
This function returns the dimension of the shape of the element eid. More... | |
const Array< OneD, const NekDouble > & | GetCoeffs () const |
This function returns (a reference to) the array \(\boldsymbol{\hat{u}}_l\) (implemented as m_coeffs) containing all local expansion coefficients. More... | |
void | ImposeDirichletConditions (Array< OneD, NekDouble > &outarray) |
Impose Dirichlet Boundary Conditions onto Array. More... | |
void | FillBndCondFromField (void) |
Fill Bnd Condition expansion from the values stored in expansion. More... | |
void | FillBndCondFromField (const int nreg) |
Fill Bnd Condition expansion in nreg from the values stored in expansion. More... | |
void | LocalToGlobal (bool useComm=true) |
Gathers the global coefficients \(\boldsymbol{\hat{u}}_g\) from the local coefficients \(\boldsymbol{\hat{u}}_l\). More... | |
void | LocalToGlobal (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, bool useComm=true) |
void | GlobalToLocal (void) |
Scatters from the global coefficients \(\boldsymbol{\hat{u}}_g\) to the local coefficients \(\boldsymbol{\hat{u}}_l\). More... | |
void | GlobalToLocal (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
NekDouble | GetCoeff (int i) |
Get the i th value (coefficient) of m_coeffs. More... | |
NekDouble | GetCoeffs (int i) |
Get the i th value (coefficient) of m_coeffs. More... | |
const Array< OneD, const NekDouble > & | GetPhys () const |
This function returns (a reference to) the array \(\boldsymbol{u}_l\) (implemented as m_phys) containing the function \(u^{\delta}(\boldsymbol{x})\) evaluated at the quadrature points. More... | |
NekDouble | Linf (const Array< OneD, const NekDouble > &inarray, const Array< OneD, const NekDouble > &soln=NullNekDouble1DArray) |
This function calculates the \(L_\infty\) error of the global spectral/hp element approximation. More... | |
NekDouble | L2 (const Array< OneD, const NekDouble > &inarray, const Array< OneD, const NekDouble > &soln=NullNekDouble1DArray) |
This function calculates the \(L_2\) error with respect to soln of the global spectral/hp element approximation. More... | |
NekDouble | H1 (const Array< OneD, const NekDouble > &inarray, const Array< OneD, const NekDouble > &soln=NullNekDouble1DArray) |
Calculates the \(H^1\) error of the global spectral/hp element approximation. More... | |
NekDouble | Integral (const Array< OneD, const NekDouble > &inarray) |
NekDouble | VectorFlux (const Array< OneD, Array< OneD, NekDouble > > &inarray) |
Array< OneD, const NekDouble > | HomogeneousEnergy (void) |
This function calculates the energy associated with each one of the modesof a 3D homogeneous nD expansion. More... | |
void | SetHomo1DSpecVanVisc (Array< OneD, NekDouble > visc) |
This function sets the Spectral Vanishing Viscosity in homogeneous1D expansion. More... | |
Array< OneD, const unsigned int > | GetZIDs (void) |
This function returns a vector containing the wave numbers in z-direction associated with the 3D homogenous expansion. Required if a parellelisation is applied in the Fourier direction. More... | |
LibUtilities::TranspositionSharedPtr | GetTransposition (void) |
This function returns the transposition class associaed with the homogeneous expansion. More... | |
NekDouble | GetHomoLen (void) |
This function returns the Width of homogeneous direction associaed with the homogeneous expansion. More... | |
void | SetHomoLen (const NekDouble lhom) |
This function sets the Width of homogeneous direction associaed with the homogeneous expansion. More... | |
Array< OneD, const unsigned int > | GetYIDs (void) |
This function returns a vector containing the wave numbers in y-direction associated with the 3D homogenous expansion. Required if a parellelisation is applied in the Fourier direction. More... | |
void | PhysInterp1DScaled (const NekDouble scale, const Array< OneD, NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
This function interpolates the physical space points in inarray to outarray using the same points defined in the expansion but where the number of points are rescaled by 1DScale. More... | |
void | PhysGalerkinProjection1DScaled (const NekDouble scale, const Array< OneD, NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
This function Galerkin projects the physical space points in inarray to outarray where inarray is assumed to be defined in the expansion but where the number of points are rescaled by 1DScale. More... | |
int | GetExpSize (void) |
This function returns the number of elements in the expansion. More... | |
int | GetNumElmts (void) |
This function returns the number of elements in the expansion which may be different for a homogeoenous extended expansionp. More... | |
const std::shared_ptr< LocalRegions::ExpansionVector > | GetExp () const |
This function returns the vector of elements in the expansion. More... | |
LocalRegions::ExpansionSharedPtr & | GetExp (int n) const |
This function returns (a shared pointer to) the local elemental expansion of the \(n^{\mathrm{th}}\) element. More... | |
LocalRegions::ExpansionSharedPtr & | GetExp (const Array< OneD, const NekDouble > &gloCoord) |
This function returns (a shared pointer to) the local elemental expansion containing the arbitrary point given by gloCoord. More... | |
int | GetExpIndex (const Array< OneD, const NekDouble > &gloCoord, NekDouble tol=0.0, bool returnNearestElmt=false) |
int | GetExpIndex (const Array< OneD, const NekDouble > &gloCoords, Array< OneD, NekDouble > &locCoords, NekDouble tol=0.0, bool returnNearestElmt=false) |
NekDouble | PhysEvaluate (const Array< OneD, const NekDouble > &coords, const Array< OneD, const NekDouble > &phys) |
int | GetCoeff_Offset (int n) const |
Get the start offset position for a global list of m_coeffs correspoinding to element n. More... | |
int | GetPhys_Offset (int n) const |
Get the start offset position for a global list of m_phys correspoinding to element n. More... | |
Array< OneD, NekDouble > & | UpdateCoeffs () |
This function returns (a reference to) the array \(\boldsymbol{\hat{u}}_l\) (implemented as m_coeffs) containing all local expansion coefficients. More... | |
Array< OneD, NekDouble > & | UpdatePhys () |
This function returns (a reference to) the array \(\boldsymbol{u}_l\) (implemented as m_phys) containing the function \(u^{\delta}(\boldsymbol{x})\) evaluated at the quadrature points. More... | |
void | PhysDeriv (Direction edir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d) |
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) |
This function discretely evaluates the derivative of a function \(f(\boldsymbol{x})\) on the domain consisting of all elements of the expansion. More... | |
void | PhysDeriv (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d) |
void | CurlCurl (Array< OneD, Array< OneD, NekDouble > > &Vel, Array< OneD, Array< OneD, NekDouble > > &Q) |
void | PhysDirectionalDeriv (const Array< OneD, const NekDouble > &direction, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
void | GetMovingFrames (const SpatialDomains::GeomMMF MMFdir, const Array< OneD, const NekDouble > &CircCentre, Array< OneD, Array< OneD, NekDouble > > &outarray) |
const Array< OneD, const std::shared_ptr< ExpList > > & | GetBndCondExpansions () |
std::shared_ptr< ExpList > & | UpdateBndCondExpansion (int i) |
void | Upwind (const Array< OneD, const Array< OneD, NekDouble > > &Vec, const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &Upwind) |
void | Upwind (const Array< OneD, const NekDouble > &Vn, const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &Upwind) |
std::shared_ptr< ExpList > & | GetTrace () |
std::shared_ptr< AssemblyMapDG > & | GetTraceMap (void) |
const Array< OneD, const int > & | GetTraceBndMap (void) |
void | GetNormals (Array< OneD, Array< OneD, NekDouble > > &normals) |
void | AddTraceIntegral (const Array< OneD, const NekDouble > &Fx, const Array< OneD, const NekDouble > &Fy, Array< OneD, NekDouble > &outarray) |
void | AddTraceIntegral (const Array< OneD, const NekDouble > &Fn, Array< OneD, NekDouble > &outarray) |
void | AddFwdBwdTraceIntegral (const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &outarray) |
void | GetFwdBwdTracePhys (Array< OneD, NekDouble > &Fwd, Array< OneD, NekDouble > &Bwd) |
void | GetFwdBwdTracePhys (const Array< OneD, const NekDouble > &field, Array< OneD, NekDouble > &Fwd, Array< OneD, NekDouble > &Bwd) |
const std::vector< bool > & | GetLeftAdjacentFaces (void) const |
void | ExtractTracePhys (Array< OneD, NekDouble > &outarray) |
void | ExtractTracePhys (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
const Array< OneD, const SpatialDomains::BoundaryConditionShPtr > & | GetBndConditions () |
Array< OneD, SpatialDomains::BoundaryConditionShPtr > & | UpdateBndConditions () |
void | EvaluateBoundaryConditions (const NekDouble time=0.0, const std::string varName="", const NekDouble=NekConstants::kNekUnsetDouble, const NekDouble=NekConstants::kNekUnsetDouble) |
void | GeneralMatrixOp (const GlobalMatrixKey &gkey, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate=eLocal) |
This function calculates the result of the multiplication of a matrix of type specified by mkey with a vector given by inarray. More... | |
void | GeneralMatrixOp_IterPerExp (const GlobalMatrixKey &gkey, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
void | SetUpPhysNormals () |
void | GetBoundaryToElmtMap (Array< OneD, int > &ElmtID, Array< OneD, int > &EdgeID) |
void | GetBndElmtExpansion (int i, std::shared_ptr< ExpList > &result, const bool DeclareCoeffPhysArrays=true) |
void | ExtractElmtToBndPhys (int i, const Array< OneD, NekDouble > &elmt, Array< OneD, NekDouble > &boundary) |
void | ExtractPhysToBndElmt (int i, const Array< OneD, const NekDouble > &phys, Array< OneD, NekDouble > &bndElmt) |
void | ExtractPhysToBnd (int i, const Array< OneD, const NekDouble > &phys, Array< OneD, NekDouble > &bnd) |
void | GetBoundaryNormals (int i, Array< OneD, Array< OneD, NekDouble > > &normals) |
void | GeneralGetFieldDefinitions (std::vector< LibUtilities::FieldDefinitionsSharedPtr > &fielddef, int NumHomoDir=0, Array< OneD, LibUtilities::BasisSharedPtr > &HomoBasis=LibUtilities::NullBasisSharedPtr1DArray, std::vector< NekDouble > &HomoLen=LibUtilities::NullNekDoubleVector, bool homoStrips=false, std::vector< unsigned int > &HomoSIDs=LibUtilities::NullUnsignedIntVector, std::vector< unsigned int > &HomoZIDs=LibUtilities::NullUnsignedIntVector, std::vector< unsigned int > &HomoYIDs=LibUtilities::NullUnsignedIntVector) |
const NekOptimize::GlobalOptParamSharedPtr & | GetGlobalOptParam (void) |
std::map< int, RobinBCInfoSharedPtr > | GetRobinBCInfo () |
void | GetPeriodicEntities (PeriodicMap &periodicVerts, PeriodicMap &periodicEdges, PeriodicMap &periodicFaces=NullPeriodicMap) |
std::vector< LibUtilities::FieldDefinitionsSharedPtr > | GetFieldDefinitions () |
void | GetFieldDefinitions (std::vector< LibUtilities::FieldDefinitionsSharedPtr > &fielddef) |
void | AppendFieldData (LibUtilities::FieldDefinitionsSharedPtr &fielddef, std::vector< NekDouble > &fielddata) |
Append the element data listed in elements fielddef->m_ElementIDs onto fielddata. More... | |
void | AppendFieldData (LibUtilities::FieldDefinitionsSharedPtr &fielddef, std::vector< NekDouble > &fielddata, Array< OneD, NekDouble > &coeffs) |
Append the data in coeffs listed in elements fielddef->m_ElementIDs onto fielddata. More... | |
void | ExtractElmtDataToCoeffs (LibUtilities::FieldDefinitionsSharedPtr &fielddef, std::vector< NekDouble > &fielddata, std::string &field, Array< OneD, NekDouble > &coeffs) |
Extract the data in fielddata into the coeffs using the basic ExpList Elemental expansions rather than planes in homogeneous case. More... | |
void | ExtractCoeffsToCoeffs (const std::shared_ptr< ExpList > &fromExpList, const Array< OneD, const NekDouble > &fromCoeffs, Array< OneD, NekDouble > &toCoeffs) |
Extract the data from fromField using fromExpList the coeffs using the basic ExpList Elemental expansions rather than planes in homogeneous case. More... | |
void | ExtractDataToCoeffs (LibUtilities::FieldDefinitionsSharedPtr &fielddef, std::vector< NekDouble > &fielddata, std::string &field, Array< OneD, NekDouble > &coeffs) |
Extract the data in fielddata into the coeffs. More... | |
void | GenerateElementVector (const int ElementID, const NekDouble scalar1, const NekDouble scalar2, Array< OneD, NekDouble > &outarray) |
Generate vector v such that v[i] = scalar1 if i is in the element < ElementID. Otherwise, v[i] = scalar2. More... | |
std::shared_ptr< ExpList > | GetSharedThisPtr () |
Returns a shared pointer to the current object. More... | |
std::shared_ptr< LibUtilities::SessionReader > | GetSession () const |
Returns the session object. More... | |
std::shared_ptr< LibUtilities::Comm > | GetComm () |
Returns the comm object. More... | |
SpatialDomains::MeshGraphSharedPtr | GetGraph () |
LibUtilities::BasisSharedPtr | GetHomogeneousBasis (void) |
std::shared_ptr< ExpList > & | GetPlane (int n) |
void | CreateCollections (Collections::ImplementationType ImpType=Collections::eNoImpType) |
Construct collections of elements containing a single element type and polynomial order from the list of expansions. More... | |
void | ClearGlobalLinSysManager (void) |
Public Attributes | |
ExpansionType | m_expType |
Protected Member Functions | |
void | SetCoeffPhysOffsets () |
Definition of the total number of degrees of freedom and quadrature points and offsets to access data. More... | |
std::shared_ptr< DNekMat > | GenGlobalMatrixFull (const GlobalLinSysKey &mkey, const std::shared_ptr< AssemblyMapCG > &locToGloMap) |
const DNekScalBlkMatSharedPtr | GenBlockMatrix (const GlobalMatrixKey &gkey) |
This function assembles the block diagonal matrix of local matrices of the type mtype. More... | |
const DNekScalBlkMatSharedPtr & | GetBlockMatrix (const GlobalMatrixKey &gkey) |
void | MultiplyByBlockMatrix (const GlobalMatrixKey &gkey, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
std::shared_ptr< GlobalMatrix > | GenGlobalMatrix (const GlobalMatrixKey &mkey, const std::shared_ptr< AssemblyMapCG > &locToGloMap) |
Generates a global matrix from the given key and map. More... | |
void | GlobalEigenSystem (const std::shared_ptr< DNekMat > &Gmat, Array< OneD, NekDouble > &EigValsReal, Array< OneD, NekDouble > &EigValsImag, Array< OneD, NekDouble > &EigVecs=NullNekDouble1DArray) |
std::shared_ptr< GlobalLinSys > | GenGlobalLinSys (const GlobalLinSysKey &mkey, const std::shared_ptr< AssemblyMapCG > &locToGloMap) |
This operation constructs the global linear system of type mkey. More... | |
std::shared_ptr< GlobalLinSys > | GenGlobalBndLinSys (const GlobalLinSysKey &mkey, const AssemblyMapSharedPtr &locToGloMap) |
Generate a GlobalLinSys from information provided by the key "mkey" and the mapping provided in LocToGloBaseMap. More... | |
void | ReadGlobalOptimizationParameters () |
virtual int | v_GetNumElmts (void) |
virtual const Array< OneD, const std::shared_ptr< ExpList > > & | v_GetBndCondExpansions (void) |
virtual std::shared_ptr< ExpList > & | v_UpdateBndCondExpansion (int i) |
virtual void | v_Upwind (const Array< OneD, const Array< OneD, NekDouble > > &Vec, const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &Upwind) |
virtual void | v_Upwind (const Array< OneD, const NekDouble > &Vn, const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &Upwind) |
virtual std::shared_ptr< ExpList > & | v_GetTrace () |
virtual std::shared_ptr< AssemblyMapDG > & | v_GetTraceMap () |
virtual const Array< OneD, const int > & | v_GetTraceBndMap () |
virtual void | v_GetNormals (Array< OneD, Array< OneD, NekDouble > > &normals) |
virtual void | v_AddTraceIntegral (const Array< OneD, const NekDouble > &Fx, const Array< OneD, const NekDouble > &Fy, Array< OneD, NekDouble > &outarray) |
virtual void | v_AddTraceIntegral (const Array< OneD, const NekDouble > &Fn, Array< OneD, NekDouble > &outarray) |
virtual void | v_AddFwdBwdTraceIntegral (const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &outarray) |
virtual void | v_GetFwdBwdTracePhys (Array< OneD, NekDouble > &Fwd, Array< OneD, NekDouble > &Bwd) |
virtual void | v_GetFwdBwdTracePhys (const Array< OneD, const NekDouble > &field, Array< OneD, NekDouble > &Fwd, Array< OneD, NekDouble > &Bwd) |
virtual const std::vector< bool > & | v_GetLeftAdjacentFaces (void) const |
virtual void | v_ExtractTracePhys (Array< OneD, NekDouble > &outarray) |
virtual void | v_ExtractTracePhys (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual void | v_MultiplyByInvMassMatrix (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate) |
virtual void | v_HelmSolve (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const FlagList &flags, const StdRegions::ConstFactorMap &factors, const StdRegions::VarCoeffMap &varcoeff, const MultiRegions::VarFactorsMap &varfactors, const Array< OneD, const NekDouble > &dirForcing, const bool PhysSpaceForcing) |
virtual void | v_LinearAdvectionDiffusionReactionSolve (const Array< OneD, Array< OneD, NekDouble > > &velocity, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const NekDouble lambda, CoeffState coeffstate=eLocal, const Array< OneD, const NekDouble > &dirForcing=NullNekDouble1DArray) |
virtual void | v_LinearAdvectionReactionSolve (const Array< OneD, Array< OneD, NekDouble > > &velocity, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const NekDouble lambda, CoeffState coeffstate=eLocal, const Array< OneD, const NekDouble > &dirForcing=NullNekDouble1DArray) |
virtual void | v_ImposeDirichletConditions (Array< OneD, NekDouble > &outarray) |
virtual void | v_FillBndCondFromField () |
virtual void | v_FillBndCondFromField (const int nreg) |
virtual void | v_Reset () |
Reset geometry information, metrics, matrix managers and geometry information. More... | |
virtual void | v_LocalToGlobal (bool UseComm) |
virtual void | v_LocalToGlobal (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, bool UseComm) |
virtual void | v_GlobalToLocal (void) |
virtual void | v_GlobalToLocal (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual void | v_BwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate) |
virtual void | v_BwdTrans_IterPerExp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual void | v_FwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate) |
virtual void | v_FwdTrans_IterPerExp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual void | v_FwdTrans_BndConstrained (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual void | v_SmoothField (Array< OneD, NekDouble > &field) |
virtual void | v_IProductWRTBase (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate) |
virtual void | v_IProductWRTBase_IterPerExp (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual void | v_GeneralMatrixOp (const GlobalMatrixKey &gkey, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate) |
virtual void | v_GetCoords (Array< OneD, NekDouble > &coord_0, Array< OneD, NekDouble > &coord_1, Array< OneD, NekDouble > &coord_2=NullNekDouble1DArray) |
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) |
virtual void | v_PhysDeriv (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d) |
virtual void | v_PhysDeriv (Direction edir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out_d) |
virtual void | v_CurlCurl (Array< OneD, Array< OneD, NekDouble > > &Vel, Array< OneD, Array< OneD, NekDouble > > &Q) |
virtual void | v_PhysDirectionalDeriv (const Array< OneD, const NekDouble > &direction, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual void | v_GetMovingFrames (const SpatialDomains::GeomMMF MMFdir, const Array< OneD, const NekDouble > &CircCentre, Array< OneD, Array< OneD, NekDouble > > &outarray) |
virtual void | v_HomogeneousFwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate=eLocal, bool Shuff=true, bool UnShuff=true) |
virtual void | v_HomogeneousBwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, CoeffState coeffstate=eLocal, bool Shuff=true, bool UnShuff=true) |
virtual void | v_DealiasedProd (const Array< OneD, NekDouble > &inarray1, const Array< OneD, NekDouble > &inarray2, Array< OneD, NekDouble > &outarray, CoeffState coeffstate=eLocal) |
virtual void | v_DealiasedDotProd (const Array< OneD, Array< OneD, NekDouble > > &inarray1, const Array< OneD, Array< OneD, NekDouble > > &inarray2, Array< OneD, Array< OneD, NekDouble > > &outarray, CoeffState coeffstate=eLocal) |
virtual void | v_GetBCValues (Array< OneD, NekDouble > &BndVals, const Array< OneD, NekDouble > &TotField, int BndID) |
virtual void | v_NormVectorIProductWRTBase (Array< OneD, const NekDouble > &V1, Array< OneD, const NekDouble > &V2, Array< OneD, NekDouble > &outarray, int BndID) |
virtual void | v_NormVectorIProductWRTBase (Array< OneD, Array< OneD, NekDouble > > &V, Array< OneD, NekDouble > &outarray) |
virtual void | v_SetUpPhysNormals () |
virtual void | v_GetBoundaryToElmtMap (Array< OneD, int > &ElmtID, Array< OneD, int > &EdgeID) |
virtual void | v_GetBndElmtExpansion (int i, std::shared_ptr< ExpList > &result, const bool DeclareCoeffPhysArrays) |
virtual void | v_ExtractElmtToBndPhys (const int i, const Array< OneD, NekDouble > &elmt, Array< OneD, NekDouble > &boundary) |
virtual void | v_ExtractPhysToBndElmt (const int i, const Array< OneD, const NekDouble > &phys, Array< OneD, NekDouble > &bndElmt) |
virtual void | v_ExtractPhysToBnd (const int i, const Array< OneD, const NekDouble > &phys, Array< OneD, NekDouble > &bnd) |
virtual void | v_GetBoundaryNormals (int i, Array< OneD, Array< OneD, NekDouble > > &normals) |
virtual void | v_ReadGlobalOptimizationParameters () |
virtual std::vector< LibUtilities::FieldDefinitionsSharedPtr > | v_GetFieldDefinitions (void) |
virtual void | v_GetFieldDefinitions (std::vector< LibUtilities::FieldDefinitionsSharedPtr > &fielddef) |
virtual void | v_AppendFieldData (LibUtilities::FieldDefinitionsSharedPtr &fielddef, std::vector< NekDouble > &fielddata) |
virtual void | v_AppendFieldData (LibUtilities::FieldDefinitionsSharedPtr &fielddef, std::vector< NekDouble > &fielddata, Array< OneD, NekDouble > &coeffs) |
virtual void | v_ExtractDataToCoeffs (LibUtilities::FieldDefinitionsSharedPtr &fielddef, std::vector< NekDouble > &fielddata, std::string &field, Array< OneD, NekDouble > &coeffs) |
Extract data from raw field data into expansion list. More... | |
virtual void | v_ExtractCoeffsToCoeffs (const std::shared_ptr< ExpList > &fromExpList, const Array< OneD, const NekDouble > &fromCoeffs, Array< OneD, NekDouble > &toCoeffs) |
virtual void | v_WriteTecplotHeader (std::ostream &outfile, std::string var="") |
virtual void | v_WriteTecplotZone (std::ostream &outfile, int expansion) |
virtual void | v_WriteTecplotField (std::ostream &outfile, int expansion) |
virtual void | v_WriteTecplotConnectivity (std::ostream &outfile, int expansion) |
virtual void | v_WriteVtkPieceHeader (std::ostream &outfile, int expansion, int istrip) |
virtual void | v_WriteVtkPieceData (std::ostream &outfile, int expansion, std::string var) |
virtual NekDouble | v_L2 (const Array< OneD, const NekDouble > &phys, const Array< OneD, const NekDouble > &soln=NullNekDouble1DArray) |
virtual NekDouble | v_Integral (const Array< OneD, const NekDouble > &inarray) |
virtual NekDouble | v_VectorFlux (const Array< OneD, Array< OneD, NekDouble > > &inarray) |
virtual Array< OneD, const NekDouble > | v_HomogeneousEnergy (void) |
virtual LibUtilities::TranspositionSharedPtr | v_GetTransposition (void) |
virtual NekDouble | v_GetHomoLen (void) |
virtual void | v_SetHomoLen (const NekDouble lhom) |
virtual Array< OneD, const unsigned int > | v_GetZIDs (void) |
virtual Array< OneD, const unsigned int > | v_GetYIDs (void) |
virtual void | v_PhysInterp1DScaled (const NekDouble scale, const Array< OneD, NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual void | v_PhysGalerkinProjection1DScaled (const NekDouble scale, const Array< OneD, NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
virtual void | v_ClearGlobalLinSysManager (void) |
void | ExtractFileBCs (const std::string &fileName, LibUtilities::CommSharedPtr comm, const std::string &varName, const std::shared_ptr< ExpList > locExpList) |
Static Protected Member Functions | |
static SpatialDomains::BoundaryConditionShPtr | GetBoundaryCondition (const SpatialDomains::BoundaryConditionCollection &collection, unsigned int index, const std::string &variable) |
Protected Attributes | |
LibUtilities::CommSharedPtr | m_comm |
Communicator. More... | |
LibUtilities::SessionReaderSharedPtr | m_session |
Session. More... | |
SpatialDomains::MeshGraphSharedPtr | m_graph |
Mesh associated with this expansion list. More... | |
int | m_ncoeffs |
The total number of local degrees of freedom. m_ncoeffs \(=N_{\mathrm{eof}}=\sum_{e=1}^{{N_{\mathrm{el}}}}N^{e}_l\). More... | |
int | m_npoints |
Array< OneD, NekDouble > | m_coeffs |
Concatenation of all local expansion coefficients. More... | |
Array< OneD, NekDouble > | m_phys |
The global expansion evaluated at the quadrature points. More... | |
bool | m_physState |
The state of the array m_phys. More... | |
std::shared_ptr< LocalRegions::ExpansionVector > | m_exp |
The list of local expansions. More... | |
Collections::CollectionVector | m_collections |
std::vector< int > | m_coll_coeff_offset |
Offset of elemental data into the array m_coeffs. More... | |
std::vector< int > | m_coll_phys_offset |
Offset of elemental data into the array m_phys. More... | |
Array< OneD, int > | m_coeff_offset |
Offset of elemental data into the array m_coeffs. More... | |
Array< OneD, int > | m_phys_offset |
Offset of elemental data into the array m_phys. More... | |
NekOptimize::GlobalOptParamSharedPtr | m_globalOptParam |
BlockMatrixMapShPtr | m_blockMat |
bool | m_WaveSpace |
std::unordered_map< int, int > | m_elmtToExpId |
Mapping from geometry ID of element to index inside m_exp. More... | |
Private Member Functions | |
virtual const Array< OneD, const SpatialDomains::BoundaryConditionShPtr > & | v_GetBndConditions () |
virtual Array< OneD, SpatialDomains::BoundaryConditionShPtr > & | v_UpdateBndConditions () |
virtual void | v_EvaluateBoundaryConditions (const NekDouble time=0.0, const std::string varName="", const NekDouble x2_in=NekConstants::kNekUnsetDouble, const NekDouble x3_in=NekConstants::kNekUnsetDouble) |
virtual std::map< int, RobinBCInfoSharedPtr > | v_GetRobinBCInfo (void) |
virtual void | v_GetPeriodicEntities (PeriodicMap &periodicVerts, PeriodicMap &periodicEdges, PeriodicMap &periodicFaces) |
virtual LibUtilities::BasisSharedPtr | v_GetHomogeneousBasis (void) |
virtual void | v_SetHomo1DSpecVanVisc (Array< OneD, NekDouble > visc) |
virtual std::shared_ptr< ExpList > & | v_GetPlane (int n) |
Base class for all multi-elemental spectral/hp expansions.
All multi-elemental expansions \(u^{\delta}(\boldsymbol{x})\) can be considered as the assembly of the various elemental contributions. On a discrete level, this yields,
\[u^{\delta}(\boldsymbol{x}_i)=\sum_{e=1}^{{N_{\mathrm{el}}}} \sum_{n=0}^{N^{e}_m-1}\hat{u}_n^e\phi_n^e(\boldsymbol{x}_i).\]
where \({N_{\mathrm{el}}}\) is the number of elements and \(N^{e}_m\) is the local elemental number of expansion modes. As it is the lowest level class, it contains the definition of the common data and common routines to all multi-elemental expansions.
The class stores a vector of expansions, m_exp, (each derived from StdRegions::StdExpansion) which define the constituent components of the domain. The coefficients from these expansions are concatenated in m_coeffs, while the expansion evaluated at the quadrature points is stored in m_phys.
Nektar::MultiRegions::ExpList::ExpList | ( | ) |
The default constructor.
Creates an empty expansion list. The expansion list will typically be populated by a derived class (namely one of MultiRegions::ExpList1D, MultiRegions::ExpList2D or MultiRegions::ExpList3D).
Definition at line 96 of file ExpList.cpp.
References Nektar::MultiRegions::eNoType, and SetExpType().
Referenced by Nektar::MultiRegions::ExpList0D::ExpList0D(), and Nektar::MultiRegions::ExpList1D::ExpList1D().
Nektar::MultiRegions::ExpList::ExpList | ( | const LibUtilities::SessionReaderSharedPtr & | pSession | ) |
The default constructor.
Creates an empty expansion list. The expansion list will typically be populated by a derived class (namely one of MultiRegions::ExpList1D, MultiRegions::ExpList2D or MultiRegions::ExpList3D).
Definition at line 121 of file ExpList.cpp.
References Nektar::MultiRegions::eNoType, and SetExpType().
Nektar::MultiRegions::ExpList::ExpList | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
const SpatialDomains::MeshGraphSharedPtr & | pGraph | ||
) |
The default constructor.
Creates an empty expansion list. The expansion list will typically be populated by a derived class (namely one of MultiRegions::ExpList1D, MultiRegions::ExpList2D or MultiRegions::ExpList3D).
Definition at line 147 of file ExpList.cpp.
References Nektar::MultiRegions::eNoType, and SetExpType().
Nektar::MultiRegions::ExpList::ExpList | ( | const ExpList & | in, |
const std::vector< unsigned int > & | eIDs, | ||
const bool | DeclareCoeffPhysArrays = true |
||
) |
Constructor copying only elements defined in eIds.
Copies the eIds elements from an existing expansion list.
in | Source expansion list. |
in | elements that will be in the new exp list. |
Definition at line 173 of file ExpList.cpp.
References Nektar::MultiRegions::eNoType, m_coeffs, m_exp, m_ncoeffs, m_npoints, m_phys, and SetExpType().
Nektar::MultiRegions::ExpList::ExpList | ( | const ExpList & | in, |
const bool | DeclareCoeffPhysArrays = true |
||
) |
The copy constructor.
Copies an existing expansion list.
in | Source expansion list. |
Definition at line 212 of file ExpList.cpp.
References Nektar::MultiRegions::eNoType, m_coeffs, m_ncoeffs, m_npoints, m_phys, and SetExpType().
|
virtual |
|
inline |
Definition at line 2303 of file ExpList.h.
References v_AddFwdBwdTraceIntegral().
Referenced by GetNumElmts().
|
inline |
Definition at line 2288 of file ExpList.h.
References v_AddTraceIntegral().
Referenced by GetNumElmts().
|
inline |
Definition at line 2296 of file ExpList.h.
References v_AddTraceIntegral().
|
inline |
Append the element data listed in elements fielddef->m_ElementIDs onto fielddata.
Definition at line 913 of file ExpList.h.
References v_AppendFieldData().
|
inline |
Append the data in coeffs listed in elements fielddef->m_ElementIDs onto fielddata.
Definition at line 923 of file ExpList.h.
References ExtractCoeffsToCoeffs(), ExtractDataToCoeffs(), ExtractElmtDataToCoeffs(), GenerateElementVector(), MULTI_REGIONS_EXPORT, and v_AppendFieldData().
void Nektar::MultiRegions::ExpList::ApplyGeomInfo | ( | ) |
Apply geometry information to each expansion.
Configures geometric info, such as tangent direction, on each expansion.
graph2D | Mesh |
Definition at line 1570 of file ExpList.cpp.
Referenced by Nektar::MultiRegions::DisContField1D::DisContField1D(), and Nektar::MultiRegions::DisContField3D::DisContField3D().
|
inline |
Definition at line 1775 of file ExpList.h.
References v_BwdTrans().
Referenced by Nektar::MultiRegions::DisContField2D::L2_DGDeriv(), and v_WriteTecplotField().
|
inline |
This function elementally evaluates the backward transformation of the global spectral/hp element expansion.
Definition at line 1786 of file ExpList.h.
References v_BwdTrans_IterPerExp().
Referenced by Nektar::MultiRegions::ContField1D::BwdTrans(), Nektar::MultiRegions::ContField2D::BwdTrans(), and Nektar::MultiRegions::ContField3D::v_BwdTrans().
Definition at line 3432 of file ExpList.cpp.
References v_ClearGlobalLinSysManager().
void Nektar::MultiRegions::ExpList::CreateCollections | ( | Collections::ImplementationType | ImpType = Collections::eNoImpType | ) |
Construct collections of elements containing a single element type and polynomial order from the list of expansions.
Definition at line 3295 of file ExpList.cpp.
References Nektar::Collections::CollectionOptimisation::GetDefaultImplementationType(), Nektar::Collections::CollectionOptimisation::GetMaxCollectionSize(), Nektar::Collections::CollectionOptimisation::GetOperatorImpMap(), Nektar::Collections::CollectionOptimisation::IsUsingAutotuning(), m_coeff_offset, m_coll_coeff_offset, m_coll_phys_offset, m_collections, m_comm, m_exp, m_phys_offset, m_session, and Nektar::Collections::CollectionOptimisation::SetWithTimings().
Referenced by Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::ExpList2D::ExpList2D(), and Nektar::MultiRegions::ExpList3D::ExpList3D().
|
inline |
Definition at line 1922 of file ExpList.h.
References v_CurlCurl().
Referenced by GetNumElmts().
|
inline |
Definition at line 1970 of file ExpList.h.
References v_DealiasedDotProd().
|
inline |
Definition at line 1958 of file ExpList.h.
References v_DealiasedProd().
Referenced by Nektar::MultiRegions::ExpListHomogeneous2D::v_DealiasedDotProd().
|
inline |
Evaulates the maximum number of modes in the elemental basis order over all elements.
Evaulates the maximum number of modes in the elemental basis order over all elements
Definition at line 1572 of file ExpList.h.
References m_exp.
|
inline |
Returns the vector of the number of modes in the elemental basis order over all elements.
Definition at line 1589 of file ExpList.h.
References m_exp.
|
inline |
Definition at line 2356 of file ExpList.h.
References v_EvaluateBoundaryConditions().
Referenced by Nektar::MultiRegions::DisContField1D::DisContField1D(), Nektar::MultiRegions::DisContField2D::DisContField2D(), Nektar::MultiRegions::DisContField3D::DisContField3D(), and GetNumElmts().
void Nektar::MultiRegions::ExpList::ExponentialFilter | ( | Array< OneD, NekDouble > & | array, |
const NekDouble | alpha, | ||
const NekDouble | exponent, | ||
const NekDouble | cutoff | ||
) |
Definition at line 729 of file ExpList.cpp.
References m_phys_offset.
void Nektar::MultiRegions::ExpList::ExtractCoeffsToCoeffs | ( | const std::shared_ptr< ExpList > & | fromExpList, |
const Array< OneD, const NekDouble > & | fromCoeffs, | ||
Array< OneD, NekDouble > & | toCoeffs | ||
) |
Extract the data from fromField using fromExpList the coeffs using the basic ExpList Elemental expansions rather than planes in homogeneous case.
Definition at line 2333 of file ExpList.cpp.
References v_ExtractCoeffsToCoeffs().
Referenced by AppendFieldData().
void Nektar::MultiRegions::ExpList::ExtractDataToCoeffs | ( | LibUtilities::FieldDefinitionsSharedPtr & | fielddef, |
std::vector< NekDouble > & | fielddata, | ||
std::string & | field, | ||
Array< OneD, NekDouble > & | coeffs | ||
) |
Extract the data in fielddata into the coeffs.
Definition at line 2324 of file ExpList.cpp.
References v_ExtractDataToCoeffs().
Referenced by AppendFieldData().
void Nektar::MultiRegions::ExpList::ExtractElmtDataToCoeffs | ( | LibUtilities::FieldDefinitionsSharedPtr & | fielddef, |
std::vector< NekDouble > & | fielddata, | ||
std::string & | field, | ||
Array< OneD, NekDouble > & | coeffs | ||
) |
Extract the data in fielddata into the coeffs using the basic ExpList Elemental expansions rather than planes in homogeneous case.
Referenced by AppendFieldData().
|
inline |
Definition at line 2422 of file ExpList.h.
References v_ExtractElmtToBndPhys().
Referenced by GetNumElmts().
|
protected |
Definition at line 2095 of file ExpList.cpp.
References ASSERTL0, Nektar::LibUtilities::NekFactory< tKey, tBase, tParam >::CreateInstance(), Nektar::LibUtilities::GetFieldIOFactory(), Nektar::LibUtilities::FieldIO::GetFileType(), and m_session.
Referenced by Nektar::MultiRegions::DisContField3D::v_EvaluateBoundaryConditions(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_EvaluateBoundaryConditions(), Nektar::MultiRegions::DisContField2D::v_EvaluateBoundaryConditions(), and v_GetNumElmts().
|
inline |
Definition at line 2436 of file ExpList.h.
References v_ExtractPhysToBnd().
Referenced by GetNumElmts().
|
inline |
Definition at line 2429 of file ExpList.h.
References v_ExtractPhysToBndElmt().
Referenced by GetNumElmts().
Definition at line 2331 of file ExpList.h.
References v_ExtractTracePhys().
Referenced by GetNumElmts().
|
inline |
Definition at line 2337 of file ExpList.h.
References v_ExtractTracePhys().
Fill Bnd Condition expansion from the values stored in expansion.
Definition at line 2073 of file ExpList.h.
References v_FillBndCondFromField().
Referenced by WriteVtkPieceData().
|
inline |
Fill Bnd Condition expansion in nreg from the values stored in expansion.
Definition at line 2078 of file ExpList.h.
References v_FillBndCondFromField().
|
inline |
Definition at line 1735 of file ExpList.h.
References v_FwdTrans().
|
inline |
Definition at line 1756 of file ExpList.h.
References v_FwdTrans_BndConstrained().
|
inline |
This function elementally evaluates the forward transformation of a function \(u(\boldsymbol{x})\) onto the global spectral/hp expansion.
Definition at line 1746 of file ExpList.h.
References v_FwdTrans_IterPerExp().
|
protected |
This function assembles the block diagonal matrix of local matrices of the type mtype.
This function assembles the block diagonal matrix \(\underline{\boldsymbol{M}}^e\), which is the concatenation of the local matrices \(\boldsymbol{M}^e\) of the type mtype, that is
\[ \underline{\boldsymbol{M}}^e = \left[ \begin{array}{cccc} \boldsymbol{M}^1 & 0 & \hspace{3mm}0 \hspace{3mm}& 0 \\ 0 & \boldsymbol{M}^2 & 0 & 0 \\ 0 & 0 & \ddots & 0 \\ 0 & 0 & 0 & \boldsymbol{M}^{N_{\mathrm{el}}} \end{array}\right].\]
mtype | the type of matrix to be assembled |
scalar | an optional parameter |
constant | an optional parameter |
Definition at line 869 of file ExpList.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), Nektar::StdRegions::eBwdTrans, Nektar::eDIAGONAL, Nektar::ErrorUtil::efatal, Nektar::StdRegions::eHelmholtz, Nektar::StdRegions::eHybridDGHelmBndLam, Nektar::StdRegions::eHybridDGLamToU, Nektar::StdRegions::eInvHybridDGHelmholtz, Nektar::StdRegions::eInvMass, Nektar::StdRegions::eIProductWRTBase, Nektar::StdRegions::eLaplacian, Nektar::StdRegions::eMass, Nektar::LibUtilities::eNoShapeType, Nektar::MultiRegions::GlobalMatrixKey::GetConstFactors(), Nektar::MultiRegions::GlobalMatrixKey::GetMatrixType(), Nektar::MultiRegions::GlobalMatrixKey::GetNVarCoeffs(), Nektar::MultiRegions::GlobalMatrixKey::GetShapeType(), Nektar::MultiRegions::GlobalMatrixKey::GetVarCoeffs(), m_exp, m_phys_offset, and NEKERROR.
Referenced by GetBlockMatrix().
void Nektar::MultiRegions::ExpList::GeneralGetFieldDefinitions | ( | std::vector< LibUtilities::FieldDefinitionsSharedPtr > & | fielddef, |
int | NumHomoDir = 0 , |
||
Array< OneD, LibUtilities::BasisSharedPtr > & | HomoBasis = LibUtilities::NullBasisSharedPtr1DArray , |
||
std::vector< NekDouble > & | HomoLen = LibUtilities::NullNekDoubleVector , |
||
bool | homoStrips = false , |
||
std::vector< unsigned int > & | HomoSIDs = LibUtilities::NullUnsignedIntVector , |
||
std::vector< unsigned int > & | HomoZIDs = LibUtilities::NullUnsignedIntVector , |
||
std::vector< unsigned int > & | HomoYIDs = LibUtilities::NullUnsignedIntVector |
||
) |
Definition at line 2174 of file ExpList.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), ASSERTL0, ASSERTL1, Nektar::LibUtilities::eHexahedron, Nektar::LibUtilities::eQuadrilateral, Nektar::LibUtilities::eSegment, Nektar::LibUtilities::eTetrahedron, Nektar::LibUtilities::eTriangle, and m_exp.
Referenced by GetNumElmts(), and v_GetFieldDefinitions().
|
inline |
This function calculates the result of the multiplication of a matrix of type specified by mkey with a vector given by inarray.
This operation is equivalent to the evaluation of \(\underline{\boldsymbol{M}}^e\boldsymbol{\hat{u}}_l\), that is,
\[ \left[ \begin{array}{cccc} \boldsymbol{M}^1 & 0 & \hspace{3mm}0 \hspace{3mm}& 0 \\ 0 & \boldsymbol{M}^2 & 0 & 0 \\ 0 & 0 & \ddots & 0 \\ 0 & 0 & 0 & \boldsymbol{M}^{N_{\mathrm{el}}} \end{array} \right] *\left [ \begin{array}{c} \boldsymbol{\hat{u}}^{1} \\ \boldsymbol{\hat{u}}^{2} \\ \vdots \\ \boldsymbol{\hat{u}}^{{{N_{\mathrm{el}}}}} \end{array} \right ]\]
where \(\boldsymbol{M}^e\) are the local matrices of type specified by the key mkey. The decoupling of the local matrices allows for a local evaluation of the operation. However, rather than a local matrix-vector multiplication, the local operations are evaluated as implemented in the function StdRegions::StdExpansion::GeneralMatrixOp.
mkey | This key uniquely defines the type matrix required for the operation. |
inarray | The vector \(\boldsymbol{\hat{u}}_l\) of size \(N_{\mathrm{eof}}\). |
outarray | The resulting vector of size \(N_{\mathrm{eof}}\). |
Definition at line 2394 of file ExpList.h.
References v_GeneralMatrixOp().
Referenced by Nektar::MultiRegions::ContField3D::GenerateDirBndCondForcing(), and GetNumElmts().
void Nektar::MultiRegions::ExpList::GeneralMatrixOp_IterPerExp | ( | const GlobalMatrixKey & | gkey, |
const Array< OneD, const NekDouble > & | inarray, | ||
Array< OneD, NekDouble > & | outarray | ||
) |
Definition at line 1019 of file ExpList.cpp.
References Nektar::MultiRegions::GlobalMatrixKey::GetConstFactors(), Nektar::MultiRegions::GlobalMatrixKey::GetMatrixType(), Nektar::MultiRegions::GlobalMatrixKey::GetNVarCoeffs(), Nektar::MultiRegions::GlobalMatrixKey::GetVarCoeffs(), m_coeff_offset, m_globalOptParam, m_phys_offset, and MultiplyByBlockMatrix().
Referenced by GetNumElmts(), Nektar::MultiRegions::ContField3D::v_GeneralMatrixOp(), Nektar::MultiRegions::ContField1D::v_GeneralMatrixOp(), Nektar::MultiRegions::ContField2D::v_GeneralMatrixOp(), and v_GeneralMatrixOp().
void Nektar::MultiRegions::ExpList::GenerateElementVector | ( | const int | ElementID, |
const NekDouble | scalar1, | ||
const NekDouble | scalar2, | ||
Array< OneD, NekDouble > & | outarray | ||
) |
Generate vector v such that v[i] = scalar1 if i is in the element < ElementID. Otherwise, v[i] = scalar2.
Definition at line 2511 of file ExpList.cpp.
References m_phys_offset, and Vmath::Vcopy().
Referenced by AppendFieldData().
|
protected |
Generate a GlobalLinSys from information provided by the key "mkey" and the mapping provided in LocToGloBaseMap.
Definition at line 1381 of file ExpList.cpp.
References ASSERTL0, Nektar::LibUtilities::NekFactory< tKey, tBase, tParam >::CreateInstance(), Nektar::MultiRegions::eSIZE_GlobalSysSolnType, Nektar::MultiRegions::GetGlobalLinSysFactory(), Nektar::MultiRegions::GlobalLinSysKey::GetGlobalSysSolnType(), GetRobinBCInfo(), GetSharedThisPtr(), and Nektar::MultiRegions::GlobalSysSolnTypeMap.
Referenced by Nektar::MultiRegions::DisContField2D::GetGlobalBndLinSys(), Nektar::MultiRegions::DisContField3D::GetGlobalBndLinSys(), and Nektar::MultiRegions::DisContField1D::GetGlobalBndLinSys().
|
protected |
This operation constructs the global linear system of type mkey.
Consider a linear system \(\boldsymbol{M\hat{u}}_g=\boldsymbol{f}\) to be solved. Dependent on the solution method, this function constructs
mkey | A key which uniquely defines the global matrix to be constructed. |
locToGloMap | Contains the mapping array and required information for the transformation from local to global degrees of freedom. |
Definition at line 1362 of file ExpList.cpp.
References ASSERTL0, Nektar::LibUtilities::NekFactory< tKey, tBase, tParam >::CreateInstance(), Nektar::MultiRegions::eSIZE_GlobalSysSolnType, Nektar::MultiRegions::GetGlobalLinSysFactory(), Nektar::MultiRegions::GlobalLinSysKey::GetGlobalSysSolnType(), GetSharedThisPtr(), and Nektar::MultiRegions::GlobalSysSolnTypeMap.
Referenced by Nektar::MultiRegions::ContField3D::GenGlobalLinSys(), Nektar::MultiRegions::ContField1D::GenGlobalLinSys(), and Nektar::MultiRegions::ContField2D::GenGlobalLinSys().
|
protected |
Generates a global matrix from the given key and map.
Retrieves local matrices from each expansion in the expansion list and combines them together to generate a global matrix system.
mkey | Matrix key for the matrix to be generated. |
locToGloMap | Local to global mapping. |
Definition at line 1086 of file ExpList.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), Nektar::StdRegions::eBwdTrans, Nektar::ErrorUtil::efatal, Nektar::StdRegions::eHelmholtz, Nektar::StdRegions::eHybridDGHelmBndLam, Nektar::StdRegions::eIProductWRTBase, Nektar::StdRegions::eLaplacian, Nektar::StdRegions::eMass, Nektar::MultiRegions::GlobalMatrixKey::GetConstFactors(), Nektar::MultiRegions::GlobalMatrixKey::GetMatrixType(), Nektar::MultiRegions::GlobalMatrixKey::GetNVarCoeffs(), Nektar::MultiRegions::GlobalMatrixKey::GetVarCoeffs(), m_npoints, m_phys_offset, m_session, and NEKERROR.
Referenced by Nektar::MultiRegions::ContField3D::GetGlobalMatrix(), and Nektar::MultiRegions::ContField2D::GetGlobalMatrix().
|
protected |
Definition at line 1222 of file ExpList.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), Blas::Dscal(), Nektar::eFULL, Nektar::StdRegions::eHelmholtz, Nektar::StdRegions::eLaplacian, Nektar::ePOSITIVE_DEFINITE_SYMMETRIC, Nektar::ePOSITIVE_DEFINITE_SYMMETRIC_BANDED, Nektar::MultiRegions::GlobalMatrixKey::GetConstFactors(), Nektar::MultiRegions::GlobalMatrixKey::GetMatrixType(), Nektar::MultiRegions::GlobalMatrixKey::GetNVarCoeffs(), GetRobinBCInfo(), Nektar::MultiRegions::GlobalMatrixKey::GetVarCoeffs(), m_coeff_offset, and m_phys_offset.
Referenced by Nektar::MultiRegions::ContField2D::LinearAdvectionEigs().
|
inline |
Returns the total number of qudature points scaled by the factor scale on each 1D direction.
Definition at line 1619 of file ExpList.h.
References m_exp.
|
inline |
Definition at line 1982 of file ExpList.h.
References v_GetBCValues().
|
protected |
Definition at line 1004 of file ExpList.cpp.
References GenBlockMatrix(), and m_blockMat.
Referenced by MultiplyByBlockMatrix(), MultiplyByElmtInvMass(), Nektar::MultiRegions::DisContField3D::v_GeneralMatrixOp(), Nektar::MultiRegions::DisContField2D::v_GeneralMatrixOp(), Nektar::MultiRegions::DisContField3D::v_HelmSolve(), Nektar::MultiRegions::DisContField2D::v_HelmSolve(), and Nektar::MultiRegions::DisContField1D::v_HelmSolve().
|
inline |
Definition at line 2239 of file ExpList.h.
References v_GetBndCondExpansions().
Referenced by GetNumElmts(), v_ExtractElmtToBndPhys(), v_ExtractPhysToBnd(), v_ExtractPhysToBndElmt(), and v_GetBoundaryNormals().
|
inline |
Definition at line 2345 of file ExpList.h.
References v_GetBndConditions().
Referenced by GetNumElmts().
|
inline |
Definition at line 2415 of file ExpList.h.
References v_GetBndElmtExpansion().
Referenced by GetNumElmts().
|
staticprotected |
Definition at line 3261 of file ExpList.cpp.
References ASSERTL1.
Referenced by Nektar::MultiRegions::DisContField2D::FindPeriodicEdges(), Nektar::MultiRegions::DisContField3D::FindPeriodicFaces(), Nektar::MultiRegions::DisContField1D::FindPeriodicVertices(), Nektar::MultiRegions::DisContField1D::GenerateBoundaryConditionExpansion(), Nektar::MultiRegions::DisContField3D::GenerateBoundaryConditionExpansion(), Nektar::MultiRegions::DisContField2D::GenerateBoundaryConditionExpansion(), Nektar::MultiRegions::DisContField1D::SetBoundaryConditionExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::SetupBoundaryConditions(), and v_GetNumElmts().
|
inline |
Definition at line 2443 of file ExpList.h.
References v_GetBoundaryNormals().
Referenced by GetNumElmts().
|
inline |
Definition at line 2409 of file ExpList.h.
References v_GetBoundaryToElmtMap().
Referenced by Nektar::MultiRegions::DisContField1D::DisContField1D(), Nektar::MultiRegions::DisContField2D::DisContField2D(), Nektar::MultiRegions::DisContField3D::DisContField3D(), GetNumElmts(), v_ExtractElmtToBndPhys(), v_ExtractPhysToBnd(), v_ExtractPhysToBndElmt(), Nektar::MultiRegions::DisContField3D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField2D::v_GetBndElmtExpansion(), v_GetBoundaryNormals(), Nektar::MultiRegions::DisContField1D::v_GetRobinBCInfo(), Nektar::MultiRegions::DisContField3D::v_GetRobinBCInfo(), and Nektar::MultiRegions::DisContField2D::v_GetRobinBCInfo().
|
inline |
Get the i th value (coefficient) of m_coeffs.
i | The index of m_coeffs to be returned |
Definition at line 2139 of file ExpList.h.
References m_coeffs.
Referenced by Nektar::MultiRegions::DisContField1D::v_EvaluateBoundaryConditions(), and WriteVtkPieceData().
|
inline |
Get the start offset position for a global list of m_coeffs correspoinding to element n.
Definition at line 2200 of file ExpList.h.
References m_coeff_offset.
Referenced by Nektar::MultiRegions::AssemblyMapCG::AssemblyMapCG(), export_ExpList(), GetNumElmts(), Nektar::MultiRegions::DisContField3DHomogeneous1D::NormVectorIProductWRTBase(), Nektar::MultiRegions::LocTraceToTraceMap::Setup2D(), Nektar::MultiRegions::LocTraceToTraceMap::Setup3D(), Nektar::MultiRegions::AssemblyMapCG::SetUpUniversalC0ContMap(), Nektar::MultiRegions::DisContField2D::v_AddFwdBwdTraceIntegral(), Nektar::MultiRegions::DisContField1D::v_AddTraceIntegral(), Nektar::MultiRegions::DisContField2D::v_AddTraceIntegral(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::ExpList3DHomogeneous1D::v_HomogeneousEnergy(), and v_NormVectorIProductWRTBase().
|
inline |
This function returns (a reference to) the array \(\boldsymbol{\hat{u}}_l\) (implemented as m_coeffs) containing all local expansion coefficients.
As the function returns a constant reference to a const Array, it is not possible to modify the underlying data of the array m_coeffs. In order to do so, use the function UpdateCoeffs instead.
Definition at line 2062 of file ExpList.h.
References m_coeffs.
Referenced by Nektar::MultiRegions::DisContField3DHomogeneous2D::EvaluateBoundaryConditions(), Nektar::MultiRegions::ExpList1D::PostProcess(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::ExpList3DHomogeneous1D::v_HomogeneousEnergy(), and WriteVtkPieceData().
|
inline |
Get the i th value (coefficient) of m_coeffs.
i | The index of m_coeffs to be returned |
Definition at line 2148 of file ExpList.h.
References m_coeffs.
|
inline |
Returns the comm object.
Definition at line 980 of file ExpList.h.
References m_comm.
|
inline |
This function returns the dimension of the coordinates of the element eid.
eid | The index of the element to be checked. |
Definition at line 2013 of file ExpList.h.
References ASSERTL2, and m_exp.
Referenced by Nektar::MultiRegions::ExpList2DHomogeneous1D::GetCoords(), GetExpIndex(), IProductWRTDerivBase(), PhysEvaluate(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBoundaryNormals(), v_GetBoundaryNormals(), Nektar::MultiRegions::ExpList2DHomogeneous1D::v_GetCoords(), v_GetCoords(), Nektar::MultiRegions::ExpList2DHomogeneous1D::v_GetNormals(), Nektar::MultiRegions::ExpList2D::v_GetNormals(), Nektar::MultiRegions::ExpList1D::v_GetNormals(), v_NormVectorIProductWRTBase(), Nektar::MultiRegions::ExpList1D::v_Upwind(), Nektar::MultiRegions::ExpList1DHomogeneous2D::v_WriteTecplotZone(), Nektar::MultiRegions::ExpList2DHomogeneous1D::v_WriteTecplotZone(), v_WriteTecplotZone(), and WriteVtkPieceData().
|
inline |
This function calculates the coordinates of all the elemental quadrature points \(\boldsymbol{x}_i\).
Definition at line 1854 of file ExpList.h.
References v_GetCoords().
Referenced by v_WriteTecplotZone().
|
inline |
This function returns the vector of elements in the expansion.
Definition at line 2191 of file ExpList.h.
References m_exp.
Referenced by Nektar::MultiRegions::AssemblyMapCG::AssemblyMapCG(), Nektar::MultiRegions::AssemblyMapDG::AssemblyMapDG(), Nektar::MultiRegions::ContField3DHomogeneous1D::ContField3DHomogeneous1D(), Nektar::MultiRegions::ContField3DHomogeneous2D::ContField3DHomogeneous2D(), Nektar::MultiRegions::AssemblyMapCG::CreateGraph(), Nektar::MultiRegions::DisContField3DHomogeneous1D::DisContField3DHomogeneous1D(), Nektar::MultiRegions::DisContField3DHomogeneous2D::DisContField3DHomogeneous2D(), Nektar::MultiRegions::ExpList1DHomogeneous2D::ExpList1DHomogeneous2D(), Nektar::MultiRegions::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::ExpList3DHomogeneous2D::ExpList3DHomogeneous2D(), Nektar::MultiRegions::ExpList3DHomogeneous1D::GenExpList3DHomogeneous1D(), Nektar::MultiRegions::DisContField3DHomogeneous1D::GetBCValues(), GetExp(), GetExpIndex(), GetNumElmts(), Nektar::MultiRegions::LocTraceToTraceMap::LocTraceToTraceMap(), Nektar::MultiRegions::DisContField3DHomogeneous1D::NormVectorIProductWRTBase(), Nektar::MultiRegions::ExpList1D::PostProcess(), Nektar::MultiRegions::LocTraceToTraceMap::Setup2D(), Nektar::MultiRegions::LocTraceToTraceMap::Setup3D(), Nektar::MultiRegions::AssemblyMapCG::SetUpUniversalC0ContMap(), Nektar::MultiRegions::AssemblyMapDG::SetUpUniversalDGMap(), Nektar::MultiRegions::AssemblyMapDG::SetUpUniversalTraceMap(), v_ExtractElmtToBndPhys(), v_ExtractPhysToBnd(), v_ExtractPhysToBndElmt(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBoundaryNormals(), v_GetBoundaryNormals(), v_GetCoords(), Nektar::MultiRegions::ExpList3DHomogeneous1D::v_HomogeneousEnergy(), Nektar::MultiRegions::AssemblyMapCG::v_LinearSpaceMap(), and v_WriteTecplotHeader().
|
inline |
This function returns (a shared pointer to) the local elemental expansion of the \(n^{\mathrm{th}}\) element.
n | The index of the element concerned. |
Definition at line 2182 of file ExpList.h.
References m_exp.
LocalRegions::ExpansionSharedPtr & Nektar::MultiRegions::ExpList::GetExp | ( | const Array< OneD, const NekDouble > & | gloCoord | ) |
This function returns (a shared pointer to) the local elemental expansion containing the arbitrary point given by gloCoord.
Definition at line 1430 of file ExpList.cpp.
References GetExp(), and GetExpIndex().
int Nektar::MultiRegions::ExpList::GetExpIndex | ( | const Array< OneD, const NekDouble > & | gloCoord, |
NekDouble | tol = 0.0 , |
||
bool | returnNearestElmt = false |
||
) |
This function returns the index of the local elemental expansion containing the arbitrary point given by gloCoord.
Definition at line 1442 of file ExpList.cpp.
Referenced by GetExp(), GetNumElmts(), and PhysEvaluate().
int Nektar::MultiRegions::ExpList::GetExpIndex | ( | const Array< OneD, const NekDouble > & | gloCoords, |
Array< OneD, NekDouble > & | locCoords, | ||
NekDouble | tol = 0.0 , |
||
bool | returnNearestElmt = false |
||
) |
This function returns the index and the Local Cartesian Coordinates locCoords of the local elemental expansion containing the arbitrary point given by gloCoords.
Definition at line 1453 of file ExpList.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), GetCoordim(), GetExp(), GetNumElmts(), m_elmtToExpId, m_exp, m_graph, CellMLToNektar.pycml::msg, CellMLToNektar.cellml_metadata::p, Vmath::Vcopy(), and WARNINGL1.
|
inline |
This function returns the number of elements in the expansion.
Definition at line 2170 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField3DHomogeneous1D::ContField3DHomogeneous1D(), Nektar::MultiRegions::ContField3DHomogeneous2D::ContField3DHomogeneous2D(), Nektar::MultiRegions::DisContField3DHomogeneous1D::DisContField3DHomogeneous1D(), Nektar::MultiRegions::DisContField3DHomogeneous2D::DisContField3DHomogeneous2D(), Nektar::MultiRegions::DisContField3D::EvaluateHDGPostProcessing(), Nektar::MultiRegions::DisContField2D::EvaluateHDGPostProcessing(), Nektar::MultiRegions::ExpList0D::ExpList0D(), Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::ExpList2D::ExpList2D(), Nektar::MultiRegions::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::ExpList3D::ExpList3D(), Nektar::MultiRegions::ExpList3DHomogeneous2D::ExpList3DHomogeneous2D(), export_ExpList(), Nektar::MultiRegions::ExpList3DHomogeneous1D::GenExpList3DHomogeneous1D(), Nektar::MultiRegions::DisContField1D::GetNegatedFluxNormal(), Nektar::MultiRegions::DisContField2D::L2_DGDeriv(), Nektar::MultiRegions::ExpList1D::PeriodicEval(), PhysGalerkinProjection1DScaled(), Nektar::MultiRegions::DisContField3D::SameTypeOfBoundaryConditions(), Nektar::MultiRegions::DisContField2D::SameTypeOfBoundaryConditions(), Nektar::MultiRegions::DisContField2D::v_AddFwdBwdTraceIntegral(), Nektar::MultiRegions::DisContField1D::v_AddTraceIntegral(), Nektar::MultiRegions::DisContField2D::v_AddTraceIntegral(), Nektar::MultiRegions::DisContField1D::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField2D::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField3D::v_GetBoundaryToElmtMap(), Nektar::MultiRegions::DisContField1D::v_GetBoundaryToElmtMap(), Nektar::MultiRegions::DisContField2D::v_GetBoundaryToElmtMap(), Nektar::MultiRegions::DisContField1D::v_GetFwdBwdTracePhys(), Nektar::MultiRegions::DisContField2D::v_GetFwdBwdTracePhys(), Nektar::MultiRegions::DisContField3D::v_HelmSolve(), Nektar::MultiRegions::DisContField2D::v_HelmSolve(), Nektar::MultiRegions::DisContField1D::v_HelmSolve(), v_NormVectorIProductWRTBase(), Nektar::MultiRegions::ExpList3D::v_PhysGalerkinProjection1DScaled(), Nektar::MultiRegions::ExpList2D::v_PhysGalerkinProjection1DScaled(), Nektar::MultiRegions::ExpList3D::v_PhysInterp1DScaled(), Nektar::MultiRegions::ExpList2D::v_PhysInterp1DScaled(), Nektar::MultiRegions::ExpList3D::v_ReadGlobalOptimizationParameters(), and Nektar::MultiRegions::ExpList2D::v_ReadGlobalOptimizationParameters().
ExpansionType Nektar::MultiRegions::ExpList::GetExpType | ( | void | ) |
Returns the type of the expansion.
Definition at line 271 of file ExpList.cpp.
References m_expType.
Referenced by v_CurlCurl().
|
inline |
Definition at line 898 of file ExpList.h.
References v_GetFieldDefinitions().
|
inline |
Definition at line 904 of file ExpList.h.
References v_GetFieldDefinitions().
|
inline |
Definition at line 2311 of file ExpList.h.
References v_GetFwdBwdTracePhys().
Referenced by GetNumElmts().
|
inline |
Definition at line 2318 of file ExpList.h.
References v_GetFwdBwdTracePhys().
|
inline |
Definition at line 879 of file ExpList.h.
References m_globalOptParam.
|
inline |
Definition at line 985 of file ExpList.h.
References m_graph.
|
inline |
Definition at line 991 of file ExpList.h.
References v_GetHomogeneousBasis().
This function returns the Width of homogeneous direction associaed with the homogeneous expansion.
Definition at line 603 of file ExpList.h.
References v_GetHomoLen().
|
inline |
Definition at line 2326 of file ExpList.h.
References v_GetLeftAdjacentFaces().
Referenced by GetNumElmts().
|
inline |
Definition at line 1866 of file ExpList.h.
References v_GetMovingFrames().
Referenced by GetNumElmts().
|
inline |
Returns the total number of local degrees of freedom \(N_{\mathrm{eof}}=\sum_{e=1}^{{N_{\mathrm{el}}}}N^{e}_m\).
Returns the total number of local degrees of freedom \(N_{\mathrm{eof}}=\sum_{e=1}^{{N_{\mathrm{el}}}}N^{e}_m\).
Definition at line 1558 of file ExpList.h.
References m_ncoeffs.
Referenced by export_ExpList(), Nektar::MultiRegions::ContField3D::GenerateDirBndCondForcing(), Nektar::MultiRegions::ContField2D::LaplaceSolve(), Nektar::MultiRegions::ContField3D::v_FillBndCondFromField(), Nektar::MultiRegions::ContField2D::v_FillBndCondFromField(), Nektar::MultiRegions::ContField3D::v_HelmSolve(), Nektar::MultiRegions::DisContField3D::v_HelmSolve(), Nektar::MultiRegions::DisContField2D::v_HelmSolve(), Nektar::MultiRegions::ContField2D::v_HelmSolve(), Nektar::MultiRegions::ContField3D::v_ImposeDirichletConditions(), Nektar::MultiRegions::ContField2D::v_ImposeDirichletConditions(), Nektar::MultiRegions::ContField3D::v_LinearAdvectionDiffusionReactionSolve(), and Nektar::MultiRegions::ContField2D::v_LinearAdvectionDiffusionReactionSolve().
|
inline |
Returns the total number of local degrees of freedom for element eid.
Definition at line 1563 of file ExpList.h.
References m_exp.
|
inline |
Definition at line 2282 of file ExpList.h.
References v_GetNormals().
Referenced by GetNumElmts().
|
inline |
Returns the total number of quadrature points m_npoints \(=Q_{\mathrm{tot}}\).
Definition at line 1640 of file ExpList.h.
References m_npoints.
Referenced by export_ExpList().
|
inline |
This function returns the number of elements in the expansion which may be different for a homogeoenous extended expansionp.
Definition at line 655 of file ExpList.h.
References AddFwdBwdTraceIntegral(), AddTraceIntegral(), CurlCurl(), Nektar::MultiRegions::eLocal, EvaluateBoundaryConditions(), ExtractElmtToBndPhys(), ExtractPhysToBnd(), ExtractPhysToBndElmt(), ExtractTracePhys(), GeneralGetFieldDefinitions(), GeneralMatrixOp(), GeneralMatrixOp_IterPerExp(), GetBndCondExpansions(), GetBndConditions(), GetBndElmtExpansion(), GetBoundaryNormals(), GetBoundaryToElmtMap(), GetCoeff_Offset(), GetExp(), GetExpIndex(), GetFwdBwdTracePhys(), GetLeftAdjacentFaces(), GetMovingFrames(), GetNormals(), GetPhys_Offset(), GetTrace(), GetTraceBndMap(), GetTraceMap(), Nektar::NekConstants::kNekUnsetDouble, MULTI_REGIONS_EXPORT, Nektar::LibUtilities::NullBasisSharedPtr1DArray, Nektar::NullNekDouble1DArray, Nektar::LibUtilities::NullNekDoubleVector, Nektar::LibUtilities::NullUnsignedIntVector, PhysDeriv(), PhysDirectionalDeriv(), PhysEvaluate(), SetUpPhysNormals(), UpdateBndCondExpansion(), UpdateBndConditions(), UpdateCoeffs(), UpdatePhys(), Upwind(), and v_GetNumElmts().
Referenced by GetExpIndex(), v_GetCoords(), and v_WriteTecplotHeader().
|
inline |
Definition at line 889 of file ExpList.h.
References v_GetPeriodicEntities().
This function returns (a reference to) the array \(\boldsymbol{u}_l\) (implemented as m_phys) containing the function \(u^{\delta}(\boldsymbol{x})\) evaluated at the quadrature points.
As the function returns a constant reference to a const Array it is not possible to modify the underlying data of the array m_phys. In order to do so, use the function UpdatePhys instead.
Definition at line 2161 of file ExpList.h.
References m_phys.
Referenced by Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3D::v_GetFwdBwdTracePhys(), Nektar::MultiRegions::DisContField1D::v_GetFwdBwdTracePhys(), Nektar::MultiRegions::DisContField2D::v_GetFwdBwdTracePhys(), and WriteVtkPieceData().
|
inline |
Get the start offset position for a global list of m_phys correspoinding to element n.
Definition at line 2208 of file ExpList.h.
References m_phys_offset.
Referenced by export_ExpList(), Nektar::MultiRegions::DisContField3DHomogeneous1D::GetBCValues(), GetNumElmts(), Nektar::MultiRegions::DisContField3DHomogeneous1D::NormVectorIProductWRTBase(), Nektar::MultiRegions::LocTraceToTraceMap::Setup2D(), Nektar::MultiRegions::LocTraceToTraceMap::Setup3D(), v_ExtractPhysToBnd(), v_ExtractPhysToBndElmt(), Nektar::MultiRegions::DisContField1D::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField2D::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField1D::v_GetFwdBwdTracePhys(), Nektar::MultiRegions::DisContField2D::v_GetFwdBwdTracePhys(), and v_NormVectorIProductWRTBase().
|
inline |
This function indicates whether the array of physical values \(\boldsymbol{u}_l\) (implemented as m_phys) is filled or not.
Definition at line 1706 of file ExpList.h.
References m_physState.
Referenced by export_ExpList().
|
inline |
Definition at line 996 of file ExpList.h.
References v_GetPlane().
|
inline |
Definition at line 884 of file ExpList.h.
References v_GetRobinBCInfo().
Referenced by GenGlobalBndLinSys(), and GenGlobalMatrixFull().
|
inline |
Returns the session object.
Definition at line 974 of file ExpList.h.
References m_session.
Referenced by Nektar::MultiRegions::AssemblyMapCG::SetUpUniversalC0ContMap(), and Nektar::MultiRegions::AssemblyMapCG::v_LinearSpaceMap().
|
inline |
This function returns the dimension of the shape of the element eid.
eid | The index of the element to be checked. |
Definition at line 2024 of file ExpList.h.
References m_exp.
Referenced by WriteVtkPieceData().
|
inline |
Returns a shared pointer to the current object.
Definition at line 968 of file ExpList.h.
Referenced by GenGlobalBndLinSys(), and GenGlobalLinSys().
|
inline |
Returns the total number of quadrature points m_npoints \(=Q_{\mathrm{tot}}\).
Definition at line 1608 of file ExpList.h.
References m_npoints.
Referenced by Nektar::MultiRegions::ExpList2DHomogeneous1D::GetCoords(), Nektar::MultiRegions::ExpList3DHomogeneous2D::GetCoords(), Nektar::MultiRegions::ExpList3DHomogeneous1D::GetCoords(), v_CurlCurl(), Nektar::MultiRegions::ExpList3DHomogeneous1D::v_HomogeneousEnergy(), Nektar::MultiRegions::ExpList3DHomogeneous2D::v_L2(), v_WriteTecplotField(), and v_WriteTecplotZone().
|
inline |
Returns the total number of quadrature points for eid's element \(=Q_{\mathrm{tot}}\).
Definition at line 1613 of file ExpList.h.
References m_exp.
|
inline |
Return a reference to the trace space associated with this expansion list.
Definition at line 2267 of file ExpList.h.
References v_GetTrace().
Referenced by GetNumElmts(), Nektar::MultiRegions::DisContField2D::v_AddFwdBwdTraceIntegral(), Nektar::MultiRegions::DisContField1D::v_AddTraceIntegral(), and Nektar::MultiRegions::DisContField2D::v_AddTraceIntegral().
Definition at line 2277 of file ExpList.h.
References v_GetTraceBndMap().
Referenced by GetNumElmts().
|
inline |
Definition at line 2272 of file ExpList.h.
References v_GetTraceMap().
Referenced by GetNumElmts(), and v_GetTraceBndMap().
|
inline |
This function returns the transposition class associaed with the homogeneous expansion.
Definition at line 596 of file ExpList.h.
References v_GetTransposition().
|
inline |
This function returns the third direction expansion condition, which can be in wave space (coefficient) or not It is stored in the variable m_WaveSpace.
Definition at line 1657 of file ExpList.h.
References m_WaveSpace.
Referenced by Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion(), and Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion().
This function returns a vector containing the wave numbers in y-direction associated with the 3D homogenous expansion. Required if a parellelisation is applied in the Fourier direction.
Definition at line 619 of file ExpList.h.
References v_GetYIDs().
This function returns a vector containing the wave numbers in z-direction associated with the 3D homogenous expansion. Required if a parellelisation is applied in the Fourier direction.
Definition at line 589 of file ExpList.h.
References v_GetZIDs().
Referenced by v_WriteTecplotZone().
|
protected |
Scatters from the global coefficients \(\boldsymbol{\hat{u}}_g\) to the local coefficients \(\boldsymbol{\hat{u}}_l\).
Definition at line 2096 of file ExpList.h.
References v_GlobalToLocal().
Referenced by Nektar::MultiRegions::ContField1D::BwdTrans(), Nektar::MultiRegions::ContField2D::BwdTrans(), Nektar::MultiRegions::ContField1D::FwdTrans(), Nektar::MultiRegions::ContField2D::FwdTrans(), Nektar::MultiRegions::ContField2D::LaplaceSolve(), Nektar::MultiRegions::ContField1D::MultiplyByInvMassMatrix(), Nektar::MultiRegions::ContField2D::MultiplyByInvMassMatrix(), Nektar::MultiRegions::ContField3D::v_BwdTrans(), Nektar::MultiRegions::ContField3D::v_FwdTrans(), Nektar::MultiRegions::ContField3D::v_GeneralMatrixOp(), Nektar::MultiRegions::ContField1D::v_GeneralMatrixOp(), Nektar::MultiRegions::ContField2D::v_GeneralMatrixOp(), Nektar::MultiRegions::ContField3D::v_HelmSolve(), Nektar::MultiRegions::ContField1D::v_HelmSolve(), Nektar::MultiRegions::ContField2D::v_HelmSolve(), Nektar::MultiRegions::ContField3D::v_LinearAdvectionDiffusionReactionSolve(), Nektar::MultiRegions::ContField2D::v_LinearAdvectionDiffusionReactionSolve(), Nektar::MultiRegions::ContField2D::v_LinearAdvectionReactionSolve(), Nektar::MultiRegions::ContField3D::v_MultiplyByInvMassMatrix(), and WriteVtkPieceData().
|
inline |
This operation is evaluated as:
\begin{tabbing} \hspace{1cm} \= Do \= $e=$ $1, N_{\mathrm{el}}$ \\ \> \> Do \= $i=$ $0,N_m^e-1$ \\ \> \> \> $\boldsymbol{\hat{u}}^{e}[i] = \mbox{sign}[e][i] \cdot \boldsymbol{\hat{u}}_g[\mbox{map}[e][i]]$ \\ \> \> continue \\ \> continue \end{tabbing}
where map \([e][i]\) is the mapping array and sign \([e][i]\) is an array of similar dimensions ensuring the correct modal connectivity between the different elements (both these arrays are contained in the data member #m_locToGloMap). This operation is equivalent to the scatter operation \(\boldsymbol{\hat{u}}_l=\mathcal{A}\boldsymbol{\hat{u}}_g\), where \(\mathcal{A}\) is the \(N_{\mathrm{eof}}\times N_{\mathrm{dof}}\) permutation matrix.
inarray | An array of size \(N_\mathrm{dof}\) containing the global degrees of freedom \(\boldsymbol{x}_g\). |
outarray | The resulting local degrees of freedom \(\boldsymbol{x}_l\) will be stored in this array of size \(N_\mathrm{eof}\). |
Definition at line 2127 of file ExpList.h.
References v_GlobalToLocal().
NekDouble Nektar::MultiRegions::ExpList::H1 | ( | const Array< OneD, const NekDouble > & | inarray, |
const Array< OneD, const NekDouble > & | soln = NullNekDouble1DArray |
||
) |
Calculates the \(H^1\) error of the global spectral/hp element approximation.
Given a spectral/hp approximation \(u^{\delta}(\boldsymbol{x})\) evaluated at the quadrature points (which should be contained in m_phys), this function calculates the \(H^1_2\) error of this approximation with respect to an exact solution. The local distribution of the quadrature points allows an elemental evaluation of this operation through the functions StdRegions::StdExpansion::H1.
The exact solution, also evaluated at the quadrature points, should be contained in the variable m_phys of the ExpList object Sol.
soln | An 1D array, containing the discrete evaluation of the exact solution at the quadrature points. |
Definition at line 2155 of file ExpList.cpp.
References m_comm, m_phys_offset, and Nektar::LibUtilities::ReduceSum.
Referenced by L2().
|
inline |
Solve helmholtz problem.
Definition at line 1808 of file ExpList.h.
References v_HelmSolve().
|
inline |
Definition at line 1945 of file ExpList.h.
References v_HomogeneousBwdTrans().
This function calculates the energy associated with each one of the modesof a 3D homogeneous nD expansion.
Definition at line 573 of file ExpList.h.
References v_HomogeneousEnergy().
|
inline |
Definition at line 1932 of file ExpList.h.
References v_HomogeneousFwdTrans().
|
inline |
Impose Dirichlet Boundary Conditions onto Array.
Definition at line 2067 of file ExpList.h.
References v_ImposeDirichletConditions().
Referenced by WriteVtkPieceData().
|
inline |
Definition at line 561 of file ExpList.h.
References v_Integral().
|
inline |
Definition at line 1714 of file ExpList.h.
References v_IProductWRTBase().
Referenced by Nektar::MultiRegions::ContField3D::v_FwdTrans(), Nektar::MultiRegions::ContField3D::v_HelmSolve(), Nektar::MultiRegions::DisContField3D::v_HelmSolve(), Nektar::MultiRegions::DisContField2D::v_HelmSolve(), Nektar::MultiRegions::DisContField1D::v_HelmSolve(), and Nektar::MultiRegions::ContField3D::v_LinearAdvectionDiffusionReactionSolve().
|
inline |
This function calculates the inner product of a function \(f(\boldsymbol{x})\) with respect to all local expansion modes \(\phi_n^e(\boldsymbol{x})\).
Definition at line 1725 of file ExpList.h.
References v_IProductWRTBase_IterPerExp().
Referenced by Nektar::MultiRegions::ContField2D::IProductWRTBase(), Nektar::MultiRegions::ContField1D::IProductWRTBase(), v_FwdTrans_IterPerExp(), and Nektar::MultiRegions::ContField3D::v_IProductWRTBase().
void Nektar::MultiRegions::ExpList::IProductWRTDerivBase | ( | const int | dir, |
const Array< OneD, const NekDouble > & | inarray, | ||
Array< OneD, NekDouble > & | outarray | ||
) |
This function calculates the inner product of a function \(f(\boldsymbol{x})\) with respect to the derivative (in direction.
dir) | of all local expansion modes \(\phi_n^e(\boldsymbol{x})\). |
The operation is evaluated locally for every element by the function StdRegions::StdExpansion::IProductWRTDerivBase.
dir | {0,1} is the direction in which the derivative of the basis should be taken |
inarray | An array of size \(Q_{\mathrm{tot}}\) containing the values of the function \(f(\boldsymbol{x})\) at the quadrature points \(\boldsymbol{x}_i\). |
outarray | An array of size \(N_{\mathrm{eof}}\) used to store the result. |
Definition at line 409 of file ExpList.cpp.
References m_coeff_offset, and m_phys_offset.
void Nektar::MultiRegions::ExpList::IProductWRTDerivBase | ( | const Array< OneD, const Array< OneD, NekDouble > > & | inarray, |
Array< OneD, NekDouble > & | outarray | ||
) |
This function calculates the inner product of a function \(f(\boldsymbol{x})\) with respect to the derivative (in direction.
dir) | of all local expansion modes \(\phi_n^e(\boldsymbol{x})\). |
The operation is evaluated locally for every element by the function StdRegions::StdExpansion::IProductWRTDerivBase.
inarray | An array of arrays of size \(Q_{\mathrm{tot}}\) containing the values of the function \(f(\boldsymbol{x})\) at the quadrature points \(\boldsymbol{x}_i\) in dir directions. |
outarray | An array of size \(N_{\mathrm{eof}}\) used to store the result. |
Definition at line 473 of file ExpList.cpp.
References ASSERTL0, ASSERTL1, Nektar::Collections::eIProductWRTDerivBase, GetCoordim(), m_coll_coeff_offset, m_coll_phys_offset, and m_collections.
void Nektar::MultiRegions::ExpList::IProductWRTDirectionalDerivBase | ( | const Array< OneD, const NekDouble > & | direction, |
const Array< OneD, const NekDouble > & | inarray, | ||
Array< OneD, NekDouble > & | outarray | ||
) |
Directional derivative along a given direction.
Definition at line 429 of file ExpList.cpp.
References m_coeff_offset, m_phys_offset, and Vmath::Vcopy().
|
inline |
This function calculates the \(L_2\) error with respect to soln of the global spectral/hp element approximation.
Definition at line 548 of file ExpList.h.
References H1(), MULTI_REGIONS_EXPORT, Nektar::NullNekDouble1DArray, and v_L2().
Referenced by Nektar::MultiRegions::DisContField2D::L2_DGDeriv(), and Nektar::MultiRegions::ExpList3DHomogeneous2D::v_L2().
|
inline |
Solve Advection Diffusion Reaction.
Definition at line 1827 of file ExpList.h.
References v_LinearAdvectionDiffusionReactionSolve().
|
inline |
Solve Advection Diffusion Reaction.
Definition at line 1839 of file ExpList.h.
References v_LinearAdvectionReactionSolve().
NekDouble Nektar::MultiRegions::ExpList::Linf | ( | const Array< OneD, const NekDouble > & | inarray, |
const Array< OneD, const NekDouble > & | soln = NullNekDouble1DArray |
||
) |
This function calculates the \(L_\infty\) error of the global spectral/hp element approximation.
Given a spectral/hp approximation \(u^{\delta}(\boldsymbol{x})\) evaluated at the quadrature points (which should be contained in m_phys), this function calculates the \(L_\infty\) error of this approximation with respect to an exact solution. The local distribution of the quadrature points allows an elemental evaluation of this operation through the functions StdRegions::StdExpansion::Linf.
The exact solution, also evaluated at the quadrature points, should be contained in the variable m_phys of the ExpList object Sol.
soln | A 1D array, containing the discrete evaluation of the exact solution at the quadrature points in its array m_phys. |
Definition at line 1919 of file ExpList.cpp.
References m_comm, m_npoints, Nektar::NullNekDouble1DArray, Nektar::LibUtilities::ReduceMax, and Vmath::Vmax().
Referenced by WriteVtkPieceData().
|
inline |
Gathers the global coefficients \(\boldsymbol{\hat{u}}_g\) from the local coefficients \(\boldsymbol{\hat{u}}_l\).
Definition at line 2083 of file ExpList.h.
References v_LocalToGlobal().
Referenced by Nektar::MultiRegions::ContField3D::v_FillBndCondFromField(), Nektar::MultiRegions::ContField2D::v_FillBndCondFromField(), Nektar::MultiRegions::ContField3D::v_HelmSolve(), Nektar::MultiRegions::ContField2D::v_HelmSolve(), and WriteVtkPieceData().
|
inline |
Definition at line 2088 of file ExpList.h.
References v_LocalToGlobal().
|
protected |
Retrieves the block matrix specified by bkey, and computes \( y=Mx \).
gkey | GlobalMatrixKey specifying the block matrix to use in the matrix-vector multiply. |
inarray | Input vector \( x \). |
outarray | Output vector \( y \). |
Definition at line 352 of file ExpList.cpp.
References Nektar::eWrapper, and GetBlockMatrix().
Referenced by GeneralMatrixOp_IterPerExp().
void Nektar::MultiRegions::ExpList::MultiplyByElmtInvMass | ( | const Array< OneD, const NekDouble > & | inarray, |
Array< OneD, NekDouble > & | outarray | ||
) |
This function elementally mulplies the coefficient space of Sin my the elemental inverse of the mass matrix.
The coefficients of the function to be acted upon should be contained in the
inarray. | The resulting coefficients are stored in |
outarray | |
inarray | An array of size \(N_{\mathrm{eof}}\) containing the inner product. |
Definition at line 755 of file ExpList.cpp.
References Nektar::StdRegions::eInvMass, Nektar::eWrapper, GetBlockMatrix(), and m_ncoeffs.
Referenced by v_FwdTrans_IterPerExp().
|
inline |
Definition at line 1797 of file ExpList.h.
References v_MultiplyByInvMassMatrix().
|
inline |
Definition at line 1993 of file ExpList.h.
References v_NormVectorIProductWRTBase().
|
inline |
Definition at line 2002 of file ExpList.h.
References v_NormVectorIProductWRTBase().
|
inline |
Definition at line 1897 of file ExpList.h.
References v_PhysDeriv().
Referenced by GetNumElmts(), and v_CurlCurl().
|
inline |
This function discretely evaluates the derivative of a function \(f(\boldsymbol{x})\) on the domain consisting of all elements of the expansion.
Definition at line 1878 of file ExpList.h.
References v_PhysDeriv().
|
inline |
Definition at line 1889 of file ExpList.h.
References v_PhysDeriv().
|
inline |
Definition at line 1909 of file ExpList.h.
References v_PhysDirectionalDeriv().
Referenced by GetNumElmts().
NekDouble Nektar::MultiRegions::ExpList::PhysEvaluate | ( | const Array< OneD, const NekDouble > & | coords, |
const Array< OneD, const NekDouble > & | phys | ||
) |
This function return the expansion field value at the coordinates given as input.
Given some coordinates, output the expansion field value at that point
Definition at line 1545 of file ExpList.cpp.
References ASSERTL0, GetCoordim(), GetExpIndex(), m_exp, and m_phys_offset.
Referenced by export_ExpList(), and GetNumElmts().
|
inline |
This function Galerkin projects the physical space points in inarray to outarray where inarray is assumed to be defined in the expansion but where the number of points are rescaled by 1DScale.
Definition at line 640 of file ExpList.h.
References GetExpSize(), and v_PhysGalerkinProjection1DScaled().
This function integrates a function \(f(\boldsymbol{x})\) over the domain consisting of all the elements of the expansion.
The integration is evaluated locally, that is
\[\int f(\boldsymbol{x})d\boldsymbol{x}=\sum_{e=1}^{{N_{\mathrm{el}}}} \left\{\int_{\Omega_e}f(\boldsymbol{x})d\boldsymbol{x}\right\}, \]
where the integration over the separate elements is done by the function StdRegions::StdExpansion::Integral, which discretely evaluates the integral using Gaussian quadrature.
Note that the array m_phys should be filled with the values of the function \(f(\boldsymbol{x})\) at the quadrature points \(\boldsymbol{x}_i\).
Definition at line 304 of file ExpList.cpp.
References ASSERTL1, m_phys, and m_physState.
NekDouble Nektar::MultiRegions::ExpList::PhysIntegral | ( | const Array< OneD, const NekDouble > & | inarray | ) |
This function integrates a function \(f(\boldsymbol{x})\) over the domain consisting of all the elements of the expansion.
The integration is evaluated locally, that is
\[\int f(\boldsymbol{x})d\boldsymbol{x}=\sum_{e=1}^{{N_{\mathrm{el}}}} \left\{\int_{\Omega_e}f(\boldsymbol{x})d\boldsymbol{x}\right\}, \]
where the integration over the separate elements is done by the function StdRegions::StdExpansion::Integral, which discretely evaluates the integral using Gaussian quadrature.
inarray | An array of size \(Q_{\mathrm{tot}}\) containing the values of the function \(f(\boldsymbol{x})\) at the quadrature points \(\boldsymbol{x}_i\). |
Definition at line 329 of file ExpList.cpp.
References m_phys_offset.
|
inline |
This function interpolates the physical space points in inarray to outarray using the same points defined in the expansion but where the number of points are rescaled by 1DScale.
Definition at line 628 of file ExpList.h.
References v_PhysInterp1DScaled().
|
inlineprotected |
Definition at line 1157 of file ExpList.h.
References v_ReadGlobalOptimizationParameters().
Referenced by Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::ExpList2D::ExpList2D(), and Nektar::MultiRegions::ExpList3D::ExpList3D().
|
inline |
Reset geometry information and reset matrices.
Definition at line 393 of file ExpList.h.
References v_Reset().
Set the i th coefficiient in m_coeffs to value val.
i | The index of m_coeffs to be set |
val | The value which m_coeffs[i] is to be set to. |
Definition at line 2033 of file ExpList.h.
References m_coeffs.
Referenced by WriteVtkPieceData().
|
protected |
Definition of the total number of degrees of freedom and quadrature points and offsets to access data.
Each expansion (local element) is processed in turn to determine the number of coefficients and physical data points it contributes to the domain. Twoe arrays, m_coeff_offset are m_phys_offset are also initialised and updated to store the data offsets of each element in the m_coeffs and m_phys arrays, and the element id that each consecutive block is associated respectively.
Definition at line 249 of file ExpList.cpp.
References m_coeff_offset, m_exp, m_ncoeffs, m_npoints, and m_phys_offset.
Referenced by Nektar::MultiRegions::ExpList0D::ExpList0D(), Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::ExpList2D::ExpList2D(), and Nektar::MultiRegions::ExpList3D::ExpList3D().
Set the i th coefficiient in m_coeffs to value val.
Definition at line 2043 of file ExpList.h.
References m_coeffs.
Referenced by WriteVtkPieceData().
Set the m_coeffs array to inarray.
Definition at line 2049 of file ExpList.h.
References m_coeffs.
Referenced by WriteVtkPieceData().
void Nektar::MultiRegions::ExpList::SetExpType | ( | ExpansionType | Type | ) |
Returns the type of the expansion.
Definition at line 279 of file ExpList.cpp.
References m_expType.
Referenced by ExpList(), Nektar::MultiRegions::ExpList0D::ExpList0D(), Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::ExpList2D::ExpList2D(), Nektar::MultiRegions::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::ExpList3D::ExpList3D(), Nektar::MultiRegions::ExpList3DHomogeneous1D::ExpList3DHomogeneous1D(), and Nektar::MultiRegions::ExpList3DHomogeneous2D::ExpList3DHomogeneous2D().
This function sets the Spectral Vanishing Viscosity in homogeneous1D expansion.
Definition at line 580 of file ExpList.h.
References v_SetHomo1DSpecVanVisc().
This function sets the Width of homogeneous direction associaed with the homogeneous expansion.
Definition at line 610 of file ExpList.h.
References v_SetHomoLen().
|
inline |
Set Modified Basis for the stability analysis.
Set the i th value of m_phys to value val.
Set the i th value ofm_phys to value val.
Definition at line 1663 of file ExpList.h.
References m_phys.
|
inline |
Fills the array m_phys.
This function fills the array \(\boldsymbol{u}_l\), the evaluation of the expansion at the quadrature points (implemented as m_phys), with the values of the array inarray.
inarray | The array containing the values where m_phys should be filled with. |
Definition at line 1677 of file ExpList.h.
References ASSERTL0, m_npoints, m_phys, m_physState, and Vmath::Vcopy().
Sets the array m_phys.
Definition at line 1688 of file ExpList.h.
References m_phys.
|
inline |
This function manually sets whether the array of physical values \(\boldsymbol{u}_l\) (implemented as m_phys) is filled or not.
physState | true (=filled) or false (=not filled). |
Definition at line 1697 of file ExpList.h.
References m_physState.
Referenced by export_ExpList().
|
inline |
Definition at line 2404 of file ExpList.h.
References v_SetUpPhysNormals().
Referenced by Nektar::MultiRegions::DisContField1D::DisContField1D(), Nektar::MultiRegions::DisContField2D::DisContField2D(), Nektar::MultiRegions::DisContField3D::DisContField3D(), Nektar::MultiRegions::DisContField3D::GenerateBoundaryConditionExpansion(), Nektar::MultiRegions::DisContField2D::GenerateBoundaryConditionExpansion(), GetNumElmts(), Nektar::MultiRegions::DisContField3D::SetUpDG(), Nektar::MultiRegions::DisContField2D::SetUpDG(), and Nektar::MultiRegions::DisContField1D::SetUpDG().
|
inline |
Sets the wave space to the one of the possible configuration true or false.
Definition at line 1649 of file ExpList.h.
References m_WaveSpace.
Smooth a field across elements.
Definition at line 1767 of file ExpList.h.
References v_SmoothField().
|
inline |
Definition at line 2244 of file ExpList.h.
References v_UpdateBndCondExpansion().
Referenced by GetNumElmts().
|
inline |
Definition at line 2351 of file ExpList.h.
References v_UpdateBndConditions().
Referenced by GetNumElmts().
This function returns (a reference to) the array \(\boldsymbol{\hat{u}}_l\) (implemented as m_coeffs) containing all local expansion coefficients.
If one wants to get hold of the underlying data without modifying them, rather use the function GetCoeffs instead.
Definition at line 2219 of file ExpList.h.
References m_coeffs.
Referenced by Nektar::MultiRegions::DisContField3DHomogeneous2D::EvaluateBoundaryConditions(), and GetNumElmts().
This function returns (a reference to) the array \(\boldsymbol{u}_l\) (implemented as m_phys) containing the function \(u^{\delta}(\boldsymbol{x})\) evaluated at the quadrature points.
If one wants to get hold of the underlying data without modifying them, rather use the function GetPhys instead.
Definition at line 2230 of file ExpList.h.
References m_phys, and m_physState.
Referenced by GetNumElmts().
|
inline |
Definition at line 2249 of file ExpList.h.
References v_Upwind().
Referenced by GetNumElmts().
|
inline |
Definition at line 2258 of file ExpList.h.
References v_Upwind().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField2D, and Nektar::MultiRegions::DisContField3D.
Definition at line 2629 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by AddFwdBwdTraceIntegral(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField2D.
Definition at line 2610 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by AddTraceIntegral(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField3D, and Nektar::MultiRegions::DisContField1D.
Definition at line 2620 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 2296 of file ExpList.cpp.
References m_coeffs.
Referenced by AppendFieldData(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 2301 of file ExpList.cpp.
References m_coeff_offset.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::ContField1D, Nektar::MultiRegions::ExpListHomogeneous1D, Nektar::MultiRegions::ExpListHomogeneous2D, and Nektar::MultiRegions::ContField3D.
Definition at line 2901 of file ExpList.cpp.
References v_BwdTrans_IterPerExp().
Referenced by BwdTrans(), and v_GetNumElmts().
|
protectedvirtual |
Given the elemental coefficients \(\hat{u}_n^e\) of an expansion, this function evaluates the spectral/hp expansion \(u^{\delta}(\boldsymbol{x})\) at the quadrature points \(\boldsymbol{x}_i\). The operation is evaluated locally by the elemental function StdRegions::StdExpansion::BwdTrans.
inarray | An array of size \(N_{\mathrm{eof}}\) containing the local coefficients \(\hat{u}_n^e\). |
outarray | The resulting physical values at the quadrature points \(u^{\delta}(\boldsymbol{x}_i)\) will be stored in this array of size \(Q_{\mathrm{tot}}\). |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 1418 of file ExpList.cpp.
References Nektar::Collections::eBwdTrans, m_coll_coeff_offset, m_coll_phys_offset, and m_collections.
Referenced by BwdTrans_IterPerExp(), v_BwdTrans(), and v_GetNumElmts().
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::ContField1D, Nektar::MultiRegions::ContField3D, Nektar::MultiRegions::ContField3DHomogeneous1D, and Nektar::MultiRegions::ContField3DHomogeneous2D.
Definition at line 2089 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by ClearGlobalLinSysManager(), and v_GetNumElmts().
|
protectedvirtual |
Definition at line 625 of file ExpList.cpp.
References ASSERTL0, Nektar::MultiRegions::e2D, Nektar::MultiRegions::e3D, Nektar::MultiRegions::e3DH1D, Nektar::MultiRegions::e3DH2D, GetExpType(), GetTotPoints(), m_session, Vmath::Neg(), PhysDeriv(), Vmath::Smul(), Vmath::Vsub(), Nektar::xDir, Nektar::yDir, and Nektar::zDir.
Referenced by CurlCurl(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 2767 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by DealiasedDotProd(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 2757 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by DealiasedProd(), and v_GetNumElmts().
|
privatevirtual |
Reimplemented in Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField3D, Nektar::MultiRegions::DisContField1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Definition at line 3228 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by EvaluateBoundaryConditions(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Definition at line 2435 of file ExpList.cpp.
References m_coeff_offset.
Referenced by ExtractCoeffsToCoeffs(), and v_GetNumElmts().
|
protectedvirtual |
Extract data from raw field data into expansion list.
fielddef | Field definitions. |
fielddata | Data for associated field. |
field | Field variable name. |
coeffs | Resulting coefficient array. |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 2346 of file ExpList.cpp.
References ASSERTL0, Nektar::LibUtilities::GetNumberOfCoefficients(), m_coeff_offset, m_elmtToExpId, m_exp, and Vmath::Vcopy().
Referenced by ExtractDataToCoeffs(), and v_GetNumElmts().
|
protectedvirtual |
Definition at line 3026 of file ExpList.cpp.
References GetBndCondExpansions(), GetBoundaryToElmtMap(), and GetExp().
Referenced by ExtractElmtToBndPhys(), and v_GetNumElmts().
|
protectedvirtual |
Definition at line 3105 of file ExpList.cpp.
References GetBndCondExpansions(), GetBoundaryToElmtMap(), GetExp(), and GetPhys_Offset().
Referenced by ExtractPhysToBnd(), and v_GetNumElmts().
|
protectedvirtual |
Definition at line 3065 of file ExpList.cpp.
References GetBndCondExpansions(), GetBoundaryToElmtMap(), GetExp(), GetPhys_Offset(), and Vmath::Vcopy().
Referenced by ExtractPhysToBndElmt(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField1D, and Nektar::MultiRegions::DisContField3D.
Definition at line 2666 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by ExtractTracePhys(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField1D, and Nektar::MultiRegions::DisContField3D.
Definition at line 2673 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::ContField3D, and Nektar::MultiRegions::ContField3DHomogeneous1D.
Definition at line 2852 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by FillBndCondFromField(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::ContField3D, and Nektar::MultiRegions::ContField3DHomogeneous1D.
Definition at line 2860 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::ExpListHomogeneous1D, Nektar::MultiRegions::ContField1D, Nektar::MultiRegions::ExpListHomogeneous2D, and Nektar::MultiRegions::ContField3D.
Definition at line 2909 of file ExpList.cpp.
References v_FwdTrans_IterPerExp().
Referenced by FwdTrans(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Definition at line 804 of file ExpList.cpp.
References m_coeff_offset, and m_phys_offset.
Referenced by FwdTrans_BndConstrained(), and v_GetNumElmts().
|
protectedvirtual |
Given a function \(u(\boldsymbol{x})\) defined at the quadrature points, this function determines the transformed elemental coefficients \(\hat{u}_n^e\) employing a discrete elemental Galerkin projection from physical space to coefficient space. For each element, the operation is evaluated locally by the function StdRegions::StdExpansion::IproductWRTBase followed by a call to #MultiRegions#MultiplyByElmtInvMass.
inarray | An array of size \(Q_{\mathrm{tot}}\) containing the values of the function \(f(\boldsymbol{x})\) at the quadrature points \(\boldsymbol{x}_i\). |
outarray | The resulting coefficients \(\hat{u}_n^e\) will be stored in this array of size \(N_{\mathrm{eof}}\). |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 794 of file ExpList.cpp.
References IProductWRTBase_IterPerExp(), m_ncoeffs, and MultiplyByElmtInvMass().
Referenced by FwdTrans_IterPerExp(), v_FwdTrans(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::ContField1D, Nektar::MultiRegions::DisContField3D, and Nektar::MultiRegions::ContField3D.
Definition at line 2933 of file ExpList.cpp.
References GeneralMatrixOp_IterPerExp().
Referenced by GeneralMatrixOp(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D.
Definition at line 2778 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetBCValues(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField3D, Nektar::MultiRegions::DisContField1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Definition at line 2542 of file ExpList.cpp.
References ASSERTL0.
Referenced by GetBndCondExpansions(), and v_GetNumElmts().
|
privatevirtual |
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField3D, Nektar::MultiRegions::DisContField1D, Nektar::MultiRegions::ContField1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Definition at line 3207 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetBndConditions(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField1D, Nektar::MultiRegions::DisContField3D, Nektar::MultiRegions::DisContField3DHomogeneous1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Definition at line 3015 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetBndElmtExpansion(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D.
Definition at line 3143 of file ExpList.cpp.
References GetBndCondExpansions(), GetBoundaryToElmtMap(), GetCoordim(), GetExp(), and Vmath::Vcopy().
Referenced by GetBoundaryNormals(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField1D, Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField3D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Definition at line 3188 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetBoundaryToElmtMap(), and v_GetNumElmts().
|
protectedvirtual |
The operation is evaluated locally by the elemental function StdRegions::StdExpansion::GetCoords.
coord_0 | After calculation, the \(x_1\) coordinate will be stored in this array. |
coord_1 | After calculation, the \(x_2\) coordinate will be stored in this array. |
coord_2 | After calculation, the \(x_3\) coordinate will be stored in this array. |
Reimplemented in Nektar::MultiRegions::ExpList3DHomogeneous1D, Nektar::MultiRegions::ExpList3DHomogeneous2D, Nektar::MultiRegions::ExpList2DHomogeneous1D, and Nektar::MultiRegions::ExpList1DHomogeneous2D.
Definition at line 2954 of file ExpList.cpp.
References ASSERTL0, GetCoordim(), GetExp(), GetNumElmts(), and m_phys_offset.
Referenced by GetCoords(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 2282 of file ExpList.cpp.
Referenced by GetFieldDefinitions(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 2289 of file ExpList.cpp.
References GeneralGetFieldDefinitions().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField1D, and Nektar::MultiRegions::DisContField3D.
Definition at line 2639 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetFwdBwdTracePhys(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField1D, and Nektar::MultiRegions::DisContField3D.
Definition at line 2647 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
|
inlineprivatevirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Definition at line 1526 of file ExpList.h.
References Nektar::ErrorUtil::efatal, NEKERROR, and Nektar::LibUtilities::NullBasisSharedPtr.
Referenced by GetHomogeneousBasis().
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Definition at line 2037 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetHomoLen(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3D.
Definition at line 2657 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetLeftAdjacentFaces(), and v_GetNumElmts().
|
protectedvirtual |
Definition at line 2459 of file ExpList.cpp.
References m_exp, m_phys_offset, and Vmath::Vcopy().
Referenced by GetMovingFrames(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList1D, Nektar::MultiRegions::ExpList2D, Nektar::MultiRegions::ExpList2DHomogeneous1D, and Nektar::MultiRegions::ExpList0D.
Definition at line 2602 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetNormals(), and v_GetNumElmts().
|
inlineprotectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 1164 of file ExpList.h.
References Nektar::MultiRegions::eLocal, ExtractFileBCs(), GetBoundaryCondition(), Nektar::NekConstants::kNekUnsetDouble, MULTI_REGIONS_EXPORT, Nektar::NullNekDouble1DArray, v_AddFwdBwdTraceIntegral(), v_AddTraceIntegral(), v_AppendFieldData(), v_BwdTrans(), v_BwdTrans_IterPerExp(), v_ClearGlobalLinSysManager(), v_CurlCurl(), v_DealiasedDotProd(), v_DealiasedProd(), v_EvaluateBoundaryConditions(), v_ExtractCoeffsToCoeffs(), v_ExtractDataToCoeffs(), v_ExtractElmtToBndPhys(), v_ExtractPhysToBnd(), v_ExtractPhysToBndElmt(), v_ExtractTracePhys(), v_FillBndCondFromField(), v_FwdTrans(), v_FwdTrans_BndConstrained(), v_FwdTrans_IterPerExp(), v_GeneralMatrixOp(), v_GetBCValues(), v_GetBndCondExpansions(), v_GetBndConditions(), v_GetBndElmtExpansion(), v_GetBoundaryNormals(), v_GetBoundaryToElmtMap(), v_GetCoords(), v_GetFieldDefinitions(), v_GetFwdBwdTracePhys(), v_GetHomoLen(), v_GetLeftAdjacentFaces(), v_GetMovingFrames(), v_GetNormals(), v_GetPeriodicEntities(), v_GetRobinBCInfo(), v_GetTrace(), v_GetTraceBndMap(), v_GetTraceMap(), v_GetTransposition(), v_GetYIDs(), v_GetZIDs(), v_GlobalToLocal(), v_HelmSolve(), v_HomogeneousBwdTrans(), v_HomogeneousEnergy(), v_HomogeneousFwdTrans(), v_ImposeDirichletConditions(), v_Integral(), v_IProductWRTBase(), v_IProductWRTBase_IterPerExp(), v_L2(), v_LinearAdvectionDiffusionReactionSolve(), v_LinearAdvectionReactionSolve(), v_LocalToGlobal(), v_MultiplyByInvMassMatrix(), v_NormVectorIProductWRTBase(), v_PhysDeriv(), v_PhysDirectionalDeriv(), v_PhysGalerkinProjection1DScaled(), v_PhysInterp1DScaled(), v_ReadGlobalOptimizationParameters(), v_Reset(), v_SetHomoLen(), v_SetUpPhysNormals(), v_SmoothField(), v_UpdateBndCondExpansion(), v_UpdateBndConditions(), v_Upwind(), v_VectorFlux(), v_WriteTecplotConnectivity(), v_WriteTecplotField(), v_WriteTecplotHeader(), v_WriteTecplotZone(), v_WriteVtkPieceData(), and v_WriteVtkPieceHeader().
Referenced by GetNumElmts().
|
privatevirtual |
Reimplemented in Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField3D, and Nektar::MultiRegions::ExpList3DHomogeneous1D.
Definition at line 3251 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetPeriodicEntities(), and v_GetNumElmts().
|
privatevirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Definition at line 3283 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, NEKERROR, and Nektar::MultiRegions::NullExpListSharedPtr.
Referenced by GetPlane(), and v_SetHomo1DSpecVanVisc().
|
privatevirtual |
Reimplemented in Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField3D, Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Definition at line 3241 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetRobinBCInfo(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField3D, Nektar::MultiRegions::DisContField1D, and Nektar::MultiRegions::DisContField2D.
Definition at line 2581 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetTrace(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D.
Definition at line 2597 of file ExpList.cpp.
References GetTraceMap().
Referenced by GetTraceBndMap(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField3D, and Nektar::MultiRegions::DisContField1D.
Definition at line 2589 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetTraceMap(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Definition at line 2029 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetTransposition(), and v_GetNumElmts().
|
protectedvirtual |
Definition at line 2060 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetYIDs(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Definition at line 2052 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetZIDs(), and v_GetNumElmts().
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::ContField1D, Nektar::MultiRegions::ContField3D, Nektar::MultiRegions::ContField3DHomogeneous1D, and Nektar::MultiRegions::ContField3DHomogeneous2D.
Definition at line 2885 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GlobalToLocal(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::ContField1D, and Nektar::MultiRegions::ContField3D.
Definition at line 2892 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField1D, Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::ContField1D, Nektar::MultiRegions::DisContField3D, Nektar::MultiRegions::ContField3D, Nektar::MultiRegions::DisContField3DHomogeneous2D, Nektar::MultiRegions::ContField3DHomogeneous1D, and Nektar::MultiRegions::ContField3DHomogeneous2D.
Definition at line 2692 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by HelmSolve(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 2746 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by HomogeneousBwdTrans(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList3DHomogeneous1D.
Definition at line 2021 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by HomogeneousEnergy(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 2735 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by HomogeneousFwdTrans(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::ContField1D, Nektar::MultiRegions::ContField3D, Nektar::MultiRegions::ContField3DHomogeneous1D, and Nektar::MultiRegions::ContField3DHomogeneous2D.
Definition at line 2843 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by ImposeDirichletConditions(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList2DHomogeneous1D.
Definition at line 1988 of file ExpList.cpp.
References m_comm, m_phys_offset, and Nektar::LibUtilities::ReduceSum.
Referenced by Integral(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField1D, Nektar::MultiRegions::ExpListHomogeneous1D, Nektar::MultiRegions::ExpListHomogeneous2D, and Nektar::MultiRegions::ContField3D.
Definition at line 2917 of file ExpList.cpp.
References Nektar::Collections::eIProductWRTBase, m_coll_coeff_offset, m_coll_phys_offset, and m_collections.
Referenced by IProductWRTBase(), and v_GetNumElmts().
|
protectedvirtual |
The operation is evaluated locally for every element by the function StdRegions::StdExpansion::IProductWRTBase.
inarray | An array of size \(Q_{\mathrm{tot}}\) containing the values of the function \(f(\boldsymbol{x})\) at the quadrature points \(\boldsymbol{x}_i\). |
outarray | An array of size \(N_{\mathrm{eof}}\) used to store the result. |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 382 of file ExpList.cpp.
References Nektar::Collections::eIProductWRTBase, m_coll_coeff_offset, m_coll_phys_offset, and m_collections.
Referenced by IProductWRTBase_IterPerExp(), and v_GetNumElmts().
|
protectedvirtual |
Given a spectral/hp approximation \(u^{\delta}(\boldsymbol{x})\) evaluated at the quadrature points (which should be contained in m_phys), this function calculates the \(L_2\) error of this approximation with respect to an exact solution. The local distribution of the quadrature points allows an elemental evaluation of this operation through the functions StdRegions::StdExpansion::L2.
The exact solution, also evaluated at the quadrature points, should be contained in the variable m_phys of the ExpList object Sol.
Sol | An ExpList, containing the discrete evaluation of the exact solution at the quadrature points in its array m_phys. |
Reimplemented in Nektar::MultiRegions::ExpList3DHomogeneous1D, and Nektar::MultiRegions::ExpList3DHomogeneous2D.
Definition at line 1958 of file ExpList.cpp.
References m_comm, m_phys_offset, Nektar::NullNekDouble1DArray, and Nektar::LibUtilities::ReduceSum.
Referenced by L2(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField2D, and Nektar::MultiRegions::ContField3D.
Definition at line 2707 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by LinearAdvectionDiffusionReactionSolve(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField2D.
Definition at line 2721 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by LinearAdvectionReactionSolve(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::ContField1D, Nektar::MultiRegions::ContField3D, Nektar::MultiRegions::ContField3DHomogeneous1D, and Nektar::MultiRegions::ContField3DHomogeneous2D.
Definition at line 2867 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by LocalToGlobal(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::ContField1D, and Nektar::MultiRegions::ContField3D.
Definition at line 2875 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField2D, Nektar::MultiRegions::ContField1D, and Nektar::MultiRegions::ContField3D.
Definition at line 2682 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by MultiplyByInvMassMatrix(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D.
Definition at line 2787 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by NormVectorIProductWRTBase(), and v_GetNumElmts().
|
protectedvirtual |
Definition at line 2797 of file ExpList.cpp.
References ASSERTL0, GetCoeff_Offset(), GetCoordim(), GetExpSize(), and GetPhys_Offset().
|
protectedvirtual |
Given a function \(f(\boldsymbol{x})\) evaluated at the quadrature points, this function calculates the derivatives \(\frac{d}{dx_1}\), \(\frac{d}{dx_2}\) and \(\frac{d}{dx_3}\) of the function \(f(\boldsymbol{x})\) at the same quadrature points. The local distribution of the quadrature points allows an elemental evaluation of the derivative. This is done by a call to the function StdRegions::StdExpansion::PhysDeriv.
inarray | An array of size \(Q_{\mathrm{tot}}\) containing the values of the function \(f(\boldsymbol{x})\) at the quadrature points \(\boldsymbol{x}_i\). |
out_d0 | The discrete evaluation of the derivative \(\frac{d}{dx_1}\) will be stored in this array of size \(Q_{\mathrm{tot}}\). |
out_d1 | The discrete evaluation of the derivative \(\frac{d}{dx_2}\) will be stored in this array of size \(Q_{\mathrm{tot}}\). Note that if no memory is allocated for out_d1, the derivative \(\frac{d}{dx_2}\) will not be calculated. |
out_d2 | The discrete evaluation of the derivative \(\frac{d}{dx_3}\) will be stored in this array of size \(Q_{\mathrm{tot}}\). Note that if no memory is allocated for out_d2, the derivative \(\frac{d}{dx_3}\) will not be calculated. |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 553 of file ExpList.cpp.
References Nektar::Collections::ePhysDeriv, m_coll_phys_offset, and m_collections.
Referenced by PhysDeriv(), v_GetNumElmts(), and v_PhysDeriv().
|
protectedvirtual |
Definition at line 576 of file ExpList.cpp.
References Nektar::MultiRegions::DirCartesianMap, and v_PhysDeriv().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 584 of file ExpList.cpp.
References Nektar::MultiRegions::eN, Nektar::Collections::ePhysDeriv, Nektar::MultiRegions::eS, m_coll_phys_offset, m_collections, and m_phys_offset.
|
protectedvirtual |
Definition at line 697 of file ExpList.cpp.
References m_phys_offset, and Vmath::Vcopy().
Referenced by PhysDirectionalDeriv(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, Nektar::MultiRegions::ExpList2D, and Nektar::MultiRegions::ExpList3D.
Definition at line 2079 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by PhysGalerkinProjection1DScaled(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, Nektar::MultiRegions::ExpList2D, and Nektar::MultiRegions::ExpList3D.
Definition at line 2069 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by PhysInterp1DScaled(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList1D, Nektar::MultiRegions::ExpList2D, and Nektar::MultiRegions::ExpList3D.
Definition at line 3198 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by ReadGlobalOptimizationParameters(), and v_GetNumElmts().
|
protectedvirtual |
Reset geometry information, metrics, matrix managers and geometry information.
This routine clears all matrix managers and resets all geometry information, which allows the geometry information to be dynamically updated as the solver is run.
Reimplemented in Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField1D, and Nektar::MultiRegions::DisContField3D.
Definition at line 1583 of file ExpList.cpp.
References m_exp, and m_graph.
Referenced by Reset(), v_GetNumElmts(), Nektar::MultiRegions::DisContField3D::v_Reset(), Nektar::MultiRegions::DisContField1D::v_Reset(), and Nektar::MultiRegions::DisContField2D::v_Reset().
|
inlineprivatevirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Definition at line 1534 of file ExpList.h.
References Nektar::ErrorUtil::efatal, NEKERROR, and v_GetPlane().
Referenced by SetHomo1DSpecVanVisc().
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Definition at line 2045 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by SetHomoLen(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList1D, Nektar::MultiRegions::ExpList2D, and Nektar::MultiRegions::ExpList3D.
Definition at line 3007 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by SetUpPhysNormals(), and v_GetNumElmts().
|
protectedvirtual |
This function smooth a field after some calculaitons which have been done elementally.
field | An array containing the field in physical space |
Reimplemented in Nektar::MultiRegions::ContField2D, and Nektar::MultiRegions::ContField3DHomogeneous1D.
Definition at line 826 of file ExpList.cpp.
References ASSERTL0, Nektar::LibUtilities::eGauss_Lagrange, Nektar::LibUtilities::eGLL_Lagrange, and m_exp.
Referenced by SmoothField(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField3D, Nektar::MultiRegions::DisContField1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Definition at line 2550 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by UpdateBndCondExpansion(), and v_GetNumElmts().
|
privatevirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField2D, Nektar::MultiRegions::DisContField3D, Nektar::MultiRegions::DisContField1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Definition at line 3218 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by UpdateBndConditions(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList1D.
Definition at line 2559 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by Upwind(), and v_GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList1D, Nektar::MultiRegions::ExpList2D, and Nektar::MultiRegions::ExpList0D.
Definition at line 2570 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
|
protectedvirtual |
Definition at line 2002 of file ExpList.cpp.
References m_phys_offset.
Referenced by v_GetNumElmts(), and VectorFlux().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList3DHomogeneous1D.
Definition at line 1743 of file ExpList.cpp.
References ASSERTL0, and m_exp.
Referenced by v_GetNumElmts(), and WriteTecplotConnectivity().
|
protectedvirtual |
Write Tecplot Files Field
outfile | Output file name. |
expansion | Expansion that is considered |
Definition at line 1820 of file ExpList.cpp.
References BwdTrans(), GetTotPoints(), m_coeffs, m_phys, m_phys_offset, and m_physState.
Referenced by v_GetNumElmts(), and WriteTecplotField().
|
protectedvirtual |
Write Tecplot Files Header
outfile | Output file name. |
var | variables names |
Definition at line 1610 of file ExpList.cpp.
References Nektar::MultiRegions::e3DH1D, Nektar::MultiRegions::e3DH2D, GetExp(), GetNumElmts(), and m_expType.
Referenced by v_GetNumElmts(), and WriteTecplotHeader().
|
protectedvirtual |
Write Tecplot Files Zone
outfile | Output file name. |
expansion | Expansion that is considered |
Reimplemented in Nektar::MultiRegions::ExpList3DHomogeneous2D, Nektar::MultiRegions::ExpList2DHomogeneous1D, and Nektar::MultiRegions::ExpList1DHomogeneous2D.
Definition at line 1649 of file ExpList.cpp.
References ASSERTL0, Nektar::MultiRegions::e3DH1D, Nektar::MultiRegions::e3DH2D, GetCoordim(), GetCoords(), GetTotPoints(), GetZIDs(), m_exp, and m_expType.
Referenced by v_GetNumElmts(), and WriteTecplotZone().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 1882 of file ExpList.cpp.
References Nektar::NekConstants::kNekZeroTol, m_phys, and m_phys_offset.
Referenced by v_GetNumElmts(), and WriteVtkPieceData().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList1D, Nektar::MultiRegions::ExpList2D, Nektar::MultiRegions::ExpList3DHomogeneous1D, Nektar::MultiRegions::ExpList3DHomogeneous2D, Nektar::MultiRegions::ExpList2DHomogeneous1D, Nektar::MultiRegions::ExpList1DHomogeneous2D, and Nektar::MultiRegions::ExpList3D.
Definition at line 1868 of file ExpList.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by v_GetNumElmts(), and WriteVtkPieceHeader().
|
inline |
Definition at line 566 of file ExpList.h.
References v_VectorFlux().
|
inline |
Definition at line 417 of file ExpList.h.
References MULTI_REGIONS_EXPORT, v_WriteTecplotConnectivity(), WriteVtkFooter(), and WriteVtkHeader().
|
inline |
Definition at line 411 of file ExpList.h.
References v_WriteTecplotField().
|
inline |
Definition at line 398 of file ExpList.h.
References v_WriteTecplotHeader().
|
inline |
Definition at line 404 of file ExpList.h.
References v_WriteTecplotZone().
void Nektar::MultiRegions::ExpList::WriteVtkFooter | ( | std::ostream & | outfile | ) |
Definition at line 1862 of file ExpList.cpp.
Referenced by WriteTecplotConnectivity().
void Nektar::MultiRegions::ExpList::WriteVtkHeader | ( | std::ostream & | outfile | ) |
Definition at line 1854 of file ExpList.cpp.
Referenced by WriteTecplotConnectivity().
|
inline |
Definition at line 436 of file ExpList.h.
References FillBndCondFromField(), GetCoeff(), GetCoeffs(), GetCoordim(), GetPhys(), GetShapeDimension(), GlobalToLocal(), ImposeDirichletConditions(), Linf(), LocalToGlobal(), MULTI_REGIONS_EXPORT, Nektar::NullNekDouble1DArray, SetCoeff(), SetCoeffs(), SetCoeffsArray(), and v_WriteVtkPieceData().
void Nektar::MultiRegions::ExpList::WriteVtkPieceFooter | ( | std::ostream & | outfile, |
int | expansion | ||
) |
Definition at line 1875 of file ExpList.cpp.
Referenced by WriteVtkPieceHeader().
|
inline |
Definition at line 426 of file ExpList.h.
References MULTI_REGIONS_EXPORT, v_WriteVtkPieceHeader(), and WriteVtkPieceFooter().
|
protected |
Definition at line 1108 of file ExpList.h.
Referenced by GetBlockMatrix().
Offset of elemental data into the array m_coeffs.
Definition at line 1101 of file ExpList.h.
Referenced by CreateCollections(), Nektar::MultiRegions::DisContField3D::EvaluateHDGPostProcessing(), Nektar::MultiRegions::DisContField2D::EvaluateHDGPostProcessing(), GeneralMatrixOp_IterPerExp(), GenGlobalMatrixFull(), GetCoeff_Offset(), IProductWRTDerivBase(), IProductWRTDirectionalDerivBase(), Nektar::MultiRegions::DisContField2D::L2_DGDeriv(), Nektar::MultiRegions::ExpList1DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), SetCoeffPhysOffsets(), Nektar::MultiRegions::ExpListHomogeneous2D::v_AppendFieldData(), Nektar::MultiRegions::ExpListHomogeneous1D::v_AppendFieldData(), v_AppendFieldData(), v_ExtractCoeffsToCoeffs(), Nektar::MultiRegions::ExpListHomogeneous2D::v_ExtractDataToCoeffs(), Nektar::MultiRegions::ExpListHomogeneous1D::v_ExtractDataToCoeffs(), v_ExtractDataToCoeffs(), v_FwdTrans_BndConstrained(), and Nektar::MultiRegions::DisContField1D::v_HelmSolve().
Concatenation of all local expansion coefficients.
The array of length m_ncoeffs \(=N_{\mathrm{eof}}\) which is the concatenation of the local expansion coefficients \(\hat{u}_n^e\) over all \(N_{\mathrm{el}}\) elements
\[\mathrm{\texttt{m\_coeffs}}=\boldsymbol{\hat{u}}_{l} = \underline{\boldsymbol{\hat{u}}}^e = \left [ \begin{array}{c} \boldsymbol{\hat{u}}^{1} \ \ \boldsymbol{\hat{u}}^{2} \ \ \vdots \ \ \boldsymbol{\hat{u}}^{{{N_{\mathrm{el}}}}} \end{array} \right ], \quad \mathrm{where}\quad \boldsymbol{\hat{u}}^{e}[n]=\hat{u}_n^{e}\]
Definition at line 1052 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField2D::Assemble(), Nektar::MultiRegions::ContField3D::Assemble(), Nektar::MultiRegions::ContField1D::Assemble(), Nektar::MultiRegions::DisContField3D::EvaluateHDGPostProcessing(), Nektar::MultiRegions::DisContField2D::EvaluateHDGPostProcessing(), ExpList(), Nektar::MultiRegions::ExpList0D::ExpList0D(), Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::ExpList2D::ExpList2D(), Nektar::MultiRegions::ExpList3D::ExpList3D(), GetCoeff(), GetCoeffs(), Nektar::MultiRegions::DisContField2D::L2_DGDeriv(), SetCoeff(), Nektar::MultiRegions::ExpList1DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), SetCoeffs(), SetCoeffsArray(), UpdateCoeffs(), Nektar::MultiRegions::ExpListHomogeneous2D::v_AppendFieldData(), Nektar::MultiRegions::ExpListHomogeneous1D::v_AppendFieldData(), v_AppendFieldData(), Nektar::MultiRegions::ContField3D::v_FillBndCondFromField(), Nektar::MultiRegions::ContField2D::v_FillBndCondFromField(), Nektar::MultiRegions::ContField3D::v_GlobalToLocal(), Nektar::MultiRegions::ContField1D::v_GlobalToLocal(), Nektar::MultiRegions::ContField2D::v_GlobalToLocal(), Nektar::MultiRegions::ContField3D::v_LocalToGlobal(), Nektar::MultiRegions::ContField1D::v_LocalToGlobal(), Nektar::MultiRegions::ContField2D::v_LocalToGlobal(), and v_WriteTecplotField().
|
protected |
Offset of elemental data into the array m_coeffs.
Definition at line 1095 of file ExpList.h.
Referenced by CreateCollections(), IProductWRTDerivBase(), v_BwdTrans_IterPerExp(), v_IProductWRTBase(), and v_IProductWRTBase_IterPerExp().
|
protected |
Offset of elemental data into the array m_phys.
Definition at line 1098 of file ExpList.h.
Referenced by CreateCollections(), IProductWRTDerivBase(), v_BwdTrans_IterPerExp(), v_IProductWRTBase(), v_IProductWRTBase_IterPerExp(), and v_PhysDeriv().
|
protected |
Definition at line 1092 of file ExpList.h.
Referenced by CreateCollections(), IProductWRTDerivBase(), v_BwdTrans_IterPerExp(), v_IProductWRTBase(), v_IProductWRTBase_IterPerExp(), and v_PhysDeriv().
|
protected |
Communicator.
Definition at line 1020 of file ExpList.h.
Referenced by CreateCollections(), Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::ExpList2D::ExpList2D(), Nektar::MultiRegions::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::ExpListHomogeneous1D::ExpListHomogeneous1D(), Nektar::MultiRegions::ExpListHomogeneous2D::ExpListHomogeneous2D(), Nektar::MultiRegions::ExpListHomogeneous1D::GenHomogeneous1DBlockMatrix(), GetComm(), H1(), Nektar::MultiRegions::ExpListHomogeneous1D::Homogeneous1DTrans(), Linf(), Nektar::MultiRegions::DisContField3D::SameTypeOfBoundaryConditions(), Nektar::MultiRegions::DisContField2D::SameTypeOfBoundaryConditions(), Nektar::MultiRegions::ExpListHomogeneous1D::v_DealiasedDotProd(), Nektar::MultiRegions::ExpListHomogeneous1D::v_DealiasedProd(), Nektar::MultiRegions::ExpList3DHomogeneous1D::v_HomogeneousEnergy(), Nektar::MultiRegions::ExpList2DHomogeneous1D::v_Integral(), v_Integral(), Nektar::MultiRegions::ExpList3DHomogeneous1D::v_L2(), v_L2(), and Nektar::MultiRegions::ExpListHomogeneous1D::v_PhysDeriv().
|
protected |
Mapping from geometry ID of element to index inside m_exp.
Definition at line 1116 of file ExpList.h.
Referenced by GetExpIndex(), Nektar::MultiRegions::ExpListHomogeneous1D::v_AppendFieldData(), Nektar::MultiRegions::ExpListHomogeneous1D::v_ExtractDataToCoeffs(), and v_ExtractDataToCoeffs().
|
protected |
The list of local expansions.
The (shared pointer to the) vector containing (shared pointers to) all local expansions. The fact that the local expansions are all stored as a (pointer to a) #StdExpansion, the abstract base class for all local expansions, allows a general implementation where most of the routines for the derived classes are defined in the ExpList base class.
Definition at line 1090 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField3DHomogeneous1D::ContField3DHomogeneous1D(), Nektar::MultiRegions::ContField3DHomogeneous2D::ContField3DHomogeneous2D(), CreateCollections(), Nektar::MultiRegions::DisContField3DHomogeneous1D::DisContField3DHomogeneous1D(), Nektar::MultiRegions::DisContField3DHomogeneous2D::DisContField3DHomogeneous2D(), EvalBasisNumModesMax(), EvalBasisNumModesMaxPerExp(), ExpList(), Nektar::MultiRegions::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::ExpList3DHomogeneous2D::ExpList3DHomogeneous2D(), GenBlockMatrix(), GeneralGetFieldDefinitions(), Nektar::MultiRegions::ExpList3DHomogeneous1D::GenExpList3DHomogeneous1D(), Get1DScaledTotPoints(), GetCoordim(), GetExp(), GetExpIndex(), GetNcoeffs(), GetShapeDimension(), GetTotPoints(), Nektar::MultiRegions::DisContField1D::IsLeftAdjacentVertex(), PhysEvaluate(), SetCoeffPhysOffsets(), Nektar::MultiRegions::DisContField3D::SetUpDG(), Nektar::MultiRegions::DisContField2D::SetUpDG(), Nektar::MultiRegions::DisContField1D::SetUpDG(), Nektar::MultiRegions::DisContField1D::v_AddTraceIntegral(), Nektar::MultiRegions::ExpListHomogeneous1D::v_ExtractDataToCoeffs(), v_ExtractDataToCoeffs(), v_GetMovingFrames(), Nektar::MultiRegions::ExpList0D::v_GetNormals(), Nektar::MultiRegions::ExpList2D::v_GetNormals(), Nektar::MultiRegions::ExpList1D::v_GetNormals(), Nektar::MultiRegions::ExpList3D::v_PhysGalerkinProjection1DScaled(), Nektar::MultiRegions::ExpList2D::v_PhysGalerkinProjection1DScaled(), Nektar::MultiRegions::ExpList3D::v_PhysInterp1DScaled(), Nektar::MultiRegions::ExpList2D::v_PhysInterp1DScaled(), Nektar::MultiRegions::ExpList3D::v_ReadGlobalOptimizationParameters(), Nektar::MultiRegions::ExpList2D::v_ReadGlobalOptimizationParameters(), v_Reset(), Nektar::MultiRegions::ExpList3D::v_SetUpPhysNormals(), Nektar::MultiRegions::ExpList2D::v_SetUpPhysNormals(), Nektar::MultiRegions::ExpList1D::v_SetUpPhysNormals(), v_SmoothField(), Nektar::MultiRegions::ExpList2D::v_Upwind(), Nektar::MultiRegions::ExpList1D::v_Upwind(), v_WriteTecplotConnectivity(), and v_WriteTecplotZone().
ExpansionType Nektar::MultiRegions::ExpList::m_expType |
Definition at line 1002 of file ExpList.h.
Referenced by GetExpType(), SetExpType(), v_WriteTecplotHeader(), and v_WriteTecplotZone().
|
protected |
Definition at line 1106 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField2D::BwdTrans(), Nektar::MultiRegions::ContField3DHomogeneous1D::ContField3DHomogeneous1D(), Nektar::MultiRegions::ContField3DHomogeneous2D::ContField3DHomogeneous2D(), Nektar::MultiRegions::DisContField3DHomogeneous1D::DisContField3DHomogeneous1D(), Nektar::MultiRegions::DisContField3DHomogeneous2D::DisContField3DHomogeneous2D(), Nektar::MultiRegions::ExpList0D::ExpList0D(), Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::ExpList1DHomogeneous2D::ExpList1DHomogeneous2D(), Nektar::MultiRegions::ExpList2D::ExpList2D(), Nektar::MultiRegions::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::ExpList3D::ExpList3D(), Nektar::MultiRegions::ExpList3DHomogeneous2D::ExpList3DHomogeneous2D(), GeneralMatrixOp_IterPerExp(), Nektar::MultiRegions::ExpList3DHomogeneous1D::GenExpList3DHomogeneous1D(), GetGlobalOptParam(), Nektar::MultiRegions::ContField2D::IProductWRTBase(), Nektar::MultiRegions::ContField3D::v_BwdTrans(), Nektar::MultiRegions::ContField3D::v_GeneralMatrixOp(), Nektar::MultiRegions::ContField2D::v_GeneralMatrixOp(), Nektar::MultiRegions::ContField3D::v_IProductWRTBase(), Nektar::MultiRegions::ExpList3D::v_ReadGlobalOptimizationParameters(), and Nektar::MultiRegions::ExpList2D::v_ReadGlobalOptimizationParameters().
|
protected |
Mesh associated with this expansion list.
Definition at line 1026 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField3DHomogeneous1D::ContField3DHomogeneous1D(), Nektar::MultiRegions::DisContField1D::DisContField1D(), Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::DisContField2D::FindPeriodicEdges(), Nektar::MultiRegions::DisContField3D::FindPeriodicFaces(), GetExpIndex(), GetGraph(), Nektar::MultiRegions::DisContField3D::SetUpDG(), Nektar::MultiRegions::DisContField2D::SetUpDG(), Nektar::MultiRegions::DisContField1D::SetUpDG(), Nektar::MultiRegions::DisContField3D::v_GetBoundaryToElmtMap(), Nektar::MultiRegions::DisContField2D::v_GetBoundaryToElmtMap(), and v_Reset().
|
protected |
The total number of local degrees of freedom. m_ncoeffs \(=N_{\mathrm{eof}}=\sum_{e=1}^{{N_{\mathrm{el}}}}N^{e}_l\).
Definition at line 1030 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField2D::BwdTrans(), Nektar::MultiRegions::ContField1D::ContField1D(), Nektar::MultiRegions::ContField2D::ContField2D(), Nektar::MultiRegions::ContField3D::ContField3D(), ExpList(), Nektar::MultiRegions::ExpList0D::ExpList0D(), Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::ExpList2D::ExpList2D(), Nektar::MultiRegions::ExpList3D::ExpList3D(), Nektar::MultiRegions::ContField1D::FwdTrans(), GetNcoeffs(), Nektar::MultiRegions::ContField2D::IProductWRTBase(), Nektar::MultiRegions::ContField1D::IProductWRTBase(), Nektar::MultiRegions::DisContField2D::L2_DGDeriv(), Nektar::MultiRegions::ContField2D::LaplaceSolve(), MultiplyByElmtInvMass(), Nektar::MultiRegions::ContField1D::MultiplyByInvMassMatrix(), Nektar::MultiRegions::ExpList1DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), SetCoeffPhysOffsets(), Nektar::MultiRegions::ContField3D::v_BwdTrans(), v_FwdTrans_IterPerExp(), Nektar::MultiRegions::ContField3D::v_GeneralMatrixOp(), Nektar::MultiRegions::ContField1D::v_GeneralMatrixOp(), Nektar::MultiRegions::ContField2D::v_GeneralMatrixOp(), Nektar::MultiRegions::DisContField3D::v_HelmSolve(), Nektar::MultiRegions::DisContField2D::v_HelmSolve(), Nektar::MultiRegions::DisContField1D::v_HelmSolve(), and Nektar::MultiRegions::ContField3D::v_IProductWRTBase().
|
protected |
The total number of quadrature points. m_npoints \(=Q_{\mathrm{tot}}=\sum_{e=1}^{{N_{\mathrm{el}}}}N^{e}_Q\)
Definition at line 1035 of file ExpList.h.
Referenced by ExpList(), Nektar::MultiRegions::ExpList0D::ExpList0D(), Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::ExpList2D::ExpList2D(), Nektar::MultiRegions::ExpList3D::ExpList3D(), GenGlobalMatrix(), GetNpoints(), GetTotPoints(), Nektar::MultiRegions::ExpListHomogeneous1D::Homogeneous1DTrans(), Nektar::MultiRegions::ExpListHomogeneous2D::Homogeneous2DTrans(), Nektar::MultiRegions::DisContField2D::L2_DGDeriv(), Nektar::MultiRegions::ContField2D::LinearAdvectionEigs(), Linf(), Nektar::MultiRegions::ExpList1DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), SetCoeffPhysOffsets(), and SetPhys().
The global expansion evaluated at the quadrature points.
The array of length m_npoints \(=Q_{\mathrm{tot}}\) containing the evaluation of \(u^{\delta}(\boldsymbol{x})\) at the quadrature points \(\boldsymbol{x}_i\).
\[\mathrm{\texttt{m\_phys}}=\boldsymbol{u}_{l} = \underline{\boldsymbol{u}}^e = \left [ \begin{array}{c} \boldsymbol{u}^{1} \ \ \boldsymbol{u}^{2} \ \ \vdots \ \ \boldsymbol{u}^{{{N_{\mathrm{el}}}}} \end{array} \right ],\quad \mathrm{where}\quad \boldsymbol{u}^{e}[i]=u^{\delta}(\boldsymbol{x}_i)\]
Definition at line 1069 of file ExpList.h.
Referenced by ExpList(), Nektar::MultiRegions::ExpList0D::ExpList0D(), Nektar::MultiRegions::ExpList1D::ExpList1D(), Nektar::MultiRegions::ExpList2D::ExpList2D(), Nektar::MultiRegions::ExpList3D::ExpList3D(), GetPhys(), Nektar::MultiRegions::DisContField2D::L2_DGDeriv(), PhysIntegral(), Nektar::MultiRegions::ExpList1DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), SetPhys(), SetPhysArray(), UpdatePhys(), Nektar::MultiRegions::DisContField3D::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField1D::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField2D::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField3D::v_GetFwdBwdTracePhys(), Nektar::MultiRegions::DisContField1D::v_GetFwdBwdTracePhys(), Nektar::MultiRegions::DisContField2D::v_GetFwdBwdTracePhys(), v_WriteTecplotField(), Nektar::MultiRegions::ExpListHomogeneous2D::v_WriteVtkPieceData(), Nektar::MultiRegions::ExpListHomogeneous1D::v_WriteVtkPieceData(), and v_WriteVtkPieceData().
Offset of elemental data into the array m_phys.
Definition at line 1104 of file ExpList.h.
Referenced by CreateCollections(), ExponentialFilter(), GenBlockMatrix(), GeneralMatrixOp_IterPerExp(), GenerateElementVector(), GenGlobalMatrix(), GenGlobalMatrixFull(), GetPhys_Offset(), H1(), IProductWRTDerivBase(), IProductWRTDirectionalDerivBase(), PhysEvaluate(), PhysIntegral(), Nektar::MultiRegions::ExpList1DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), SetCoeffPhysOffsets(), v_FwdTrans_BndConstrained(), v_GetCoords(), v_GetMovingFrames(), Nektar::MultiRegions::ExpList0D::v_GetNormals(), Nektar::MultiRegions::ExpList2D::v_GetNormals(), Nektar::MultiRegions::ExpList1D::v_GetNormals(), Nektar::MultiRegions::ExpList2DHomogeneous1D::v_Integral(), v_Integral(), v_L2(), v_PhysDeriv(), v_PhysDirectionalDeriv(), Nektar::MultiRegions::ExpList2D::v_Upwind(), Nektar::MultiRegions::ExpList1D::v_Upwind(), v_VectorFlux(), v_WriteTecplotField(), Nektar::MultiRegions::ExpListHomogeneous2D::v_WriteVtkPieceData(), Nektar::MultiRegions::ExpListHomogeneous1D::v_WriteVtkPieceData(), and v_WriteVtkPieceData().
|
protected |
The state of the array m_phys.
Indicates whether the array m_phys, created to contain the evaluation of \(u^{\delta}(\boldsymbol{x})\) at the quadrature points \(\boldsymbol{x}_i\), is filled with these values.
Definition at line 1078 of file ExpList.h.
Referenced by Nektar::MultiRegions::ExpList2D::ExpList2D(), GetPhysState(), PhysIntegral(), SetPhys(), SetPhysState(), UpdatePhys(), Nektar::MultiRegions::DisContField3D::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField1D::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField2D::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_ExtractTracePhys(), and v_WriteTecplotField().
|
protected |
Session.
Definition at line 1023 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField1D::ContField1D(), Nektar::MultiRegions::ContField2D::ContField2D(), Nektar::MultiRegions::ContField3D::ContField3D(), Nektar::MultiRegions::ContField3DHomogeneous1D::ContField3DHomogeneous1D(), CreateCollections(), Nektar::MultiRegions::DisContField1D::DisContField1D(), Nektar::MultiRegions::DisContField2D::DisContField2D(), Nektar::MultiRegions::DisContField3D::DisContField3D(), Nektar::MultiRegions::DisContField3DHomogeneous1D::DisContField3DHomogeneous1D(), Nektar::MultiRegions::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::ExpList3DHomogeneous2D::ExpList3DHomogeneous2D(), Nektar::MultiRegions::ExpListHomogeneous1D::ExpListHomogeneous1D(), ExtractFileBCs(), Nektar::MultiRegions::DisContField2D::FindPeriodicEdges(), Nektar::MultiRegions::DisContField3D::FindPeriodicFaces(), Nektar::MultiRegions::DisContField1D::FindPeriodicVertices(), Nektar::MultiRegions::DisContField3D::GenerateBoundaryConditionExpansion(), Nektar::MultiRegions::DisContField2D::GenerateBoundaryConditionExpansion(), Nektar::MultiRegions::ExpList3DHomogeneous1D::GenExpList3DHomogeneous1D(), GenGlobalMatrix(), Nektar::MultiRegions::DisContField1D::GetDomainBCs(), GetSession(), Nektar::MultiRegions::ExpListHomogeneous1D::Homogeneous1DTrans(), Nektar::MultiRegions::DisContField3DHomogeneous2D::SetupBoundaryConditions(), Nektar::MultiRegions::DisContField3DHomogeneous1D::SetupBoundaryConditions(), Nektar::MultiRegions::DisContField3D::SetUpDG(), Nektar::MultiRegions::DisContField2D::SetUpDG(), Nektar::MultiRegions::DisContField1D::SetUpDG(), v_CurlCurl(), Nektar::MultiRegions::ExpListHomogeneous1D::v_DealiasedDotProd(), Nektar::MultiRegions::ExpListHomogeneous1D::v_DealiasedProd(), Nektar::MultiRegions::ExpListHomogeneous1D::v_GetFieldDefinitions(), Nektar::MultiRegions::ExpListHomogeneous1D::v_PhysDeriv(), Nektar::MultiRegions::ExpList3D::v_ReadGlobalOptimizationParameters(), Nektar::MultiRegions::ExpList2D::v_ReadGlobalOptimizationParameters(), and Nektar::MultiRegions::ExpList3DHomogeneous1D::v_WriteVtkPieceHeader().
|
protected |
Definition at line 1113 of file ExpList.h.
Referenced by GetWaveSpace(), SetWaveSpace(), Nektar::MultiRegions::ExpListHomogeneous2D::v_BwdTrans(), Nektar::MultiRegions::ExpListHomogeneous1D::v_BwdTrans(), Nektar::MultiRegions::ExpListHomogeneous2D::v_BwdTrans_IterPerExp(), Nektar::MultiRegions::ExpListHomogeneous1D::v_BwdTrans_IterPerExp(), Nektar::MultiRegions::ExpListHomogeneous1D::v_DealiasedDotProd(), Nektar::MultiRegions::ExpListHomogeneous2D::v_DealiasedProd(), Nektar::MultiRegions::ExpListHomogeneous1D::v_DealiasedProd(), Nektar::MultiRegions::ExpListHomogeneous2D::v_FwdTrans(), Nektar::MultiRegions::ExpListHomogeneous1D::v_FwdTrans(), Nektar::MultiRegions::ExpListHomogeneous1D::v_FwdTrans_BndConstrained(), Nektar::MultiRegions::ExpListHomogeneous2D::v_FwdTrans_IterPerExp(), Nektar::MultiRegions::ExpListHomogeneous1D::v_FwdTrans_IterPerExp(), Nektar::MultiRegions::ContField3DHomogeneous2D::v_HelmSolve(), Nektar::MultiRegions::ContField3DHomogeneous1D::v_HelmSolve(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_HelmSolve(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_HelmSolve(), Nektar::MultiRegions::ExpListHomogeneous1D::v_IProductWRTBase(), Nektar::MultiRegions::ExpListHomogeneous1D::v_IProductWRTBase_IterPerExp(), Nektar::MultiRegions::ExpListHomogeneous2D::v_PhysDeriv(), and Nektar::MultiRegions::ExpListHomogeneous1D::v_PhysDeriv().