Line data Source code
1 0 : // Distributed under the MIT License. 2 : // See LICENSE.txt for details. 3 : 4 : #pragma once 5 : 6 : #include <cstddef> 7 : 8 : /// \cond 9 : class DataVector; 10 : class Matrix; 11 : namespace Spectral { 12 : enum class Quadrature : uint8_t; 13 : } // namespace Spectral 14 : /// \endcond 15 : 16 : namespace Spectral { 17 : 18 : /*! 19 : * \ingroup SpectralGroup 20 : * 21 : * \brief A collection of helper functions for Jacobi polyomials 22 : * 23 : */ 24 1 : class Jacobi { 25 : public: 26 : /*! 27 : * \brief Value of the basis function \f$\Phi^k(x) = P^(\alpha,\beta)_k(x)\f$, 28 : * implemented from \cite Fornberg1996 29 : */ 30 : template <typename T> 31 1 : static T basis_function_value(double alpha, double beta, size_t k, 32 : const T& x); 33 : }; 34 : } // namespace Spectral