|
Nektar++
|
Base class for all multi-elemental spectral/hp expansions. More...
#include <ExpList.h>
Public Member Functions | |
| ExpList (const ExpansionType Type=eNoType) | |
| The default constructor using a type. | |
| ExpList (const ExpList &in, const bool DeclareCoeffPhysArrays=true) | |
| The copy constructor. | |
| ExpList (const ExpList &in, const std::vector< unsigned int > &eIDs, const bool DeclareCoeffPhysArrays=true, const Collections::ImplementationType ImpType=Collections::eNoImpType) | |
| Constructor copying only elements defined in eIds. | |
| ExpList (const LibUtilities::SessionReaderSharedPtr &pSession, const SpatialDomains::MeshGraphSharedPtr &graph, const bool DeclareCoeffPhysArrays=true, const std::string &var="DefaultVar", const Collections::ImplementationType ImpType=Collections::eNoImpType) | |
| Generate an ExpList from a meshgraph graph and session file. | |
| ExpList (const LibUtilities::SessionReaderSharedPtr &pSession, const SpatialDomains::ExpansionInfoMap &expansions, const bool DeclareCoeffPhysArrays=true, const Collections::ImplementationType ImpType=Collections::eNoImpType) | |
| Sets up a list of local expansions based on an expansion Map. | |
| ExpList (SpatialDomains::PointGeom *geom) | |
| Specialised constructors for 0D Expansions Wrapper around LocalRegion::PointExp - used in PrePacing.cpp. | |
| ExpList (const LibUtilities::SessionReaderSharedPtr &pSession, const Array< OneD, const ExpListSharedPtr > &bndConstraint, const Array< OneD, const SpatialDomains ::BoundaryConditionShPtr > &bndCond, const LocalRegions::ExpansionVector &locexp, const SpatialDomains::MeshGraphSharedPtr &graph, const LibUtilities::CommSharedPtr &comm, const bool DeclareCoeffPhysArrays=true, const std::string variable="DefaultVar", const Collections::ImplementationType ImpType=Collections::eNoImpType) | |
| Generate expansions for the trace space expansions used in DisContField. | |
| ExpList (const LibUtilities::SessionReaderSharedPtr &pSession, const LocalRegions::ExpansionVector &locexp, const SpatialDomains::MeshGraphSharedPtr &graph, const bool DeclareCoeffPhysArrays, const std::string variable, const Collections::ImplementationType ImpType=Collections::eNoImpType) | |
| Generate an trace ExpList from a meshgraph graph and session file. | |
| ExpList (const LibUtilities::SessionReaderSharedPtr &pSession, const SpatialDomains::CompositeMap &domain, const SpatialDomains::MeshGraphSharedPtr &graph, const bool DeclareCoeffPhysArrays=true, const std::string variable="DefaultVar", bool SetToOneSpaceDimension=false, const LibUtilities::CommSharedPtr comm=LibUtilities::CommSharedPtr(), const Collections::ImplementationType ImpType=Collections::eNoImpType) | |
| Constructor based on domain information only for 1D & 2D boundary conditions. | |
| virtual | ~ExpList () |
| The default destructor. | |
| 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\). | |
| int | GetNcoeffs (const int eid) const |
| Returns the total number of local degrees of freedom for element eid. | |
| ExpansionType | GetExpType (void) |
| Returns the type of the expansion. | |
| void | SetExpType (ExpansionType Type) |
| Returns the type of the expansion. | |
| int | EvalBasisNumModesMax (void) const |
| Evaulates the maximum number of modes in the elemental basis order over all elements. | |
| const Array< OneD, int > | EvalBasisNumModesMaxPerExp (void) const |
| Returns the vector of the number of modes in the elemental basis order over all elements. | |
| int | GetTotPoints (void) const |
| Returns the total number of quadrature points m_npoints \(=Q_{\mathrm{tot}}\). | |
| int | GetTotPoints (const int eid) const |
| Returns the total number of quadrature points for eid's element \(=Q_{\mathrm{tot}}\). | |
| int | GetNpoints (void) const |
| Returns the total number of quadrature points m_npoints \(=Q_{\mathrm{tot}}\). | |
| int | Get1DScaledTotPoints (const NekDouble scale) const |
| Returns the total number of qudature points scaled by the factor scale on each 1D direction. | |
| void | SetWaveSpace (const bool wavespace) |
| Sets the wave space to the one of the possible configuration true or false. | |
| void | SetModifiedBasis (const bool modbasis) |
| Set Modified Basis for the stability analysis. | |
| 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. | |
| void | SetPhys (int i, NekDouble val) |
| Set the i th value of m_phys to value val. | |
| void | SetPhys (const Array< OneD, const NekDouble > &inarray) |
| Fills the array m_phys. | |
| void | SetPhysArray (Array< OneD, NekDouble > &inarray) |
| Sets the array m_phys. | |
| 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. | |
| bool | GetPhysState (void) const |
| This function indicates whether the array of physical values \(\boldsymbol{u}_l\) (implemented as m_phys) is filled or not. | |
| void | MultiplyByQuadratureMetric (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| multiply the metric jacobi and quadrature weights | |
| void | DivideByQuadratureMetric (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| Divided by the metric jacobi and quadrature weights. | |
| void | IProductWRTBase (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})\). | |
| 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. | |
| void | IProductWRTDirectionalDerivBase (const Array< OneD, const NekDouble > &direction, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| 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 of all local expansion modes \(\phi_n^e(\boldsymbol{x})\). | |
| void | FwdTransLocalElmt (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. | |
| void | FwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| 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. | |
| void | MultiplyByInvMassMatrix (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| void | MultiplyByMassMatrix (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| void | SmoothField (Array< OneD, NekDouble > &field) |
| Smooth a field across elements. | |
| GlobalLinSysKey | HelmSolve (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, 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. | |
| GlobalLinSysKey | LinearAdvectionDiffusionReactionSolve (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, 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 Advection Diffusion Reaction. | |
| GlobalLinSysKey | LinearAdvectionReactionSolve (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, 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 Advection Diffusion Reaction. | |
| void | FwdTransBndConstrained (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| void | BwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| This function elementally evaluates the backward transformation of the global spectral/hp element expansion. | |
| 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\). | |
| void | GetCoords (const int eid, Array< OneD, NekDouble > &coord_0, Array< OneD, NekDouble > &coord_1=NullNekDouble1DArray, Array< OneD, NekDouble > &coord_2=NullNekDouble1DArray) |
| void | HomogeneousFwdTrans (const int npts, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, bool Shuff=true, bool UnShuff=true) |
| void | HomogeneousBwdTrans (const int npts, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, bool Shuff=true, bool UnShuff=true) |
| void | DealiasedProd (const int num_dofs, const Array< OneD, NekDouble > &inarray1, const Array< OneD, NekDouble > &inarray2, Array< OneD, NekDouble > &outarray) |
| void | DealiasedDotProd (const int num_dofs, const Array< OneD, Array< OneD, NekDouble > > &inarray1, const Array< OneD, Array< OneD, NekDouble > > &inarray2, Array< OneD, Array< OneD, NekDouble > > &outarray) |
| 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. | |
| void | Reset () |
| Reset geometry information and reset matrices. | |
| void | ResetMatrices () |
| Reset matrices. | |
| 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. | |
| void | SetCoeff (int i, NekDouble val) |
| Set the i th coefficiient in m_coeffs to value val. | |
| void | SetCoeffs (int i, NekDouble val) |
| Set the i th coefficiient in m_coeffs to value val. | |
| void | SetCoeffsArray (Array< OneD, NekDouble > &inarray) |
| Set the m_coeffs array to inarray. | |
| int | GetShapeDimension () |
| This function returns the dimension of the shape of the element eid. | |
| 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. | |
| void | ImposeDirichletConditions (Array< OneD, NekDouble > &outarray) |
| Impose Dirichlet Boundary Conditions onto Array. | |
| void | ImposeNeumannConditions (Array< OneD, NekDouble > &outarray) |
| Add Neumann Boundary Condition forcing to Array. | |
| void | ImposeRobinConditions (Array< OneD, NekDouble > &outarray) |
| Add Robin Boundary Condition forcing to Array. | |
| void | FillBndCondFromField (const Array< OneD, NekDouble > coeffs) |
| Fill Bnd Condition expansion from the values stored in expansion. | |
| void | FillBndCondFromField (const int nreg, const Array< OneD, NekDouble > coeffs) |
| Fill Bnd Condition expansion in nreg from the values stored in expansion. | |
| void | LocalToGlobal (bool useComm=true) |
| Gathers the global coefficients \(\boldsymbol{\hat{u}}_g\) from the local coefficients \(\boldsymbol{\hat{u}}_l\). | |
| 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\). | |
| 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. | |
| NekDouble | GetCoeffs (int i) |
| Get the i th value (coefficient) of m_coeffs. | |
| 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. | |
| 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. | |
| NekDouble | L2 (const Array< OneD, const NekDouble > &inarray, const Array< OneD, const NekDouble > &soln=NullNekDouble1DArray) |
| This function calculates the \(L_\infty\) error of the global This function calculates the \(L_2\) error with respect to soln of the global spectral/hp element approximation. | |
| 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. | |
| NekDouble | Integral () |
| Calculates the \(H^1\) error of the global spectral/hp element approximation. | |
| 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. | |
| void | SetHomo1DSpecVanVisc (Array< OneD, NekDouble > visc) |
| This function sets the Spectral Vanishing Viscosity in homogeneous1D expansion. | |
| 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. | |
| LibUtilities::TranspositionSharedPtr | GetTransposition (void) |
| This function returns the transposition class associated with the homogeneous expansion. | |
| NekDouble | GetHomoLen (void) |
| This function returns the Width of homogeneous direction associated with the homogeneous expansion. | |
| void | SetHomoLen (const NekDouble lhom) |
| This function sets the Width of homogeneous direction associated with the homogeneous expansion. | |
| 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. | |
| 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. | |
| 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. | |
| int | GetExpSize (void) |
| This function returns the number of elements in the expansion. | |
| size_t | GetNumElmts (void) |
| This function returns the number of elements in the expansion which may be different for a homogeoenous extended expansionp. | |
| const std::shared_ptr< LocalRegions::ExpansionVector > | GetExp () const |
| This function returns the vector of elements in the expansion. | |
| LocalRegions::ExpansionSharedPtr & | GetExp (int n) const |
| This function returns (a shared pointer to) the local elemental expansion of the \(n^{\mathrm{th}}\) element. | |
| LocalRegions::ExpansionSharedPtr & | GetExpFromGeomId (int n) |
| This function returns (a shared pointer to) the local elemental expansion of the \(n^{\mathrm{th}}\) element given a global geometry ID. | |
| 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. | |
| int | GetExpIndex (const Array< OneD, const NekDouble > &gloCoord, NekDouble tol=0.0, bool returnNearestElmt=false, int cachedId=-1, NekDouble maxDistance=1e6) |
| This function returns the index of the local elemental expansion containing the arbitrary point given by gloCoord, within a distance tolerance of tol. | |
| int | GetExpIndex (const Array< OneD, const NekDouble > &gloCoords, Array< OneD, NekDouble > &locCoords, NekDouble tol=0.0, bool returnNearestElmt=false, int cachedId=-1, NekDouble maxDistance=1e6) |
| 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 local contiguous list of coeffs correspoinding to element n. | |
| int | GetPhys_Offset (int n) const |
| Get the start offset position for a local contiguous list of quadrature points in a full array correspoinding to element n. | |
| 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. | |
| 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. | |
| 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. | |
| 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 () |
| const Array< OneD, const NekDouble > & | GetBndCondBwdWeight () |
| Get the weight value for boundary conditions. | |
| void | SetBndCondBwdWeight (const int index, const NekDouble value) |
| Set the weight value for boundary conditions. | |
| std::shared_ptr< ExpList > & | UpdateBndCondExpansion (int i) |
| void | Upwind (const Array< OneD, const NekDouble > &Vn, const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &Upwind) |
| 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) |
| std::shared_ptr< ExpList > & | GetTrace () |
| std::shared_ptr< AssemblyMapDG > & | GetTraceMap (void) |
| std::shared_ptr< InterfaceMapDG > & | GetInterfaceMap (void) |
| const Array< OneD, const int > & | GetTraceBndMap (void) |
| void | GetNormals (Array< OneD, Array< OneD, NekDouble > > &normals) |
| void | GetElmtNormalLength (Array< OneD, NekDouble > &lengthsFwd, Array< OneD, NekDouble > &lengthsBwd) |
| Get the length of elements in boundary normal direction. | |
| void | GetBwdWeight (Array< OneD, NekDouble > &weightAver, Array< OneD, NekDouble > &weightJump) |
| Get the weight value for boundary conditions for boundary average and jump calculations. | |
| 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, bool FillBnd=true, bool PutFwdInBwdOnBCs=false, bool DoExchange=true) |
| void | FillBwdWithBoundCond (const Array< OneD, NekDouble > &Fwd, Array< OneD, NekDouble > &Bwd, bool PutFwdInBwdOnBCs=false) |
| void | AddTraceQuadPhysToField (const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &field) |
| Add Fwd and Bwd value to field, a reverse procedure of GetFwdBwdTracePhys. | |
| void | AddTraceQuadPhysToOffDiag (const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &field) |
| void | GetLocTraceFromTracePts (const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &locTraceFwd, Array< OneD, NekDouble > &locTraceBwd) |
| void | FillBwdWithBwdWeight (Array< OneD, NekDouble > &weightave, Array< OneD, NekDouble > &weightjmp) |
| Fill Bwd with boundary conditions. | |
| void | PeriodicBwdCopy (const Array< OneD, const NekDouble > &Fwd, Array< OneD, NekDouble > &Bwd) |
| Copy and fill the Periodic boundaries. | |
| void | PeriodicBwdRot (Array< OneD, Array< OneD, NekDouble > > &Bwd) |
| Rotate Bwd trace for rotational periodicity boundaries when the flow is perpendicular to the rotation axis. | |
| void | PeriodicDeriveBwdRot (TensorOfArray3D< NekDouble > &Bwd) |
| Rotate Bwd trace derivative for rotational periodicity boundaries when the flow is perpendicular to the rotation axis. | |
| void | RotLocalBwdTrace (Array< OneD, Array< OneD, NekDouble > > &Bwd) |
| Rotate local Bwd trace across a rotational interface when the flow is perpendicular to the rotation axis. | |
| void | RotLocalBwdDeriveTrace (TensorOfArray3D< NekDouble > &Bwd) |
| Rotate local Bwd trace derivatives across a rotational interface when the flow is perpendicular to the rotation axis. | |
| 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, bool gridVelocity=false) |
| 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) |
| This function calculates the result of the multiplication of a matrix of type specified by mkey with a vector given by inarray. | |
| void | SetUpPhysNormals () |
| void | GetBoundaryToElmtMap (Array< OneD, int > &ElmtID, Array< OneD, int > &EdgeID) |
| virtual 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) |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| void | ExtractDataToCoeffs (LibUtilities::FieldDefinitionsSharedPtr &fielddef, std::vector< NekDouble > &fielddata, std::string &field, Array< OneD, NekDouble > &coeffs, std::unordered_map< int, int > zIdToPlane=std::unordered_map< int, int >()) |
| void | ExtractCoeffsFromFile (const std::string &fileName, LibUtilities::CommSharedPtr comm, const std::string &varName, Array< OneD, NekDouble > &coeffs) |
| void | GenerateElementVector (const int ElementID, const NekDouble scalar1, const NekDouble scalar2, Array< OneD, NekDouble > &outarray) |
| std::shared_ptr< ExpList > | GetSharedThisPtr () |
| Returns a shared pointer to the current object. | |
| std::shared_ptr< LibUtilities::SessionReader > | GetSession () const |
| Returns the session object. | |
| std::shared_ptr< LibUtilities::Comm > | GetComm () const |
| Returns the comm object. | |
| SpatialDomains::MeshGraphSharedPtr | GetGraph () |
| LibUtilities::BasisSharedPtr | GetHomogeneousBasis (void) |
| std::shared_ptr< ExpList > & | GetPlane (int n) |
| void | CreateCollections (Collections::ImplementationType ImpType=Collections::eNoImpType) |
| void | ClearGlobalLinSysManager (void) |
| int | GetPoolCount (std::string) |
| void | UnsetGlobalLinSys (GlobalLinSysKey, bool) |
| LibUtilities::NekManager< GlobalLinSysKey, GlobalLinSys > & | GetGlobalLinSysManager (void) |
| const Array< OneD, const std::pair< int, int > > & | GetCoeffsToElmt () const |
| Get m_coeffs to elemental value map. | |
| void | AddTraceJacToElmtJac (const Array< OneD, const DNekMatSharedPtr > &FwdMat, const Array< OneD, const DNekMatSharedPtr > &BwdMat, Array< OneD, DNekMatSharedPtr > &fieldMat) |
| void | GetMatIpwrtDeriveBase (const Array< OneD, const Array< OneD, NekDouble > > &inarray, const int nDirctn, Array< OneD, DNekMatSharedPtr > &mtxPerVar) |
| void | GetMatIpwrtDeriveBase (const TensorOfArray3D< NekDouble > &inarray, Array< OneD, DNekMatSharedPtr > &mtxPerVar) |
| void | GetDiagMatIpwrtBase (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, DNekMatSharedPtr > &mtxPerVar) |
| void | AddTraceIntegralToOffDiag (const Array< OneD, const NekDouble > &FwdFlux, const Array< OneD, const NekDouble > &BwdFlux, Array< OneD, NekDouble > &outarray) |
| void | AddRightIPTPhysDerivBase (const int dir, const Array< OneD, const DNekMatSharedPtr > ElmtJacQuad, Array< OneD, DNekMatSharedPtr > ElmtJacCoef) |
| void | AddRightIPTBaseMatrix (const Array< OneD, const DNekMatSharedPtr > ElmtJacQuad, Array< OneD, DNekMatSharedPtr > ElmtJacCoef) |
| const LocTraceToTraceMapSharedPtr & | GetLocTraceToTraceMap () const |
| std::vector< bool > & | GetLeftAdjacentTraces (void) |
| const std::unordered_map< int, int > & | GetElmtToExpId (void) |
| This function returns the map of index inside m_exp to geom id. | |
| int | GetElmtToExpId (int elmtId) |
| This function returns the index inside m_exp for a given geom id. | |
| const Collections::CollectionVector & | GetCollections () const |
| This function returns collections. | |
| int | Get_coll_coeff_offset (int n) const |
| int | Get_coll_phys_offset (int n) const |
| const Array< OneD, const Array< OneD, NekDouble > > & | GetGridVelocity () |
Protected Member Functions | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| virtual size_t | v_GetNumElmts (void) |
| virtual const Array< OneD, const std::shared_ptr< ExpList > > & | v_GetBndCondExpansions (void) |
| virtual const Array< OneD, const NekDouble > & | v_GetBndCondBwdWeight () |
| virtual void | v_SetBndCondBwdWeight (const int index, const NekDouble value) |
| 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 std::shared_ptr< InterfaceMapDG > & | v_GetInterfaceMap () |
| virtual const Array< OneD, const int > & | v_GetTraceBndMap () |
| virtual const std::shared_ptr< LocTraceToTraceMap > & | v_GetLocTraceToTraceMap (void) const |
| virtual std::vector< bool > & | v_GetLeftAdjacentTraces (void) |
| virtual void | v_GetNormals (Array< OneD, Array< OneD, NekDouble > > &normals) |
| Populate normals with the normals of all expansions. | |
| 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, bool FillBnd=true, bool PutFwdInBwdOnBCs=false, bool DoExchange=true) |
| virtual void | v_FillBwdWithBoundCond (const Array< OneD, NekDouble > &Fwd, Array< OneD, NekDouble > &Bwd, bool PutFwdInBwdOnBCs) |
| virtual void | v_AddTraceQuadPhysToField (const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &field) |
| virtual void | v_AddTraceQuadPhysToOffDiag (const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &field) |
| virtual void | v_GetLocTraceFromTracePts (const Array< OneD, const NekDouble > &Fwd, const Array< OneD, const NekDouble > &Bwd, Array< OneD, NekDouble > &locTraceFwd, Array< OneD, NekDouble > &locTraceBwd) |
| virtual void | v_FillBwdWithBwdWeight (Array< OneD, NekDouble > &weightave, Array< OneD, NekDouble > &weightjmp) |
| virtual void | v_PeriodicBwdCopy (const Array< OneD, const NekDouble > &Fwd, Array< OneD, NekDouble > &Bwd) |
| virtual void | v_PeriodicBwdRot (Array< OneD, Array< OneD, NekDouble > > &Bwd) |
| virtual void | v_PeriodicDeriveBwdRot (TensorOfArray3D< NekDouble > &Bwd) |
| virtual void | v_RotLocalBwdTrace (Array< OneD, Array< OneD, NekDouble > > &Bwd) |
| virtual void | v_RotLocalBwdDeriveTrace (TensorOfArray3D< 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, bool gridVelocity=false) |
| virtual void | v_MultiplyByInvMassMatrix (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| virtual GlobalLinSysKey | v_HelmSolve (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdRegions::ConstFactorMap &factors, const StdRegions::VarCoeffMap &varcoeff, const MultiRegions::VarFactorsMap &varfactors, const Array< OneD, const NekDouble > &dirForcing, const bool PhysSpaceForcing) |
| virtual GlobalLinSysKey | v_LinearAdvectionDiffusionReactionSolve (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdRegions::ConstFactorMap &factors, const StdRegions::VarCoeffMap &varcoeff, const MultiRegions::VarFactorsMap &varfactors, const Array< OneD, const NekDouble > &dirForcing, const bool PhysSpaceForcing) |
| virtual GlobalLinSysKey | v_LinearAdvectionReactionSolve (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const StdRegions::ConstFactorMap &factors, const StdRegions::VarCoeffMap &varcoeff, const MultiRegions::VarFactorsMap &varfactors, const Array< OneD, const NekDouble > &dirForcing, const bool PhysSpaceForcing) |
| virtual void | v_ImposeDirichletConditions (Array< OneD, NekDouble > &outarray) |
| virtual void | v_ImposeNeumannConditions (Array< OneD, NekDouble > &outarray) |
| virtual void | v_ImposeRobinConditions (Array< OneD, NekDouble > &outarray) |
| virtual void | v_FillBndCondFromField (const Array< OneD, NekDouble > coeffs) |
| virtual void | v_FillBndCondFromField (const int nreg, const Array< OneD, NekDouble > coeffs) |
| virtual void | v_Reset () |
| 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) |
| virtual void | v_FwdTrans (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| virtual void | v_FwdTransLocalElmt (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| virtual void | v_FwdTransBndConstrained (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) |
| virtual void | v_IProductWRTDerivBase (const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray) |
| virtual void | v_IProductWRTDerivBase (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, NekDouble > &outarray) |
| virtual void | v_GetCoords (Array< OneD, NekDouble > &coord_0, Array< OneD, NekDouble > &coord_1=NullNekDouble1DArray, Array< OneD, NekDouble > &coord_2=NullNekDouble1DArray) |
| virtual void | v_GetCoords (const int eid, Array< OneD, NekDouble > &xc0, Array< OneD, NekDouble > &xc1, Array< OneD, NekDouble > &xc2) |
| 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_Curl (Array< OneD, Array< OneD, NekDouble > > &Vel, Array< OneD, Array< OneD, NekDouble > > &Q) |
| 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 int npts, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, bool Shuff=true, bool UnShuff=true) |
| virtual void | v_HomogeneousBwdTrans (const int npts, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray, bool Shuff=true, bool UnShuff=true) |
| virtual void | v_DealiasedProd (const int num_dofs, const Array< OneD, NekDouble > &inarray1, const Array< OneD, NekDouble > &inarray2, Array< OneD, NekDouble > &outarray) |
| virtual void | v_DealiasedDotProd (const int num_dofs, const Array< OneD, Array< OneD, NekDouble > > &inarray1, const Array< OneD, Array< OneD, NekDouble > > &inarray2, Array< OneD, Array< OneD, NekDouble > > &outarray) |
| 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 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, std::unordered_map< int, int > zIdToPlane) |
| 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_WriteVtkPieceData (std::ostream &outfile, int expansion, std::string var) |
| virtual void | v_WriteVtkPieceHeader (std::ostream &outfile, int expansion, int istrip) |
| 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) |
| virtual int | v_GetPoolCount (std::string) |
| virtual void | v_UnsetGlobalLinSys (GlobalLinSysKey, bool) |
| virtual LibUtilities::NekManager< GlobalLinSysKey, GlobalLinSys > & | v_GetGlobalLinSysManager (void) |
| void | ExtractFileBCs (const std::string &fileName, LibUtilities::CommSharedPtr comm, const std::string &varName, const std::shared_ptr< ExpList > locExpList) |
| 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) |
| virtual void | v_AddTraceIntegralToOffDiag (const Array< OneD, const NekDouble > &FwdFlux, const Array< OneD, const NekDouble > &BwdFlux, Array< OneD, NekDouble > &outarray) |
Static Protected Member Functions | |
| static SpatialDomains::BoundaryConditionShPtr | GetBoundaryCondition (const SpatialDomains::BoundaryConditionCollection &collection, unsigned int index, const std::string &variable) |
Protected Attributes | |
| SpatialDomains::EntityHolder1D | m_holder |
| Pointer holder for PulseWaveSolver. | |
| ExpansionType | m_expType |
| Expansion type. | |
| LibUtilities::CommSharedPtr | m_comm |
| Communicator. | |
| LibUtilities::SessionReaderSharedPtr | m_session |
| Session. | |
| SpatialDomains::MeshGraphSharedPtr | m_graph |
| Mesh associated with this expansion list. | |
| 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\). | |
| int | m_npoints |
| Array< OneD, NekDouble > | m_coeffs |
| Concatenation of all local expansion coefficients. | |
| Array< OneD, NekDouble > | m_phys |
| The global expansion evaluated at the quadrature points. | |
| bool | m_physState |
| The state of the array m_phys. | |
| std::shared_ptr< LocalRegions::ExpansionVector > | m_exp |
| The list of local expansions. | |
| Collections::CollectionVector | m_collections |
| std::vector< bool > | m_collectionsDoInit |
| Vector of bools to act as an initialise on first call flag. | |
| std::vector< int > | m_coll_coeff_offset |
| Offset of elemental data into the array m_coeffs. | |
| std::vector< int > | m_coll_phys_offset |
| Offset of elemental data into the array m_phys. | |
| Array< OneD, int > | m_coeff_offset |
| Offset of elemental data into the array m_coeffs. | |
| Array< OneD, int > | m_phys_offset |
| Offset of elemental data into the array m_phys. | |
| Array< OneD, std::pair< int, int > > | m_coeffsToElmt |
| m_coeffs to elemental value map | |
| BlockMatrixMapShPtr | m_blockMat |
| bool | m_WaveSpace |
| std::unordered_map< int, int > | m_elmtToExpId |
| Mapping from geometry ID of element to index inside m_exp. | |
| Array< OneD, Array< OneD, NekDouble > > | m_gridVelocity |
| Grid velocity at quadrature points. | |
Private Member Functions | |
| void | SetupCoeffPhys (bool DeclareCoeffPhysArrays=true, bool SetupOffsets=true) |
| Definition of the total number of degrees of freedom and quadrature points and offsets to access data. | |
| void | InitialiseExpVector (const SpatialDomains::ExpansionInfoMap &expmap) |
| Define a list of elements using the geometry and basis key information in expmap;. | |
| Nektar::MultiRegions::ExpList::ExpList | ( | const ExpansionType | Type = eNoType | ) |
The default constructor using a type.
| Nektar::MultiRegions::ExpList::ExpList | ( | const ExpList & | in, |
| const bool | DeclareCoeffPhysArrays = true |
||
| ) |
The copy constructor.
| Nektar::MultiRegions::ExpList::ExpList | ( | const ExpList & | in, |
| const std::vector< unsigned int > & | eIDs, | ||
| const bool | DeclareCoeffPhysArrays = true, |
||
| const Collections::ImplementationType | ImpType = Collections::eNoImpType |
||
| ) |
Constructor copying only elements defined in eIds.
| Nektar::MultiRegions::ExpList::ExpList | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
| const SpatialDomains::MeshGraphSharedPtr & | graph, | ||
| const bool | DeclareCoeffPhysArrays = true, |
||
| const std::string & | var = "DefaultVar", |
||
| const Collections::ImplementationType | ImpType = Collections::eNoImpType |
||
| ) |
Generate an ExpList from a meshgraph graph and session file.
| Nektar::MultiRegions::ExpList::ExpList | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
| const SpatialDomains::ExpansionInfoMap & | expansions, | ||
| const bool | DeclareCoeffPhysArrays = true, |
||
| const Collections::ImplementationType | ImpType = Collections::eNoImpType |
||
| ) |
Sets up a list of local expansions based on an expansion Map.
| Nektar::MultiRegions::ExpList::ExpList | ( | SpatialDomains::PointGeom * | geom | ) |
Specialised constructors for 0D Expansions Wrapper around LocalRegion::PointExp - used in PrePacing.cpp.
| Nektar::MultiRegions::ExpList::ExpList | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
| const Array< OneD, const ExpListSharedPtr > & | bndConstraint, | ||
| const Array< OneD, const SpatialDomains ::BoundaryConditionShPtr > & | bndCond, | ||
| const LocalRegions::ExpansionVector & | locexp, | ||
| const SpatialDomains::MeshGraphSharedPtr & | graph, | ||
| const LibUtilities::CommSharedPtr & | comm, | ||
| const bool | DeclareCoeffPhysArrays = true, |
||
| const std::string | variable = "DefaultVar", |
||
| const Collections::ImplementationType | ImpType = Collections::eNoImpType |
||
| ) |
Generate expansions for the trace space expansions used in DisContField.
| Nektar::MultiRegions::ExpList::ExpList | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
| const LocalRegions::ExpansionVector & | locexp, | ||
| const SpatialDomains::MeshGraphSharedPtr & | graph, | ||
| const bool | DeclareCoeffPhysArrays, | ||
| const std::string | variable, | ||
| const Collections::ImplementationType | ImpType = Collections::eNoImpType |
||
| ) |
Generate an trace ExpList from a meshgraph graph and session file.
| Nektar::MultiRegions::ExpList::ExpList | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
| const SpatialDomains::CompositeMap & | domain, | ||
| const SpatialDomains::MeshGraphSharedPtr & | graph, | ||
| const bool | DeclareCoeffPhysArrays = true, |
||
| const std::string | variable = "DefaultVar", |
||
| bool | SetToOneSpaceDimension = false, |
||
| const LibUtilities::CommSharedPtr | comm = LibUtilities::CommSharedPtr(), |
||
| const Collections::ImplementationType | ImpType = Collections::eNoImpType |
||
| ) |
Constructor based on domain information only for 1D & 2D boundary conditions.
|
virtual |
The default destructor.
|
inline |
Definition at line 2259 of file ExpList.h.
References v_AddFwdBwdTraceIntegral().
| void Nektar::MultiRegions::ExpList::AddRightIPTBaseMatrix | ( | const Array< OneD, const DNekMatSharedPtr > | ElmtJacQuad, |
| Array< OneD, DNekMatSharedPtr > | ElmtJacCoef | ||
| ) |
| void Nektar::MultiRegions::ExpList::AddRightIPTPhysDerivBase | ( | const int | dir, |
| const Array< OneD, const DNekMatSharedPtr > | ElmtJacQuad, | ||
| Array< OneD, DNekMatSharedPtr > | ElmtJacCoef | ||
| ) |
|
inline |
Definition at line 2254 of file ExpList.h.
References v_AddTraceIntegral().
|
inline |
Definition at line 1031 of file ExpList.h.
References v_AddTraceIntegralToOffDiag().
| void Nektar::MultiRegions::ExpList::AddTraceJacToElmtJac | ( | const Array< OneD, const DNekMatSharedPtr > & | FwdMat, |
| const Array< OneD, const DNekMatSharedPtr > & | BwdMat, | ||
| Array< OneD, DNekMatSharedPtr > & | fieldMat | ||
| ) |
|
inline |
Add Fwd and Bwd value to field, a reverse procedure of GetFwdBwdTracePhys.
Definition at line 2284 of file ExpList.h.
References v_AddTraceQuadPhysToField().
|
inline |
Definition at line 822 of file ExpList.h.
References v_AddTraceQuadPhysToOffDiag().
|
inline |
Append the element data listed in elements fielddef->m_ElementIDs onto fielddata.
Definition at line 930 of file ExpList.h.
References v_AppendFieldData().
|
inline |
Append the data in coeffs listed in elements fielddef->m_ElementIDs onto fielddata.
Definition at line 937 of file ExpList.h.
References v_AppendFieldData().
| void Nektar::MultiRegions::ExpList::ApplyGeomInfo | ( | ) |
Apply geometry information to each expansion.
Referenced by Nektar::MultiRegions::DisContField::DisContField(), and Nektar::MultiRegions::DisContField::DisContField().
|
inline |
This function elementally evaluates the backward transformation of the global spectral/hp element expansion.
Given the coefficients of an expansion, this function evaluates the spectral/hp expansion \(u^{\delta}(\boldsymbol{x})\) at the quadrature points \(\boldsymbol{x}_i\).
Definition at line 1787 of file ExpList.h.
References v_BwdTrans().
Referenced by Nektar::MultiRegions::DisContField::L2_DGDeriv(), MultiplyByMassMatrix(), Nektar::MultiRegions::ContField::v_HelmSolve(), Nektar::MultiRegions::ContField::v_LinearAdvectionDiffusionReactionSolve(), Nektar::MultiRegions::ContField::v_LinearAdvectionReactionSolve(), and Nektar::MultiRegions::ContField::v_SmoothField().
| void Nektar::MultiRegions::ExpList::CreateCollections | ( | Collections::ImplementationType | ImpType = Collections::eNoImpType | ) |
|
inline |
Definition at line 1905 of file ExpList.h.
References v_CurlCurl().
|
inline |
Definition at line 1941 of file ExpList.h.
References v_DealiasedDotProd().
|
inline |
Definition at line 1931 of file ExpList.h.
References v_DealiasedProd().
| void Nektar::MultiRegions::ExpList::DivideByQuadratureMetric | ( | const Array< OneD, const NekDouble > & | inarray, |
| Array< OneD, NekDouble > & | outarray | ||
| ) |
Divided by the metric jacobi and quadrature weights.
Referenced by Nektar::SolverUtils::DiffusionIP::AddSymmFluxIntegralToCoeff().
|
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 1592 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 1607 of file ExpList.h.
References m_exp.
|
inline |
Definition at line 2351 of file ExpList.h.
References v_EvaluateBoundaryConditions().
Referenced by Nektar::MultiRegions::DisContField::DisContField(), Nektar::MultiRegions::DisContField::DisContField(), Nektar::MultiRegions::DisContField::DisContField(), and Nektar::MultiRegions::DisContField3DHomogeneous2D::v_EvaluateBoundaryConditions().
| void Nektar::MultiRegions::ExpList::ExponentialFilter | ( | Array< OneD, NekDouble > & | array, |
| const NekDouble | alpha, | ||
| const NekDouble | exponent, | ||
| const NekDouble | cutoff | ||
| ) |
| void Nektar::MultiRegions::ExpList::ExtractCoeffsFromFile | ( | const std::string & | fileName, |
| LibUtilities::CommSharedPtr | comm, | ||
| const std::string & | varName, | ||
| Array< OneD, NekDouble > & | coeffs | ||
| ) |
| 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.
| void Nektar::MultiRegions::ExpList::ExtractDataToCoeffs | ( | LibUtilities::FieldDefinitionsSharedPtr & | fielddef, |
| std::vector< NekDouble > & | fielddata, | ||
| std::string & | field, | ||
| Array< OneD, NekDouble > & | coeffs, | ||
| std::unordered_map< int, int > | zIdToPlane = std::unordered_map< int, int >() |
||
| ) |
| 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.
|
inline |
Definition at line 2374 of file ExpList.h.
References v_ExtractElmtToBndPhys().
|
protected |
|
inline |
Definition at line 2388 of file ExpList.h.
References v_ExtractPhysToBnd().
|
inline |
Definition at line 2381 of file ExpList.h.
References v_ExtractPhysToBndElmt().
Definition at line 2331 of file ExpList.h.
References v_ExtractTracePhys().
|
inline |
Definition at line 2335 of file ExpList.h.
References v_ExtractTracePhys().
|
inline |
Fill Bnd Condition expansion from the values stored in expansion.
Definition at line 2033 of file ExpList.h.
References v_FillBndCondFromField().
|
inline |
Fill Bnd Condition expansion in nreg from the values stored in expansion.
Definition at line 2037 of file ExpList.h.
References v_FillBndCondFromField().
|
inline |
Definition at line 2278 of file ExpList.h.
References v_FillBwdWithBoundCond().
|
inline |
Fill Bwd with boundary conditions.
Definition at line 2297 of file ExpList.h.
References v_FillBwdWithBwdWeight().
|
inline |
Definition at line 1749 of file ExpList.h.
References v_FwdTrans().
|
inline |
Definition at line 1766 of file ExpList.h.
References v_FwdTransBndConstrained().
|
inline |
This function elementally evaluates the forward transformation of a function \(u(\boldsymbol{x})\) onto the global spectral/hp expansion.
Definition at line 1757 of file ExpList.h.
References v_FwdTransLocalElmt().
|
protected |
This function assembles the block diagonal matrix of local matrices of the type mtype.
| 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 |
||
| ) |
| void Nektar::MultiRegions::ExpList::GeneralMatrixOp | ( | const GlobalMatrixKey & | gkey, |
| const Array< OneD, const NekDouble > & | inarray, | ||
| Array< OneD, NekDouble > & | outarray | ||
| ) |
This function calculates the result of the multiplication of a matrix of type specified by mkey with a vector given by inarray.
| void Nektar::MultiRegions::ExpList::GenerateElementVector | ( | const int | ElementID, |
| const NekDouble | scalar1, | ||
| const NekDouble | scalar2, | ||
| Array< OneD, NekDouble > & | outarray | ||
| ) |
|
protected |
Generate a GlobalLinSys from information provided by the key "mkey" and the mapping provided in LocToGloBaseMap.
Referenced by Nektar::MultiRegions::DisContField::GetGlobalBndLinSys().
|
protected |
This operation constructs the global linear system of type mkey.
Referenced by Nektar::MultiRegions::ContField::GenGlobalLinSys().
|
protected |
Generates a global matrix from the given key and map.
Referenced by Nektar::MultiRegions::ContField::GetGlobalMatrix().
|
protected |
Referenced by Nektar::MultiRegions::ContField::LinearAdvectionEigs().
|
inline |
Returns the total number of qudature points scaled by the factor scale on each 1D direction.
Definition at line 1633 of file ExpList.h.
|
inline |
Definition at line 1076 of file ExpList.h.
References m_coll_coeff_offset.
|
inline |
Definition at line 1081 of file ExpList.h.
References m_coll_phys_offset.
|
inline |
Definition at line 1951 of file ExpList.h.
References v_GetBCValues().
|
protected |
Referenced by Nektar::MultiRegions::DisContField::v_HelmSolve().
|
inline |
Get the weight value for boundary conditions.
Definition at line 2208 of file ExpList.h.
References v_GetBndCondBwdWeight().
|
inline |
Definition at line 2192 of file ExpList.h.
References v_GetBndCondExpansions().
Referenced by Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBoundaryNormals().
|
inline |
Definition at line 2341 of file ExpList.h.
References v_GetBndConditions().
|
inlinevirtual |
Definition at line 2367 of file ExpList.h.
References v_GetBndElmtExpansion().
|
staticprotected |
Referenced by Nektar::MultiRegions::DisContField::FindPeriodicTraces(), Nektar::MultiRegions::DisContField::GenerateBoundaryConditionExpansion(), Nektar::MultiRegions::DisContField::GenerateBoundaryConditionExpansion(), and Nektar::MultiRegions::DisContField3DHomogeneous1D::SetupBoundaryConditions().
|
inline |
Definition at line 2395 of file ExpList.h.
References v_GetBoundaryNormals().
|
inline |
Definition at line 2362 of file ExpList.h.
References v_GetBoundaryToElmtMap().
Referenced by Nektar::MultiRegions::DisContField::DisContField(), Nektar::MultiRegions::DisContField::DisContField(), Nektar::MultiRegions::DisContField::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBoundaryNormals(), and Nektar::MultiRegions::DisContField::v_GetRobinBCInfo().
| void Nektar::MultiRegions::ExpList::GetBwdWeight | ( | Array< OneD, NekDouble > & | weightAver, |
| Array< OneD, NekDouble > & | weightJump | ||
| ) |
Get the weight value for boundary conditions for boundary average and jump calculations.
|
inline |
Get the i th value (coefficient) of m_coeffs.
| i | The index of m_coeffs to be returned |
Definition at line 2091 of file ExpList.h.
References m_coeffs.
Referenced by Nektar::MultiRegions::DisContField::v_EvaluateBoundaryConditions().
|
inline |
Get the start offset position for a local contiguous list of coeffs correspoinding to element n.
Definition at line 2159 of file ExpList.h.
References m_coeff_offset.
Referenced by Nektar::MultiRegions::AssemblyMapCG::AssemblyMapCG(), export_ExpList(), Nektar::MultiRegions::LocTraceToTraceMap::LocTraceToTraceMap(), Nektar::MultiRegions::AssemblyMapCG::SetUpUniversalC0ContMap(), Nektar::MultiRegions::DisContField::v_AddTraceIntegral(), Nektar::MultiRegions::DisContField::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion(), and Nektar::MultiRegions::ExpList3DHomogeneous1D::v_HomogeneousEnergy().
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 2017 of file ExpList.h.
References m_coeffs.
Referenced by Nektar::MultiRegions::ContField::LaplaceSolve(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_EvaluateBoundaryConditions(), Nektar::MultiRegions::DisContField::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::ContField::v_HelmSolve(), Nektar::MultiRegions::ExpList3DHomogeneous1D::v_HomogeneousEnergy(), Nektar::MultiRegions::ContField::v_ImposeDirichletConditions(), Nektar::MultiRegions::ContField::v_ImposeNeumannConditions(), Nektar::MultiRegions::ContField::v_ImposeRobinConditions(), Nektar::MultiRegions::ContField::v_LinearAdvectionDiffusionReactionSolve(), and Nektar::MultiRegions::ContField::v_LinearAdvectionReactionSolve().
|
inline |
|
inline |
Get m_coeffs to elemental value map.
Definition at line 2198 of file ExpList.h.
References m_coeffsToElmt.
Referenced by Nektar::MultiRegions::LocTraceToTraceMap::TraceLocToElmtLocCoeffMap().
|
inline |
This function returns collections.
Definition at line 1071 of file ExpList.h.
References m_collections.
Referenced by Nektar::MultiRegions::LocTraceToTraceMap::LocTraceToTraceMap().
|
inline |
Returns the comm object.
Definition at line 986 of file ExpList.h.
References m_comm.
Referenced by Nektar::MultiRegions::AssemblyCommDG::AssemblyCommDG(), and Nektar::MultiRegions::AssemblyMapCG::v_LinearSpaceMap().
|
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 1976 of file ExpList.h.
References ASSERTL2, and m_exp.
Referenced by Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBoundaryNormals(), Nektar::MultiRegions::ExpList2DHomogeneous1D::v_GetCoords(), Nektar::MultiRegions::ExpList2DHomogeneous1D::v_GetCoords(), Nektar::MultiRegions::ExpList2DHomogeneous1D::v_GetNormals(), Nektar::MultiRegions::DisContField::v_RotLocalBwdDeriveTrace(), Nektar::MultiRegions::DisContField::v_RotLocalBwdTrace(), Nektar::MultiRegions::ExpList2DHomogeneous1D::v_WriteTecplotZone(), and Nektar::MultiRegions::ExpList2DHomogeneous2D::v_WriteTecplotZone().
|
inline |
This function calculates the coordinates of all the elemental quadrature points \(\boldsymbol{x}_i\).
Definition at line 1843 of file ExpList.h.
References v_GetCoords().
Referenced by Nektar::MultiRegions::ExpList2DHomogeneous1D::v_WriteTecplotZone(), Nektar::MultiRegions::ExpList2DHomogeneous2D::v_WriteTecplotZone(), Nektar::MultiRegions::ExpList3DHomogeneous2D::v_WriteTecplotZone(), Nektar::MultiRegions::ExpList2DHomogeneous1D::v_WriteVtkPieceHeader(), Nektar::MultiRegions::ExpList2DHomogeneous2D::v_WriteVtkPieceHeader(), and Nektar::MultiRegions::ExpList3DHomogeneous2D::v_WriteVtkPieceHeader().
|
inline |
Definition at line 1850 of file ExpList.h.
References v_GetCoords().
| void Nektar::MultiRegions::ExpList::GetDiagMatIpwrtBase | ( | const Array< OneD, const Array< OneD, NekDouble > > & | inarray, |
| Array< OneD, DNekMatSharedPtr > & | mtxPerVar | ||
| ) |
| void Nektar::MultiRegions::ExpList::GetElmtNormalLength | ( | Array< OneD, NekDouble > & | lengthsFwd, |
| Array< OneD, NekDouble > & | lengthsBwd | ||
| ) |
Get the length of elements in boundary normal direction.
|
inline |
This function returns the index inside m_exp for a given geom id.
Definition at line 1059 of file ExpList.h.
References ASSERTL0, and m_elmtToExpId.
|
inline |
This function returns the map of index inside m_exp to geom id.
Definition at line 1052 of file ExpList.h.
References m_elmtToExpId.
|
inline |
This function returns the vector of elements in the expansion.
Definition at line 2151 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::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::ExpList2DHomogeneous2D::ExpList2DHomogeneous2D(), Nektar::MultiRegions::ExpList3DHomogeneous2D::ExpList3DHomogeneous2D(), Nektar::MultiRegions::LocTraceToTraceMap::FindElmtNeighbors(), Nektar::MultiRegions::ExpList3DHomogeneous1D::GenExpList3DHomogeneous1D(), Nektar::MultiRegions::AssemblyCommDG::InitialiseStructure(), Nektar::MultiRegions::LocTraceToTraceMap::LocTraceToTraceMap(), Nektar::MultiRegions::AssemblyMapCG::SetUpUniversalC0ContMap(), Nektar::MultiRegions::AssemblyMapDG::SetUpUniversalDGMap(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBCValues(), Nektar::MultiRegions::DisContField::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBoundaryNormals(), Nektar::MultiRegions::ExpList3DHomogeneous1D::v_HomogeneousEnergy(), Nektar::MultiRegions::AssemblyMapCG::v_LinearSpaceMap(), and Nektar::MultiRegions::DisContField3DHomogeneous1D::v_NormVectorIProductWRTBase().
| 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.
|
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 2129 of file ExpList.h.
References m_exp.
|
inline |
This function returns (a shared pointer to) the local elemental expansion of the \(n^{\mathrm{th}}\) element given a global geometry ID.
| n | The global id of the element concerned. |
Definition at line 2139 of file ExpList.h.
References ASSERTL0, m_elmtToExpId, and m_exp.
| int Nektar::MultiRegions::ExpList::GetExpIndex | ( | const Array< OneD, const NekDouble > & | gloCoord, |
| NekDouble | tol = 0.0, |
||
| bool | returnNearestElmt = false, |
||
| int | cachedId = -1, |
||
| NekDouble | maxDistance = 1e6 |
||
| ) |
This function returns the index of the local elemental expansion containing the arbitrary point given by gloCoord, within a distance tolerance of tol.
If returnNearestElmt is true and no element contains the point, this function returns the nearest element whose bounding box contains the point. The bounding box has a 10% margin in each direction.
| gloCoord | (input) coordinate in physics space |
| locCoords | (output) local coordinate xi in the returned element |
| tol | distance tolerance to judge if a point lies in an element |
| returnNearestElmt | if true and no element contains this point, the nearest element whose bounding box contains this point is returned |
| cachedId | an initial guess of the most possible element index |
| maxDistance | if returnNearestElmt is set as true, the nearest element will be returned. But the distance of the nearest element and this point should be <= maxDistance. |
| int Nektar::MultiRegions::ExpList::GetExpIndex | ( | const Array< OneD, const NekDouble > & | gloCoords, |
| Array< OneD, NekDouble > & | locCoords, | ||
| NekDouble | tol = 0.0, |
||
| bool | returnNearestElmt = false, |
||
| int | cachedId = -1, |
||
| NekDouble | maxDistance = 1e6 |
||
| ) |
This function returns the index and the Local Cartesian Coordinates locCoords of the local elemental expansion containing the arbitrary point given by gloCoords.
|
inline |
This function returns the number of elements in the expansion.
Definition at line 2119 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField3DHomogeneous1D::ContField3DHomogeneous1D(), Nektar::MultiRegions::ContField3DHomogeneous2D::ContField3DHomogeneous2D(), Nektar::MultiRegions::DisContField3DHomogeneous1D::DisContField3DHomogeneous1D(), Nektar::MultiRegions::DisContField3DHomogeneous2D::DisContField3DHomogeneous2D(), Nektar::MultiRegions::DisContField::EvaluateHDGPostProcessing(), export_ExpList(), Nektar::MultiRegions::DisContField::GetNegatedFluxNormal(), Nektar::MultiRegions::DisContField::L2_DGDeriv(), Nektar::MultiRegions::DisContField::v_AddTraceIntegral(), Nektar::MultiRegions::DisContField::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField::v_GetBoundaryToElmtMap(), Nektar::MultiRegions::DisContField::v_GetFwdBwdTracePhys(), and Nektar::MultiRegions::DisContField::v_HelmSolve().
| ExpansionType Nektar::MultiRegions::ExpList::GetExpType | ( | void | ) |
Returns the type of the expansion.
|
inline |
Definition at line 917 of file ExpList.h.
References v_GetFieldDefinitions().
|
inline |
Definition at line 922 of file ExpList.h.
References v_GetFieldDefinitions().
|
inline |
Definition at line 2265 of file ExpList.h.
References v_GetFwdBwdTracePhys().
|
inline |
Definition at line 2270 of file ExpList.h.
References v_GetFwdBwdTracePhys().
| LibUtilities::NekManager< GlobalLinSysKey, GlobalLinSys > & Nektar::MultiRegions::ExpList::GetGlobalLinSysManager | ( | void | ) |
|
inline |
Definition at line 990 of file ExpList.h.
References m_graph.
Referenced by Nektar::MultiRegions::DisContField::SetUpDG().
|
inline |
Definition at line 1088 of file ExpList.h.
References m_gridVelocity.
|
inline |
Definition at line 995 of file ExpList.h.
References v_GetHomogeneousBasis().
This function returns the Width of homogeneous direction associated with the homogeneous expansion.
Definition at line 611 of file ExpList.h.
References v_GetHomoLen().
|
inline |
Definition at line 2242 of file ExpList.h.
References v_GetInterfaceMap().
|
inline |
Definition at line 2327 of file ExpList.h.
References v_GetLeftAdjacentFaces().
|
inline |
Definition at line 2401 of file ExpList.h.
References v_GetLeftAdjacentTraces().
|
inline |
Definition at line 2290 of file ExpList.h.
References v_GetLocTraceFromTracePts().
|
inline |
Definition at line 2203 of file ExpList.h.
References v_GetLocTraceToTraceMap().
| void Nektar::MultiRegions::ExpList::GetMatIpwrtDeriveBase | ( | const Array< OneD, const Array< OneD, NekDouble > > & | inarray, |
| const int | nDirctn, | ||
| Array< OneD, DNekMatSharedPtr > & | mtxPerVar | ||
| ) |
| void Nektar::MultiRegions::ExpList::GetMatIpwrtDeriveBase | ( | const TensorOfArray3D< NekDouble > & | inarray, |
| Array< OneD, DNekMatSharedPtr > & | mtxPerVar | ||
| ) |
|
inline |
Definition at line 1860 of file ExpList.h.
References v_GetMovingFrames().
|
inline |
|
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 1578 of file ExpList.h.
References m_ncoeffs.
Referenced by export_ExpList(), Nektar::MultiRegions::ContField::LaplaceSolve(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_EvaluateBoundaryConditions(), Nektar::MultiRegions::ContField::v_FillBndCondFromField(), Nektar::MultiRegions::ContField::v_FillBndCondFromField(), Nektar::MultiRegions::ContField::v_HelmSolve(), Nektar::MultiRegions::DisContField::v_HelmSolve(), Nektar::MultiRegions::ContField::v_ImposeDirichletConditions(), Nektar::MultiRegions::ContField::v_ImposeNeumannConditions(), Nektar::MultiRegions::ContField::v_ImposeRobinConditions(), Nektar::MultiRegions::ContField::v_LinearAdvectionDiffusionReactionSolve(), and Nektar::MultiRegions::ContField::v_LinearAdvectionReactionSolve().
|
inline |
Definition at line 2250 of file ExpList.h.
References v_GetNormals().
|
inline |
Returns the total number of quadrature points m_npoints \(=Q_{\mathrm{tot}}\).
Definition at line 1658 of file ExpList.h.
References m_npoints.
Referenced by export_ExpList(), and MultiplyByMassMatrix().
|
inline |
This function returns the number of elements in the expansion which may be different for a homogeoenous extended expansionp.
Definition at line 660 of file ExpList.h.
References v_GetNumElmts().
|
inline |
Definition at line 910 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 2111 of file ExpList.h.
References m_phys.
Referenced by Nektar::MultiRegions::DisContField::FillBwdWithBoundCond(), Nektar::MultiRegions::DisContField::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), and Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion().
|
inline |
Get the start offset position for a local contiguous list of quadrature points in a full array correspoinding to element n.
Definition at line 2166 of file ExpList.h.
References m_phys_offset.
Referenced by export_ExpList(), Nektar::MultiRegions::LocTraceToTraceMap::LocTraceToTraceMap(), Nektar::MultiRegions::DisContField::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBCValues(), Nektar::MultiRegions::DisContField::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_GetBndElmtExpansion(), and Nektar::MultiRegions::DisContField::v_GetFwdBwdTracePhys().
|
inline |
This function indicates whether the array of physical values \(\boldsymbol{u}_l\) (implemented as m_phys) is filled or not.
Definition at line 1713 of file ExpList.h.
References m_physState.
Referenced by export_ExpList().
|
inline |
Definition at line 999 of file ExpList.h.
References v_GetPlane().
| int Nektar::MultiRegions::ExpList::GetPoolCount | ( | std::string | ) |
|
inline |
Definition at line 905 of file ExpList.h.
References v_GetRobinBCInfo().
|
inline |
Returns the session object.
Definition at line 981 of file ExpList.h.
References m_session.
Referenced by Nektar::MultiRegions::AssemblyCommDG::AssemblyCommDG(), 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 1985 of file ExpList.h.
References m_exp.
Referenced by Nektar::MultiRegions::LocTraceToTraceMap::LocTraceToTraceMap().
|
inline |
Returns a shared pointer to the current object.
Definition at line 976 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField::GetGJPForcing(), Nektar::MultiRegions::ContField::v_HelmSolve(), Nektar::MultiRegions::ContField::v_LinearAdvectionDiffusionReactionSolve(), and Nektar::MultiRegions::ContField::v_LinearAdvectionReactionSolve().
|
inline |
|
inline |
Returns the total number of quadrature points m_npoints \(=Q_{\mathrm{tot}}\).
Definition at line 1623 of file ExpList.h.
References m_npoints.
Referenced by Nektar::SolverUtils::DiffusionIP::AddSymmFluxIntegralToCoeff(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBoundaryNormals(), Nektar::MultiRegions::ExpList3DHomogeneous1D::v_GetCoords(), Nektar::MultiRegions::ExpList3DHomogeneous2D::v_GetCoords(), Nektar::MultiRegions::ExpList2DHomogeneous1D::v_GetCoords(), Nektar::MultiRegions::ExpList3DHomogeneous1D::v_HomogeneousEnergy(), and Nektar::MultiRegions::ExpList3DHomogeneous2D::v_L2().
|
inline |
Return a reference to the trace space associated with this expansion list.
Definition at line 2234 of file ExpList.h.
References v_GetTrace().
Referenced by Nektar::MultiRegions::DisContField::v_AddTraceIntegral().
Definition at line 2246 of file ExpList.h.
References v_GetTraceBndMap().
|
inline |
Definition at line 2238 of file ExpList.h.
References v_GetTraceMap().
|
inline |
This function returns the transposition class associated with the homogeneous expansion.
Definition at line 604 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 1674 of file ExpList.h.
References m_WaveSpace.
Referenced by Nektar::MultiRegions::DisContField3DHomogeneous1D::v_GetBndElmtExpansion(), and Nektar::MultiRegions::DisContField3DHomogeneous2D::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 627 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 597 of file ExpList.h.
References v_GetZIDs().
|
protected |
|
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}\). |
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 2082 of file ExpList.h.
References v_GlobalToLocal().
Scatters from the global coefficients \(\boldsymbol{\hat{u}}_g\) to the local coefficients \(\boldsymbol{\hat{u}}_l\).
Definition at line 2052 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.
|
inline |
Solve helmholtz problem.
Definition at line 1804 of file ExpList.h.
References v_HelmSolve().
|
inline |
Definition at line 1922 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 581 of file ExpList.h.
References v_HomogeneousEnergy().
|
inline |
Definition at line 1913 of file ExpList.h.
References v_HomogeneousFwdTrans().
Referenced by Nektar::MultiRegions::ExpList2DHomogeneous2D::v_FwdTrans(), Nektar::MultiRegions::ContField3DHomogeneous1D::v_HelmSolve(), Nektar::MultiRegions::ContField3DHomogeneous2D::v_HelmSolve(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_HelmSolve(), and Nektar::MultiRegions::DisContField3DHomogeneous2D::v_HelmSolve().
|
inline |
Impose Dirichlet Boundary Conditions onto Array.
Definition at line 2021 of file ExpList.h.
References v_ImposeDirichletConditions().
|
inline |
Add Neumann Boundary Condition forcing to Array.
Definition at line 2025 of file ExpList.h.
References v_ImposeNeumannConditions().
|
inline |
Add Robin Boundary Condition forcing to Array.
Definition at line 2029 of file ExpList.h.
References v_ImposeRobinConditions().
|
private |
Define a list of elements using the geometry and basis key information in expmap;.
|
inline |
Calculates the \(H^1\) error of the global spectral/hp element approximation.
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 550 of file ExpList.h.
References ASSERTL1, Integral(), m_phys, and m_physState.
Referenced by Integral().
|
inline |
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 571 of file ExpList.h.
References v_Integral().
|
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 1720 of file ExpList.h.
References v_IProductWRTBase().
Referenced by Nektar::MultiRegions::ContField::LaplaceSolve(), MultiplyByMassMatrix(), Nektar::MultiRegions::ContField::v_FwdTrans(), Nektar::MultiRegions::ContField::v_HelmSolve(), Nektar::MultiRegions::DisContField::v_HelmSolve(), Nektar::MultiRegions::ContField::v_LinearAdvectionDiffusionReactionSolve(), Nektar::MultiRegions::ContField::v_LinearAdvectionReactionSolve(), and Nektar::MultiRegions::ContField::v_SmoothField().
|
inline |
This function calculates the inner product of a function \(f(\boldsymbol{x})\) with respect to the derivative of all local expansion modes \(\phi_n^e(\boldsymbol{x})\).
Definition at line 1739 of file ExpList.h.
References v_IProductWRTDerivBase().
|
inline |
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})\). |
Definition at line 1729 of file ExpList.h.
References v_IProductWRTDerivBase().
Referenced by Nektar::SolverUtils::DiffusionIP::AddSymmFluxIntegralToCoeff().
| void Nektar::MultiRegions::ExpList::IProductWRTDirectionalDerivBase | ( | const Array< OneD, const NekDouble > & | direction, |
| const Array< OneD, const NekDouble > & | inarray, | ||
| Array< OneD, NekDouble > & | outarray | ||
| ) |
|
inline |
This function calculates the \(L_\infty\) error of the global This function calculates the \(L_2\) error with respect to soln of the global spectral/hp element approximation.
Definition at line 521 of file ExpList.h.
References v_L2().
Referenced by Nektar::MultiRegions::DisContField::L2_DGDeriv(), and Nektar::MultiRegions::ExpList3DHomogeneous2D::v_L2().
|
inline |
Solve Advection Diffusion Reaction.
Definition at line 1817 of file ExpList.h.
References v_LinearAdvectionDiffusionReactionSolve().
|
inline |
Solve Advection Diffusion Reaction.
Definition at line 1829 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.
|
inline |
Gathers the global coefficients \(\boldsymbol{\hat{u}}_g\) from the local coefficients \(\boldsymbol{\hat{u}}_l\).
Definition at line 2042 of file ExpList.h.
References v_LocalToGlobal().
|
inline |
Definition at line 2046 of file ExpList.h.
References v_LocalToGlobal().
|
protected |
| 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.
|
inline |
Definition at line 1795 of file ExpList.h.
References v_MultiplyByInvMassMatrix().
Referenced by Nektar::MultiRegions::ContField::v_SmoothField().
|
inline |
Definition at line 298 of file ExpList.h.
References BwdTrans(), GetNpoints(), and IProductWRTBase().
| void Nektar::MultiRegions::ExpList::MultiplyByQuadratureMetric | ( | const Array< OneD, const NekDouble > & | inarray, |
| Array< OneD, NekDouble > & | outarray | ||
| ) |
multiply the metric jacobi and quadrature weights
|
inline |
Definition at line 1967 of file ExpList.h.
References v_NormVectorIProductWRTBase().
|
inline |
Definition at line 1960 of file ExpList.h.
References v_NormVectorIProductWRTBase().
|
inline |
Copy and fill the Periodic boundaries.
Definition at line 2302 of file ExpList.h.
References v_PeriodicBwdCopy().
|
inline |
Rotate Bwd trace for rotational periodicity boundaries when the flow is perpendicular to the rotation axis.
Definition at line 2307 of file ExpList.h.
References v_PeriodicBwdRot().
|
inline |
Rotate Bwd trace derivative for rotational periodicity boundaries when the flow is perpendicular to the rotation axis.
Definition at line 2312 of file ExpList.h.
References v_PeriodicDeriveBwdRot().
|
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 1870 of file ExpList.h.
References v_PhysDeriv().
|
inline |
Definition at line 1880 of file ExpList.h.
References v_PhysDeriv().
|
inline |
Definition at line 1886 of file ExpList.h.
References v_PhysDeriv().
|
inline |
Definition at line 1895 of file ExpList.h.
References v_PhysDirectionalDeriv().
| 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.
Referenced by export_ExpList().
|
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 647 of file ExpList.h.
References v_PhysGalerkinProjection1DScaled().
|
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 636 of file ExpList.h.
References v_PhysInterp1DScaled().
|
inline |
| void Nektar::MultiRegions::ExpList::ResetMatrices | ( | ) |
Reset matrices.
|
inline |
Rotate local Bwd trace derivatives across a rotational interface when the flow is perpendicular to the rotation axis.
Definition at line 2322 of file ExpList.h.
References v_RotLocalBwdDeriveTrace().
|
inline |
Rotate local Bwd trace across a rotational interface when the flow is perpendicular to the rotation axis.
Definition at line 2317 of file ExpList.h.
References v_RotLocalBwdTrace().
|
inline |
Set the weight value for boundary conditions.
Definition at line 2212 of file ExpList.h.
References v_SetBndCondBwdWeight().
| void Nektar::MultiRegions::ExpList::SetExpType | ( | ExpansionType | Type | ) |
Returns the type of the expansion.
This function sets the Spectral Vanishing Viscosity in homogeneous1D expansion.
Definition at line 588 of file ExpList.h.
References v_SetHomo1DSpecVanVisc().
This function sets the Width of homogeneous direction associated with the homogeneous expansion.
Definition at line 618 of file ExpList.h.
References v_SetHomoLen().
|
inline |
Set Modified Basis for the stability analysis.
|
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 1692 of file ExpList.h.
References ASSERTL0, m_npoints, m_phys, m_physState, and Vmath::Vcopy().
|
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 1706 of file ExpList.h.
References m_physState.
Referenced by export_ExpList().
|
private |
Definition of the total number of degrees of freedom and quadrature points and offsets to access data.
|
inline |
Definition at line 2358 of file ExpList.h.
References v_SetUpPhysNormals().
Referenced by Nektar::MultiRegions::DisContField::DisContField(), Nektar::MultiRegions::DisContField::DisContField(), Nektar::MultiRegions::DisContField::GenerateBoundaryConditionExpansion(), Nektar::MultiRegions::DisContField::GenerateBoundaryConditionExpansion(), and Nektar::MultiRegions::DisContField::SetUpDG().
|
inline |
Sets the wave space to the one of the possible configuration true or false.
Definition at line 1666 of file ExpList.h.
References m_WaveSpace.
Smooth a field across elements.
Definition at line 1775 of file ExpList.h.
References v_SmoothField().
| void Nektar::MultiRegions::ExpList::UnsetGlobalLinSys | ( | GlobalLinSysKey | , |
| bool | |||
| ) |
|
inline |
Definition at line 2216 of file ExpList.h.
References v_UpdateBndCondExpansion().
|
inline |
Definition at line 2346 of file ExpList.h.
References v_UpdateBndConditions().
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 2176 of file ExpList.h.
References m_coeffs.
Referenced by Nektar::MultiRegions::DisContField3DHomogeneous2D::v_EvaluateBoundaryConditions().
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 2186 of file ExpList.h.
References m_phys, and m_physState.
|
inline |
Definition at line 2220 of file ExpList.h.
References Upwind(), and v_Upwind().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by AddFwdBwdTraceIntegral().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by AddTraceIntegral().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by AddTraceIntegralToOffDiag().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by AddTraceQuadPhysToField().
|
protectedvirtual |
Referenced by AddTraceQuadPhysToOffDiag().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by AppendFieldData(), and AppendFieldData().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by BwdTrans().
|
protectedvirtual |
|
protectedvirtual |
Referenced by CurlCurl().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by DealiasedDotProd().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by DealiasedProd().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField, Nektar::MultiRegions::DisContField3DHomogeneous1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Referenced by EvaluateBoundaryConditions().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
|
protectedvirtual |
Referenced by ExtractElmtToBndPhys().
|
protectedvirtual |
Referenced by ExtractPhysToBnd().
|
protectedvirtual |
Referenced by ExtractPhysToBndElmt().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField, and Nektar::MultiRegions::DisContField3DHomogeneous1D.
Referenced by ExtractTracePhys(), and ExtractTracePhys().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField, and Nektar::MultiRegions::DisContField3DHomogeneous1D.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField, and Nektar::MultiRegions::ContField3DHomogeneous1D.
Referenced by FillBndCondFromField(), and FillBndCondFromField().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField, and Nektar::MultiRegions::ContField3DHomogeneous1D.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by FillBwdWithBoundCond().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by FillBwdWithBwdWeight().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField, Nektar::MultiRegions::ExpList2DHomogeneous2D, Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by FwdTrans().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList2DHomogeneous2D, Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by FwdTransBndConstrained().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList2DHomogeneous2D, Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by FwdTransLocalElmt().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D.
Referenced by GetBCValues().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by GetBndCondBwdWeight().
|
protectedvirtual |
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField, Nektar::MultiRegions::DisContField3DHomogeneous1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Referenced by GetBndElmtExpansion().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D.
Referenced by GetBoundaryNormals().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D, Nektar::MultiRegions::DisContField3DHomogeneous2D, and Nektar::MultiRegions::DisContField.
Referenced by GetBoundaryToElmtMap().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList2DHomogeneous1D, Nektar::MultiRegions::ExpList2DHomogeneous2D, Nektar::MultiRegions::ExpList3DHomogeneous1D, and Nektar::MultiRegions::ExpList3DHomogeneous2D.
Referenced by GetCoords(), and GetCoords().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by GetFieldDefinitions(), and GetFieldDefinitions().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by GetFwdBwdTracePhys(), and GetFwdBwdTracePhys().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
|
protectedvirtual |
|
inlineprotectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Definition at line 1530 of file ExpList.h.
References Nektar::ErrorUtil::efatal, NEKERROR, and Nektar::LibUtilities::NullBasisSharedPtr.
Referenced by GetHomogeneousBasis().
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Referenced by GetHomoLen().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by GetInterfaceMap().
|
protectedvirtual |
Referenced by GetLeftAdjacentFaces().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by GetLeftAdjacentTraces().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by GetLocTraceFromTracePts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by GetLocTraceToTraceMap().
|
protectedvirtual |
Referenced by GetMovingFrames().
|
protectedvirtual |
Populate normals with the normals of all expansions.
Reimplemented in Nektar::MultiRegions::ExpList2DHomogeneous1D.
Referenced by GetNormals().
|
inlineprotectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Definition at line 1214 of file ExpList.h.
Referenced by GetNumElmts().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField, and Nektar::MultiRegions::ExpList3DHomogeneous1D.
Referenced by GetPeriodicEntities().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Referenced by GetPlane().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField, Nektar::MultiRegions::DisContField3DHomogeneous1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Referenced by GetRobinBCInfo().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField, and Nektar::MultiRegions::DisContField3DHomogeneous1D.
Referenced by GetTrace().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D.
Referenced by GetTraceBndMap().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D, and Nektar::MultiRegions::DisContField.
Referenced by GetTraceMap().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Referenced by GetTransposition().
|
protectedvirtual |
Referenced by GetYIDs().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Referenced by GetZIDs().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField.
Reimplemented in Nektar::MultiRegions::ContField, Nektar::MultiRegions::ContField3DHomogeneous1D, and Nektar::MultiRegions::ContField3DHomogeneous2D.
Referenced by GlobalToLocal(), and GlobalToLocal().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField, Nektar::MultiRegions::ContField3DHomogeneous1D, Nektar::MultiRegions::ContField3DHomogeneous2D, Nektar::MultiRegions::DisContField, Nektar::MultiRegions::DisContField3DHomogeneous1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Referenced by HelmSolve().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by HomogeneousBwdTrans().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList3DHomogeneous1D.
Referenced by HomogeneousEnergy().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by HomogeneousFwdTrans().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField, Nektar::MultiRegions::ContField3DHomogeneous1D, and Nektar::MultiRegions::ContField3DHomogeneous2D.
Referenced by ImposeDirichletConditions().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField.
Referenced by ImposeNeumannConditions().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField.
Referenced by ImposeRobinConditions().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Referenced by Integral().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by IProductWRTBase().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Referenced by IProductWRTDerivBase(), and IProductWRTDerivBase().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList3DHomogeneous1D, and Nektar::MultiRegions::ExpList3DHomogeneous2D.
Referenced by L2().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField.
Referenced by LinearAdvectionDiffusionReactionSolve().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField.
Referenced by LinearAdvectionReactionSolve().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField, Nektar::MultiRegions::ContField3DHomogeneous1D, and Nektar::MultiRegions::ContField3DHomogeneous2D.
Referenced by LocalToGlobal(), and LocalToGlobal().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField.
Referenced by MultiplyByInvMassMatrix().
|
protectedvirtual |
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField3DHomogeneous1D.
Referenced by NormVectorIProductWRTBase(), and NormVectorIProductWRTBase().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by PeriodicBwdCopy().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by PeriodicBwdRot().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by PeriodicDeriveBwdRot().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by PhysDeriv(), PhysDeriv(), and PhysDeriv().
|
protectedvirtual |
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
|
protectedvirtual |
Referenced by PhysDirectionalDeriv().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Referenced by PhysGalerkinProjection1DScaled().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Referenced by PhysInterp1DScaled().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by Reset(), and Nektar::MultiRegions::DisContField::v_Reset().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by RotLocalBwdDeriveTrace().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField.
Referenced by RotLocalBwdTrace().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField, Nektar::MultiRegions::DisContField3DHomogeneous1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Referenced by SetBndCondBwdWeight().
|
inlineprotectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Definition at line 1538 of file ExpList.h.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by SetHomo1DSpecVanVisc().
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D.
Referenced by SetHomoLen().
|
protectedvirtual |
Referenced by SetUpPhysNormals().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField, and Nektar::MultiRegions::ContField3DHomogeneous1D.
Referenced by SmoothField().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ContField.
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField, Nektar::MultiRegions::DisContField3DHomogeneous1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Referenced by UpdateBndCondExpansion().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::DisContField, Nektar::MultiRegions::DisContField3DHomogeneous1D, and Nektar::MultiRegions::DisContField3DHomogeneous2D.
Referenced by UpdateBndConditions().
|
protectedvirtual |
|
protectedvirtual |
Referenced by VectorFlux().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList3DHomogeneous1D.
Referenced by WriteTecplotConnectivity().
|
protectedvirtual |
Referenced by WriteTecplotField().
|
protectedvirtual |
Referenced by WriteTecplotHeader().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpList2DHomogeneous1D, Nektar::MultiRegions::ExpList2DHomogeneous2D, and Nektar::MultiRegions::ExpList3DHomogeneous2D.
Referenced by WriteTecplotZone().
|
protectedvirtual |
Reimplemented in Nektar::MultiRegions::ExpListHomogeneous1D, and Nektar::MultiRegions::ExpListHomogeneous2D.
Referenced by WriteVtkPieceData().
|
protectedvirtual |
|
inline |
Definition at line 575 of file ExpList.h.
References v_VectorFlux().
|
inline |
Definition at line 411 of file ExpList.h.
References v_WriteTecplotConnectivity().
|
inline |
Definition at line 407 of file ExpList.h.
References v_WriteTecplotField().
|
inline |
Definition at line 399 of file ExpList.h.
References v_WriteTecplotHeader().
|
inline |
Definition at line 403 of file ExpList.h.
References v_WriteTecplotZone().
| void Nektar::MultiRegions::ExpList::WriteVtkFooter | ( | std::ostream & | outfile | ) |
| void Nektar::MultiRegions::ExpList::WriteVtkHeader | ( | std::ostream & | outfile | ) |
|
inline |
Definition at line 424 of file ExpList.h.
References v_WriteVtkPieceData().
| void Nektar::MultiRegions::ExpList::WriteVtkPieceFooter | ( | std::ostream & | outfile, |
| int | expansion | ||
| ) |
|
inline |
Definition at line 417 of file ExpList.h.
References v_WriteVtkPieceHeader().
|
protected |
Offset of elemental data into the array m_coeffs.
Definition at line 1173 of file ExpList.h.
Referenced by Nektar::MultiRegions::DisContField::EvaluateHDGPostProcessing(), GetCoeff_Offset(), Nektar::MultiRegions::DisContField::L2_DGDeriv(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys(), and Nektar::MultiRegions::DisContField::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 1129 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField::Assemble(), GetCoeff(), GetCoeffs(), GetCoeffs(), SetCoeff(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys(), SetCoeffs(), SetCoeffsArray(), UpdateCoeffs(), Nektar::MultiRegions::ContField::v_GlobalToLocal(), and Nektar::MultiRegions::ContField::v_LocalToGlobal().
m_coeffs to elemental value map
Definition at line 1177 of file ExpList.h.
Referenced by GetCoeffsToElmt().
|
protected |
Offset of elemental data into the array m_coeffs.
Definition at line 1169 of file ExpList.h.
Referenced by Get_coll_coeff_offset().
|
protected |
Offset of elemental data into the array m_phys.
Definition at line 1171 of file ExpList.h.
Referenced by Get_coll_phys_offset().
|
protected |
Definition at line 1165 of file ExpList.h.
Referenced by GetCollections().
|
protected |
|
protected |
Communicator.
Definition at line 1102 of file ExpList.h.
Referenced by Nektar::MultiRegions::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::DisContField::FindPeriodicTraces(), GetComm(), Nektar::MultiRegions::DisContField::SameTypeOfBoundaryConditions(), Nektar::MultiRegions::DisContField::SetUpDG(), Nektar::MultiRegions::ExpList3DHomogeneous1D::v_HomogeneousEnergy(), and Nektar::MultiRegions::ExpList3DHomogeneous1D::v_L2().
|
protected |
Mapping from geometry ID of element to index inside m_exp.
Definition at line 1185 of file ExpList.h.
Referenced by GetElmtToExpId(), GetElmtToExpId(), and GetExpFromGeomId().
|
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 1164 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField3DHomogeneous1D::ContField3DHomogeneous1D(), Nektar::MultiRegions::ContField3DHomogeneous2D::ContField3DHomogeneous2D(), Nektar::MultiRegions::DisContField::DisContField(), Nektar::MultiRegions::DisContField::DisContField(), Nektar::MultiRegions::DisContField3DHomogeneous1D::DisContField3DHomogeneous1D(), Nektar::MultiRegions::DisContField3DHomogeneous2D::DisContField3DHomogeneous2D(), EvalBasisNumModesMax(), EvalBasisNumModesMaxPerExp(), Nektar::MultiRegions::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::ExpList3DHomogeneous2D::ExpList3DHomogeneous2D(), Nektar::MultiRegions::ExpList3DHomogeneous1D::GenExpList3DHomogeneous1D(), GetCoordim(), GetExp(), GetExp(), GetExpFromGeomId(), Nektar::MultiRegions::DisContField::GetFwdBwdTracePhys(), GetNcoeffs(), GetShapeDimension(), GetTotPoints(), Nektar::MultiRegions::DisContField::IsLeftAdjacentTrace(), Nektar::MultiRegions::DisContField::SetUpDG(), Nektar::MultiRegions::DisContField::v_AddTraceIntegral(), and Nektar::MultiRegions::ContField::v_UnsetGlobalLinSys().
|
protected |
Expansion type.
Definition at line 1097 of file ExpList.h.
Referenced by Nektar::MultiRegions::DisContField::EvaluateHDGPostProcessing(), Nektar::MultiRegions::ExpList3DHomogeneous1D::ExpList3DHomogeneous1D(), Nektar::MultiRegions::DisContField::FindPeriodicTraces(), Nektar::MultiRegions::DisContField::IsLeftAdjacentTrace(), Nektar::MultiRegions::DisContField::SetUpDG(), Nektar::MultiRegions::DisContField::v_AddFwdBwdTraceIntegral(), Nektar::MultiRegions::DisContField::v_AddTraceIntegral(), Nektar::MultiRegions::DisContField::v_EvaluateBoundaryConditions(), and Nektar::MultiRegions::DisContField::v_GetBoundaryToElmtMap().
|
protected |
Mesh associated with this expansion list.
Definition at line 1106 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField3DHomogeneous1D::ContField3DHomogeneous1D(), Nektar::MultiRegions::DisContField::DisContField(), Nektar::MultiRegions::ExpList3DHomogeneous1D::ExpList3DHomogeneous1D(), Nektar::MultiRegions::DisContField::FindPeriodicTraces(), GetGraph(), Nektar::MultiRegions::DisContField::SetUpDG(), and Nektar::MultiRegions::DisContField::v_GetBoundaryToElmtMap().
Grid velocity at quadrature points.
Definition at line 1187 of file ExpList.h.
Referenced by GetGridVelocity().
|
protected |
|
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 1109 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField::ContField(), Nektar::MultiRegions::ContField::ContField(), Nektar::MultiRegions::ContField::ContField(), GetNcoeffs(), Nektar::MultiRegions::DisContField::L2_DGDeriv(), Nektar::MultiRegions::ContField::LaplaceSolve(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ContField::v_FwdTrans(), Nektar::MultiRegions::ContField::v_HelmSolve(), Nektar::MultiRegions::ContField3DHomogeneous1D::v_HelmSolve(), Nektar::MultiRegions::ContField3DHomogeneous2D::v_HelmSolve(), Nektar::MultiRegions::DisContField::v_HelmSolve(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_HelmSolve(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_HelmSolve(), Nektar::MultiRegions::ContField::v_LinearAdvectionDiffusionReactionSolve(), and Nektar::MultiRegions::ContField::v_LinearAdvectionReactionSolve().
|
protected |
The total number of quadrature points. m_npoints \(=Q_{\mathrm{tot}}=\sum_{e=1}^{{N_{\mathrm{el}}}}N^{e}_Q\)
Definition at line 1113 of file ExpList.h.
Referenced by GetNpoints(), GetTotPoints(), Nektar::MultiRegions::DisContField::L2_DGDeriv(), Nektar::MultiRegions::ContField::LinearAdvectionEigs(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys(), SetPhys(), Nektar::MultiRegions::ExpList2DHomogeneous2D::v_FwdTrans(), Nektar::MultiRegions::ContField::v_HelmSolve(), Nektar::MultiRegions::ContField3DHomogeneous1D::v_HelmSolve(), Nektar::MultiRegions::ContField3DHomogeneous2D::v_HelmSolve(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_HelmSolve(), Nektar::MultiRegions::DisContField3DHomogeneous2D::v_HelmSolve(), Nektar::MultiRegions::ContField::v_LinearAdvectionDiffusionReactionSolve(), and Nektar::MultiRegions::ContField::v_LinearAdvectionReactionSolve().
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 1145 of file ExpList.h.
Referenced by GetPhys(), Integral(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys(), SetPhys(), SetPhys(), SetPhysArray(), UpdatePhys(), Nektar::MultiRegions::DisContField::v_ExtractTracePhys(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_ExtractTracePhys(), and Nektar::MultiRegions::DisContField::v_GetFwdBwdTracePhys().
Offset of elemental data into the array m_phys.
Definition at line 1175 of file ExpList.h.
Referenced by GetPhys_Offset(), Nektar::MultiRegions::ExpList2DHomogeneous1D::SetCoeffPhys(), Nektar::MultiRegions::ExpList2DHomogeneous2D::SetCoeffPhys(), Nektar::MultiRegions::ExpList3DHomogeneous1D::SetCoeffPhys(), and Nektar::MultiRegions::ExpList3DHomogeneous2D::SetCoeffPhys().
|
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 1153 of file ExpList.h.
Referenced by GetPhysState(), Integral(), SetPhys(), SetPhysState(), UpdatePhys(), Nektar::MultiRegions::DisContField::v_ExtractTracePhys(), and Nektar::MultiRegions::DisContField3DHomogeneous1D::v_ExtractTracePhys().
|
protected |
Session.
Definition at line 1104 of file ExpList.h.
Referenced by Nektar::MultiRegions::ContField::ContField(), Nektar::MultiRegions::ContField::ContField(), Nektar::MultiRegions::ContField3DHomogeneous1D::ContField3DHomogeneous1D(), Nektar::MultiRegions::ContField3DHomogeneous1D::ContField3DHomogeneous1D(), Nektar::MultiRegions::DisContField::DisContField(), Nektar::MultiRegions::DisContField::DisContField(), Nektar::MultiRegions::DisContField3DHomogeneous1D::DisContField3DHomogeneous1D(), Nektar::MultiRegions::ExpList2DHomogeneous1D::ExpList2DHomogeneous1D(), Nektar::MultiRegions::ExpList3DHomogeneous2D::ExpList3DHomogeneous2D(), Nektar::MultiRegions::DisContField::GenerateBoundaryConditionExpansion(), Nektar::MultiRegions::DisContField::GenerateBoundaryConditionExpansion(), Nektar::MultiRegions::ExpList3DHomogeneous1D::GenExpList3DHomogeneous1D(), GetSession(), Nektar::MultiRegions::DisContField3DHomogeneous1D::SetupBoundaryConditions(), Nektar::MultiRegions::DisContField3DHomogeneous2D::SetupBoundaryConditions(), Nektar::MultiRegions::DisContField::SetUpDG(), and Nektar::MultiRegions::ExpList3DHomogeneous1D::v_WriteVtkPieceHeader().
|
protected |
Definition at line 1183 of file ExpList.h.
Referenced by GetWaveSpace(), SetWaveSpace(), Nektar::MultiRegions::ExpList2DHomogeneous2D::v_FwdTrans(), Nektar::MultiRegions::ContField3DHomogeneous1D::v_HelmSolve(), Nektar::MultiRegions::ContField3DHomogeneous2D::v_HelmSolve(), Nektar::MultiRegions::DisContField3DHomogeneous1D::v_HelmSolve(), and Nektar::MultiRegions::DisContField3DHomogeneous2D::v_HelmSolve().