57 "Fourier points for single mode analysis should be 2");
70 for (
size_t i = 0; i < npts; ++i)
85 std::shared_ptr<Points<NekDouble>> returnval(
88 returnval->Initialize();
97 "CreateMatrix not available for Fourier Single Mode Points");
105 ASSERTL0(
false,
"Interp not available for Fourier Single Mode Points");
113 ASSERTL0(
false,
"Interp not available for Fourier Single Mode Points");
119 [[maybe_unused]]
size_t numpoints,
122 ASSERTL0(
false,
"Interp not available for Fourier Single Mode Points");
128 [[maybe_unused]]
size_t npts,
134 "CalculateInterpMatrix not available for Fourier Single Mode Points");
#define ASSERTL0(condition, msg)
static std::shared_ptr< PointsBaseType > Create(const PointsKey &key)
void CalculateInterpMatrix(size_t npts, const Array< OneD, const NekDouble > &xpoints, Array< OneD, NekDouble > &interp)
void v_CalculatePoints() override
const MatrixSharedPtrType v_GetI(const PointsKey &pkey) final
void v_CalculateWeights() override
void v_CalculateDerivMatrix() override
std::shared_ptr< NekMatrix< NekDouble > > CreateMatrix(const PointsKey &pkey)
static bool initPointsManager[]
bool RegisterCreator(const KeyType &key, const CreateFuncType &createFunc)
Register the given function and associate it with the key. The return value is just to facilitate cal...
Stores a set of points of datatype DataT, defined by a PointKey.
Array< OneD, DataType > m_points[3]
Storage for the point locations, allowing for up to a 3D points storage.
virtual void v_CalculatePoints()
PointsKey m_pointsKey
Points type for this points distributions.
Array< OneD, DataType > m_weights
Quadrature weights for the weights.
virtual void v_CalculateWeights()
Defines a specification for a set of points.
size_t GetNumPoints() const
General purpose memory allocation routines with the ability to allocate from thread specific memory p...
PointsManagerT & PointsManager(void)
@ eFourierSingleModeSpaced
1D Non Evenly-spaced points for Single Mode analysis