48 #ifndef MUI_SAMPLER_GAUSS_H_
49 #define MUI_SAMPLER_GAUSS_H_
51 #include "../../general/util.h"
52 #include "../../config.h"
53 #include "../sampler.h"
57 template<
typename CONFIG=default_config,
typename O_TP=
typename CONFIG::REAL,
typename I_TP=O_TP>
62 using REAL =
typename CONFIG::REAL;
63 using INT =
typename CONFIG::INT;
68 template<
template<
typename,
typename>
class CONTAINER>
70 REAL exp_val = -0.5/
h;
74 for(
size_t i = 0 ; i < data_points.size() ; i++ ) {
75 REAL d =
normsq( focus - data_points[i].first );
77 REAL w =
nh * std::exp( exp_val * d );
78 vsum += data_points[i].second * w;
82 if ( wsum )
return vsum / wsum;
Definition: geometry.h:92
Definition: geometry.h:158
Definition: sampler_gauss.h:58
REAL h
Definition: sampler_gauss.h:92
O_TP OTYPE
Definition: sampler_gauss.h:60
typename CONFIG::REAL REAL
Definition: sampler_gauss.h:62
geometry::any_shape< CONFIG > support(point_type focus, REAL domain_mag) const
Definition: sampler_gauss.h:86
sampler_gauss(REAL r_, REAL h_)
Definition: sampler_gauss.h:66
typename CONFIG::INT INT
Definition: sampler_gauss.h:63
REAL nh
Definition: sampler_gauss.h:93
REAL r
Definition: sampler_gauss.h:91
I_TP ITYPE
Definition: sampler_gauss.h:61
OTYPE filter(point_type focus, const CONTAINER< ITYPE, CONFIG > &data_points) const
Definition: sampler_gauss.h:69
typename CONFIG::point_type point_type
Definition: sampler_gauss.h:64
SCALAR normsq(vexpr< E, SCALAR, D > const &u)
Definition: point.h:380