WaveBlocksND
Public Member Functions | List of all members
waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex > Class Template Referenceabstract

Abstract superclass that represents a scalar (1-component) hagedorn wavepacket. More...

#include <hawp_commons.hpp>

Inheritance diagram for waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >:
waveblocks::wavepackets::AbstractScalarHaWpBasis< D, MultiIndex > waveblocks::wavepackets::HaWpGradient< D, MultiIndex >::Component waveblocks::wavepackets::HomogeneousHaWp< D, MultiIndex >::Component waveblocks::wavepackets::InhomogeneousHaWp< D, MultiIndex >::Component waveblocks::wavepackets::ScalarHaWp< D, MultiIndex >

Public Member Functions

virtual real_t eps () const =0
 Retrieves the semi-classical scaling parameter \( \varepsilon \) of the wavepacket. More...
 
virtual HaWpParamSet< D > const & parameters () const =0
 Grants read-only access to the Hagedorn parameter set \( \Pi \) of the wavepacket. More...
 
virtual shapes::ShapeEnumSharedPtr< D, MultiIndex > shape () const =0
 Retrieves the basis shape \( \mathfrak{K} \) of the wavepacket. More...
 
virtual Coefficients const & coefficients () const =0
 Grants read-only access to the coefficients \( \{c_k\} \) for all \( k \in \mathfrak{K} \) of this wavepacket. More...
 
template<int N>
CArray< 1, N > evaluate (CMatrix< D, N > const &grid) const
 Evaluates this wavepacket \( \Phi(x) \) at complex grid nodes \( x \in \gamma \). More...
 
template<int N>
CArray< 1, N > evaluate (RMatrix< D, N > const &rgrid) const
 Evaluates this wavepacket \( \Phi(x) \) at real grid nodes \( x \in \gamma \). More...
 
complex_t prefactor () const
 Computes the prefactor \( \frac{1}{\sqrt{det(Q)}} \). More...
 
complex_t phasefactor () const
 Computes the global phase factor \( \exp{(\frac{i S}{\varepsilon^2})} \). More...
 
- Public Member Functions inherited from waveblocks::wavepackets::AbstractScalarHaWpBasis< D, MultiIndex >
template<int N>
HaWpEvaluator< D, MultiIndex, N > create_evaluator (CMatrix< D, N > const &grid) const
 
template<int N>
HaWpBasisVector< N > evaluate_basis (CMatrix< D, N > const &grid) const
 Evaluates all basis functions \( \{\phi_k\} \) on complex grid nodes \( x \in \gamma \). More...
 
template<int N>
HaWpBasisVector< N > evaluate_basis (RMatrix< D, N > const &rgrid) const
 Evaluates all basis functions \( \{\phi_k\} \) on real grid nodes \( x \in \gamma \). More...
 
shapes::ShapeEnumSharedPtr< D, MultiIndex > extended_shape () const
 Computes the extension \( \mathfrak{K}_{ext} \) of the stored basis shape \( \mathfrak{K} \). More...
 

Detailed Description

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

Abstract superclass that represents a scalar (1-component) hagedorn wavepacket.

A subclass provides read-only access to the scaling parameter \( \varepsilon \), the Hagedorn parameter set \( \Pi \), the basis shape \( \mathfrak{K} \) and the coefficients \( c \).

Therefore it is able to evaluate itself ( \( \Phi(x) \)) on grid points \( x \).

Template Parameters
Dwavepacket dimensionality
MultiIndextype to represent a multi-index

Member Function Documentation

template<dim_t D, class MultiIndex>
virtual Coefficients const& waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >::coefficients ( ) const
pure virtual
template<dim_t D, class MultiIndex>
virtual real_t waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >::eps ( ) const
pure virtual
template<dim_t D, class MultiIndex>
template<int N>
CArray<1,N> waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >::evaluate ( CMatrix< D, N > const &  grid) const
inline

Evaluates this wavepacket \( \Phi(x) \) at complex grid nodes \( x \in \gamma \).

Notice that this function does not include the prefactor \( \frac{1}{\sqrt{det(Q)}} \) nor the global phase \( \exp{(\frac{iS}{\varepsilon^2})} \).

Parameters
gridComplex grid nodes / quadrature points \( \gamma \). Complex matrix with shape (dimensionality, number of grid nodes).
Returns
Complex matrix with shape (1, number of grid nodes)
template<dim_t D, class MultiIndex>
template<int N>
CArray<1,N> waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >::evaluate ( RMatrix< D, N > const &  rgrid) const
inline

Evaluates this wavepacket \( \Phi(x) \) at real grid nodes \( x \in \gamma \).

Notice that this function does not include the prefactor \( \frac{1}{\sqrt{det(Q)}} \) nor the global phase \( \exp{(\frac{iS}{\varepsilon^2})} \).

Parameters
rgridReal grid nodes / quadrature points \( \gamma \). Real matrix with shape (dimensionality, number of grid nodes).
Returns
Complex matrix with shape (1, number of grid nodes)
template<dim_t D, class MultiIndex>
virtual HaWpParamSet<D> const& waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >::parameters ( ) const
pure virtual
template<dim_t D, class MultiIndex>
complex_t waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >::phasefactor ( ) const
inline

Computes the global phase factor \( \exp{(\frac{i S}{\varepsilon^2})} \).

template<dim_t D, class MultiIndex>
complex_t waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >::prefactor ( ) const
inline

Computes the prefactor \( \frac{1}{\sqrt{det(Q)}} \).

template<dim_t D, class MultiIndex>
virtual shapes::ShapeEnumSharedPtr<D, MultiIndex> waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >::shape ( ) const
pure virtual

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