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

This class is component of a Hagedorn wavepacket gradient. More...

#include <hawp_gradient_operator.hpp>

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

Public Member Functions

 Component (HaWpGradient const *const owner)
 
real_t eps () const override
 Retrieves the semi-classical scaling parameter \( \varepsilon \) of the wavepacket. More...
 
HaWpParamSet< D > const & parameters () const override
 Grants read-only access to the Hagedorn parameter set \( \Pi \) of the wavepacket. More...
 
shapes::ShapeEnumSharedPtr< D, MultiIndex > shape () const override
 Retrieves the basis shape \( \mathfrak{K} \) of the wavepacket. More...
 
Coefficientscoefficients ()
 Grants writeable access to the coefficients \( c \) of the wavepacket. More...
 
Coefficients const & coefficients () const
 Grants read-only access to the coefficients \( c \) of the wavepacket. More...
 
- Public Member Functions inherited from waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >
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...
 

Private Attributes

HaWpGradient const *const owner_
 
Coefficients coefficients_
 

Detailed Description

template<dim_t D, class MultiIndex>
class waveblocks::wavepackets::HaWpGradient< D, MultiIndex >::Component

This class is component of a Hagedorn wavepacket gradient.

Such a component is a full-fledged scalar Hagedorn wavepacket that shares the scaling parameter \( \varepsilon \), parameter set \( \Pi \) and basis shape extension \( \mathfrak{K}_{ext} \) with other components.

Constructor & Destructor Documentation

template<dim_t D, class MultiIndex>
waveblocks::wavepackets::HaWpGradient< D, MultiIndex >::Component::Component ( HaWpGradient const *const  owner)
inline

Member Function Documentation

template<dim_t D, class MultiIndex>
Coefficients& waveblocks::wavepackets::HaWpGradient< D, MultiIndex >::Component::coefficients ( )
inline

Grants writeable access to the coefficients \( c \) of the wavepacket.

template<dim_t D, class MultiIndex>
Coefficients const& waveblocks::wavepackets::HaWpGradient< D, MultiIndex >::Component::coefficients ( ) const
inlinevirtual

Grants read-only access to the coefficients \( c \) of the wavepacket.

Implements waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >.

template<dim_t D, class MultiIndex>
real_t waveblocks::wavepackets::HaWpGradient< D, MultiIndex >::Component::eps ( ) const
inlineoverridevirtual

Retrieves the semi-classical scaling parameter \( \varepsilon \) of the wavepacket.

Implements waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >.

template<dim_t D, class MultiIndex>
HaWpParamSet<D> const& waveblocks::wavepackets::HaWpGradient< D, MultiIndex >::Component::parameters ( ) const
inlineoverridevirtual

Grants read-only access to the Hagedorn parameter set \( \Pi \) of the wavepacket.

Implements waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >.

template<dim_t D, class MultiIndex>
shapes::ShapeEnumSharedPtr<D,MultiIndex> waveblocks::wavepackets::HaWpGradient< D, MultiIndex >::Component::shape ( ) const
inlineoverridevirtual

Retrieves the basis shape \( \mathfrak{K} \) of the wavepacket.

Implements waveblocks::wavepackets::AbstractScalarHaWp< D, MultiIndex >.

Member Data Documentation

template<dim_t D, class MultiIndex>
Coefficients waveblocks::wavepackets::HaWpGradient< D, MultiIndex >::Component::coefficients_
private
template<dim_t D, class MultiIndex>
HaWpGradient const* const waveblocks::wavepackets::HaWpGradient< D, MultiIndex >::Component::owner_
private

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