WaveBlocksND
Public Member Functions | Private Attributes | List of all members
waveblocks::wavepackets::HaWpGradientEvaluator< D, MultiIndex > Class Template Reference

This class constructs the coefficients of the Hagedorn gradient wavepacket \( -i\varepsilon^2\nabla_x \) applied to an arbitrary scalar wavepacket \( \Phi \). More...

#include <hawp_gradient_evaluator.hpp>

Public Member Functions

 HaWpGradientEvaluator (real_t eps, const HaWpParamSet< D > *parameters, const ShapeEnum< D, MultiIndex > *base_enum, const ShapeEnum< D, MultiIndex > *grad_enum)
 Initialisation. More...
 
std::array< Coefficients, std::size_t(D) > apply (const Coefficients &base_coeffs) const
 Computes the coefficients of the gradient wavepacket. More...
 

Private Attributes

real_t eps_
 
const HaWpParamSet< D > * parameters_
 
const ShapeEnum< D, MultiIndex > * base_enum_
 enumeration of basic shape More...
 
const ShapeEnum< D, MultiIndex > * grad_enum_
 enumeration of extended shape More...
 

Detailed Description

template<dim_t D, class MultiIndex>
class waveblocks::wavepackets::HaWpGradientEvaluator< D, MultiIndex >

This class constructs the coefficients of the Hagedorn gradient wavepacket \( -i\varepsilon^2\nabla_x \) applied to an arbitrary scalar wavepacket \( \Phi \).

This class is low-level. You should not use it directly. Instead, use the high-level HaWpGradientOperator.

Constructor & Destructor Documentation

template<dim_t D, class MultiIndex>
waveblocks::wavepackets::HaWpGradientEvaluator< D, MultiIndex >::HaWpGradientEvaluator ( real_t  eps,
const HaWpParamSet< D > *  parameters,
const ShapeEnum< D, MultiIndex > *  base_enum,
const ShapeEnum< D, MultiIndex > *  grad_enum 
)
inline

Initialisation.

Parameters
epsThe semi-classical scaling parameter \( \varepsilon \).
parametersThe Hagedor parameter set \( \Pi \).
base_enumThe basis shape \( \mathfrak{K} \) of the source wavepacket.
grad_enumThe extended basis shape \( \mathfrak{K}_{ext} \) of the future wavepacket gradient.

Member Function Documentation

template<dim_t D, class MultiIndex>
std::array<Coefficients, std::size_t(D) > waveblocks::wavepackets::HaWpGradientEvaluator< D, MultiIndex >::apply ( const Coefficients base_coeffs) const
inline

Computes the coefficients of the gradient wavepacket.

Parameters
base_coeffsCoefficients of the input Hagedorn wavepacket.
Returns
Array of coefficient vectors: The i-th entry of the array contains the coefficients of the i-th component \( \frac{\partial \Phi}{\partial x_i} \).

Member Data Documentation

template<dim_t D, class MultiIndex>
const ShapeEnum<D,MultiIndex>* waveblocks::wavepackets::HaWpGradientEvaluator< D, MultiIndex >::base_enum_
private

enumeration of basic shape

template<dim_t D, class MultiIndex>
real_t waveblocks::wavepackets::HaWpGradientEvaluator< D, MultiIndex >::eps_
private
template<dim_t D, class MultiIndex>
const ShapeEnum<D,MultiIndex>* waveblocks::wavepackets::HaWpGradientEvaluator< D, MultiIndex >::grad_enum_
private

enumeration of extended shape

template<dim_t D, class MultiIndex>
const HaWpParamSet<D>* waveblocks::wavepackets::HaWpGradientEvaluator< D, MultiIndex >::parameters_
private

The documentation for this class was generated from the following file: