Nektar++
|
#include <FourierPoints.h>
Public Member Functions | |
~FourierPoints () override | |
std::shared_ptr< NekMatrix< NekDouble > > | CreateMatrix (const PointsKey &pkey) |
FourierPoints (const PointsKey &key) | |
Public Member Functions inherited from Nektar::LibUtilities::Points< NekDouble > | |
virtual | ~Points () |
void | Initialize (void) |
size_t | GetPointsDim () const |
size_t | GetNumPoints () const |
size_t | GetTotNumPoints () const |
PointsType | GetPointsType () const |
const Array< OneD, const DataType > & | GetZ () const |
const Array< OneD, const DataType > & | GetW () const |
void | GetZW (Array< OneD, const DataType > &z, Array< OneD, const DataType > &w) const |
const Array< OneD, const NekDouble > & | GetBaryWeights () const |
void | GetPoints (Array< OneD, const DataType > &x) const |
void | GetPoints (Array< OneD, const DataType > &x, Array< OneD, const DataType > &y) const |
void | GetPoints (Array< OneD, const DataType > &x, Array< OneD, const DataType > &y, Array< OneD, const DataType > &z) const |
const MatrixSharedPtrType & | GetD (Direction dir=xDir) const |
const MatrixSharedPtrType | GetI (const PointsKey &key) |
const MatrixSharedPtrType | GetI (const Array< OneD, const DataType > &x) |
const MatrixSharedPtrType | GetI (size_t uint, const Array< OneD, const DataType > &x) |
const MatrixSharedPtrType | GetI (const Array< OneD, const DataType > &x, const Array< OneD, const DataType > &y) |
const MatrixSharedPtrType | GetI (const Array< OneD, const DataType > &x, const Array< OneD, const DataType > &y, const Array< OneD, const DataType > &z) |
const MatrixSharedPtrType | GetGalerkinProjection (const PointsKey &pkey) |
Static Public Member Functions | |
static std::shared_ptr< PointsBaseType > | Create (const PointsKey &key) |
Protected Member Functions | |
const MatrixSharedPtrType | v_GetI (const PointsKey &pkey) final |
const MatrixSharedPtrType | v_GetI (const Array< OneD, const NekDouble > &x) final |
const MatrixSharedPtrType | v_GetI (size_t numpoints, const Array< OneD, const NekDouble > &x) final |
Protected Member Functions inherited from Nektar::LibUtilities::Points< NekDouble > | |
virtual void | v_Initialize (void) |
virtual void | v_CalculatePoints () |
virtual void | v_CalculateWeights () |
Private Member Functions | |
FourierPoints ()=delete | |
FourierPoints (const FourierPoints &points)=delete | |
void | v_CalculatePoints () override |
void | v_CalculateWeights () override |
void | v_CalculateDerivMatrix () override |
void | CalculateInterpMatrix (size_t npts, const Array< OneD, const NekDouble > &xpoints, Array< OneD, NekDouble > &interp) |
NekDouble | PeriodicSincFunction (const NekDouble x, const NekDouble h) |
Static Private Attributes | |
static bool | initPointsManager [] |
Additional Inherited Members | |
Public Types inherited from Nektar::LibUtilities::Points< NekDouble > | |
typedef NekDouble | DataType |
typedef std::shared_ptr< NekMatrix< DataType > > | MatrixSharedPtrType |
Protected Attributes inherited from Nektar::LibUtilities::Points< NekDouble > | |
PointsKey | m_pointsKey |
Points type for this points distributions. More... | |
Array< OneD, DataType > | m_points [3] |
Storage for the point locations, allowing for up to a 3D points storage. More... | |
Array< OneD, DataType > | m_weights |
Quadrature weights for the weights. More... | |
Array< OneD, DataType > | m_bcweights |
Barycentric weights. More... | |
MatrixSharedPtrType | m_derivmatrix [3] |
Derivative matrices. More... | |
NekManager< PointsKey, NekMatrix< DataType >, PointsKey::opLess > | m_InterpManager |
NekManager< PointsKey, NekMatrix< DataType >, PointsKey::opLess > | m_GalerkinProjectionManager |
Definition at line 42 of file FourierPoints.h.
|
inlineoverride |
Definition at line 45 of file FourierPoints.h.
|
inline |
Definition at line 54 of file FourierPoints.h.
References CreateMatrix(), Nektar::LibUtilities::eFourierEvenlySpaced, Nektar::LibUtilities::eGaussGaussChebyshev, Nektar::LibUtilities::eGaussGaussLegendre, Nektar::LibUtilities::eGaussLobattoChebyshev, Nektar::LibUtilities::eGaussLobattoLegendre, Nektar::LibUtilities::eGaussRadauMAlpha0Beta1, Nektar::LibUtilities::eGaussRadauMChebyshev, Nektar::LibUtilities::eGaussRadauMLegendre, Nektar::LibUtilities::eGaussRadauPChebyshev, Nektar::LibUtilities::eGaussRadauPLegendre, Nektar::LibUtilities::ePolyEvenlySpaced, and Nektar::LibUtilities::Points< NekDouble >::m_InterpManager.
|
privatedelete |
|
privatedelete |
|
private |
Definition at line 156 of file FourierPoints.cpp.
References Nektar::LibUtilities::PointsKey::GetNumPoints(), Nektar::LibUtilities::Points< NekDouble >::m_points, Nektar::LibUtilities::Points< NekDouble >::m_pointsKey, and PeriodicSincFunction().
Referenced by v_GetI().
|
static |
Definition at line 100 of file FourierPoints.cpp.
std::shared_ptr< NekMatrix< NekDouble > > Nektar::LibUtilities::FourierPoints::CreateMatrix | ( | const PointsKey & | pkey | ) |
Delegate to function below.
Definition at line 110 of file FourierPoints.cpp.
References Nektar::LibUtilities::Points< NekDouble >::GetI(), Nektar::LibUtilities::PointsKey::GetNumPoints(), and Nektar::LibUtilities::PointsManager().
Referenced by FourierPoints().
|
private |
Definition at line 171 of file FourierPoints.cpp.
Referenced by CalculateInterpMatrix().
|
overrideprivate |
Definition at line 70 of file FourierPoints.cpp.
References Nektar::LibUtilities::PointsKey::GetNumPoints(), Nektar::LibUtilities::Points< NekDouble >::m_derivmatrix, and Nektar::LibUtilities::Points< NekDouble >::m_pointsKey.
|
overrideprivatevirtual |
Reimplemented from Nektar::LibUtilities::Points< NekDouble >.
Definition at line 43 of file FourierPoints.cpp.
References ASSERTL0, Nektar::LibUtilities::PointsKey::GetNumPoints(), Nektar::LibUtilities::Points< NekDouble >::m_points, Nektar::LibUtilities::Points< NekDouble >::m_pointsKey, and Nektar::LibUtilities::Points< NekDouble >::v_CalculatePoints().
|
overrideprivatevirtual |
Reimplemented from Nektar::LibUtilities::Points< NekDouble >.
Definition at line 58 of file FourierPoints.cpp.
References Nektar::LibUtilities::PointsKey::GetNumPoints(), Nektar::LibUtilities::Points< NekDouble >::m_pointsKey, Nektar::LibUtilities::Points< NekDouble >::m_weights, and Nektar::LibUtilities::Points< NekDouble >::v_CalculateWeights().
|
finalprotected |
Delegate to function below.
Definition at line 131 of file FourierPoints.cpp.
References Nektar::LibUtilities::Points< NekDouble >::GetI().
|
finalprotected |
Definition at line 122 of file FourierPoints.cpp.
References ASSERTL0, Nektar::LibUtilities::PointsKey::GetPointsDim(), and Nektar::LibUtilities::Points< NekDouble >::m_InterpManager.
|
finalprotected |
Definition at line 140 of file FourierPoints.cpp.
References CalculateInterpMatrix(), and Nektar::LibUtilities::Points< NekDouble >::GetNumPoints().
|
staticprivate |
Definition at line 110 of file FourierPoints.h.