Go to the documentation of this file.
7 #ifndef FMM_HELMHOLTZ_3D_HF_LEVEL_DATA_H_INCLUDED
8 #define FMM_HELMHOLTZ_3D_HF_LEVEL_DATA_H_INCLUDED
13 #include <Eigen/Dense>
27 typedef Eigen::Matrix<std::complex<double>, Eigen::Dynamic, 1>
cvector_t;
81 size_t m_expansion_length;
83 std::vector<interpolator> m_interp_ups;
84 std::vector<interpolator> m_interp_dns;
void set_expansion_length(size_t L)
set the expansion length
const cvector_t & interp_down(cvector_t const &x) const
interpolate a function on the unit sphere down to this level
void set_num_threads(size_t n)
set the number of threads
class performing interpolation and integration over the unit sphere
helmholtz_3d_hf_level_data()
constructor Sets vectors to size 1, as they need to be expanded based on first element
const cvector_t & interp_up(cvector_t const &x) const
interpolate a function on the unit sphere up to this level
void set_interp_dn(interpolator const &interp)
set the down-interpolator object (for all threads)
Interface of class NiHu::fmm::interpolator.
Eigen::Matrix< std::complex< double >, Eigen::Dynamic, 1 > cvector_t
complex dynamic Eigen vector
const unit_sphere & get_unit_sphere() const
return the stored unit sphere
Interface of class NiHu::fmm::unit_sphere.
class interpolating over the unit sphere
size_t get_expansion_length() const
return the expansion length
void set_interp_up(interpolator const &interp)
set the up-interpolator object (for all threads)
level data of the helmholtz 3d hf fmm