CoefficientTransforms.hpp
2 // See LICENSE.txt for details.
3
4 #pragma once
5
6 #include <cstddef>
7
8 /// \cond
9 class DataVector;
10 template <size_t Dim>
11 class Mesh;
12 class ModalVector;
13
14 namespace gsl {
15 template <typename T>
16 class not_null;
17 } // namespace gsl
18 /// \endcond
19
20 // @{
21 /*!
22  * \ingroup SpectralGroup
23  * \brief Compute the modal coefficients from the nodal coefficients
24  *
25  * \see Spectral::grid_points_to_spectral_matrix
26  */
27 template <size_t Dim>
29  const DataVector& nodal_coefficients,
30  const Mesh<Dim>& mesh) noexcept;
31
32 template <size_t Dim>
33 ModalVector to_modal_coefficients(const DataVector& nodal_coefficients,
34  const Mesh<Dim>& mesh) noexcept;
35 // @}
36
37 // @{
38 /*!
39  * \ingroup SpectralGroup
40  * \brief Compute the nodal coefficients from the modal coefficients
41  *
42  * \see Spectral::spectral_to_grid_points_matrix
43  */
44 template <size_t Dim>
46  const ModalVector& modal_coefficients,
47  const Mesh<Dim>& mesh) noexcept;
48
49 template <size_t Dim>
50 DataVector to_nodal_coefficients(const ModalVector& modal_coefficients,
51  const Mesh<Dim>& mesh) noexcept;
52 // @}
Implementations from the Guideline Support Library.
Definition: ConservativeFromPrimitive.hpp:10
void to_modal_coefficients(gsl::not_null< ModalVector *> modal_coefficients, const DataVector &nodal_coefficients, const Mesh< Dim > &mesh) noexcept
Compute the modal coefficients from the nodal coefficients.
Holds the number of grid points, basis, and quadrature in each direction of the computational grid...
Definition: Mesh.hpp:49
A class for storing spectral coefficients on a spectral grid.
Definition: ModalVector.hpp:30
void to_nodal_coefficients(gsl::not_null< DataVector *> nodal_coefficients, const ModalVector &modal_coefficients, const Mesh< Dim > &mesh) noexcept
Compute the nodal coefficients from the modal coefficients.
Stores a collection of function values.
Definition: DataVector.hpp:42
Require a pointer to not be a nullptr
Definition: ConservativeFromPrimitive.hpp:12