12#include <include/qlibs_types.hpp>
13#include <include/tdl.hpp>
31 static void windowSet(
real_t *w,
148 const size_t w_size );
155 template <
size_t windowSize>
158 return setup( window, windowSize );
189 const size_t w_size );
196 template <
size_t windowSize>
199 return setup( window, windowSize );
235 const real_t a = 0.9_re );
243 template <
size_t windowSize>
247 return setup( window, windowSize, a );
282 const real_t a = 0.9_re );
290 template <
size_t windowSize>
294 return setup( window, windowSize, a );
333 const size_t wk_size );
344 template <
size_t windowAndKernelSize>
347 real_t (&window)[ windowAndKernelSize ],
348 real_t (&kernel)[ windowAndKernelSize ] )
350 return setup( sg, c, window, kernel, windowAndKernelSize );
416 const real_t measureNoiseCov,
417 const real_t estErrorCov );
506 template <
size_t windowSize>
509 real_t (&window)[ windowSize ],
510 real_t (&weights)[ windowSize ],
511 real_t (&w1)[ windowSize ] )
513 return setup( a, m, windowSize, window, weights, w1 );
523 template <
size_t windowSize>
525 real_t (&window)[ windowSize ],
526 real_t (&weights)[ windowSize ] )
528 return setup( a, 0.0F, windowSize, window, weights,
nullptr);
Adaptive Filter LMS.
Definition smoother.hpp:466
bool setup(const real_t a, const real_t m, real_t(&window)[windowSize], real_t(&weights)[windowSize], real_t(&w1)[windowSize])
Setup an initialize the Adaptive Filter LMS.
Definition smoother.hpp:507
bool setup(const real_t a, real_t(&window)[windowSize], real_t(&weights)[windowSize])
Setup an initialize the Adaptive Filter LMS.
Definition smoother.hpp:524
real_t smooth(const real_t x) override
Perform the smooth operation recursively for the input signal x.
Definition smoother.cpp:389
virtual ~smootherALNF()
Definition smoother.hpp:477
bool setup(const real_t a, const real_t m, const size_t wsize, real_t *window, real_t *weights, real_t *w1=nullptr)
Setup an initialize the Adaptive Filter LMS.
Definition smoother.cpp:367
Double exponential smoothing (Holt’s Method)
Definition smoother.hpp:431
virtual ~smootherDESF()
Setup an initialize the Double exponential smoothing instance.
Definition smoother.hpp:449
real_t smooth(const real_t x) override
Perform the smooth operation recursively for the input signal x.
Definition smoother.cpp:351
bool setup(const real_t a, const real_t b, const size_t nS)
Definition smoother.cpp:333
An Exponential weighting filter.
Definition smoother.hpp:365
real_t smooth(const real_t x) override
Perform the smooth operation recursively for the input signal x.
Definition smoother.cpp:279
virtual ~smootherEXPW()
Definition smoother.hpp:373
bool setup(const real_t lam=0.8_re)
Setup an initialize the Exponential weighting filter.
Definition smoother.cpp:265
A Gaussian filter.
Definition smoother.hpp:309
virtual ~smootherGMWF()
Definition smoother.hpp:317
bool setup(const real_t sg, const real_t c, real_t *window, real_t *kernel, const size_t wk_size)
Setup an initialize the Gaussian filter.
Definition smoother.cpp:216
bool setup(const real_t sg, const real_t c, real_t(&window)[windowAndKernelSize], real_t(&kernel)[windowAndKernelSize])
Setup an initialize the Gaussian filter.
Definition smoother.hpp:345
real_t smooth(const real_t x) override
Perform the smooth operation recursively for the input signal x.
Definition smoother.cpp:256
The smoother base abstract class.
Definition smoother.hpp:27
virtual ~smoother()
Definition smoother.hpp:36
bool reset(void)
Reset the the smoother filter.
Definition smoother.hpp:57
bool isInitialized(void) const
Check if the smoother filter is initialized.
virtual real_t smooth(const real_t x)=0
Perform the smooth operation recursively for the input signal x.
A scalar Kalman filter.
Definition smoother.hpp:394
bool setup(const real_t processNoiseCov, const real_t measureNoiseCov, const real_t estErrorCov)
Setup an initialize the scalar Kalman filter.
Definition smoother.cpp:295
real_t smooth(const real_t x) override
Perform the smooth operation recursively for the input signal x.
Definition smoother.cpp:313
virtual ~smootherKLMN()
Definition smoother.hpp:406
A 1st order Low-Pass Filter.
Definition smoother.hpp:67
virtual ~smootherLPF1()
Definition smoother.hpp:74
bool setup(const real_t a=0.9_re)
Setup an initialize the 1st order Low-Pass Filter.
Definition smoother.cpp:18
real_t smooth(const real_t x) override
Perform the smooth operation recursively for the input signal x.
Definition smoother.cpp:30
A 2nd order Low-Pass Filter.
Definition smoother.hpp:96
bool setup(const real_t a=0.9_re)
Setup an initialize the 2nd order Low-Pass Filter.
Definition smoother.cpp:44
real_t smooth(const real_t x) override
Perform the smooth operation recursively for the input signal x.
Definition smoother.cpp:65
virtual ~smootherLPF2()
Definition smoother.hpp:109
A Moving Outlier Removal filter.
Definition smoother.hpp:215
real_t smooth(const real_t x) override
Perform the smooth operation recursively for the input signal x.
Definition smoother.cpp:155
virtual ~smootherMOR1()
Definition smoother.hpp:224
bool setup(real_t *window, const size_t w_size, const real_t a=0.9_re)
Setup an initialize the Moving Outlier Removal filter.
Definition smoother.cpp:139
bool setup(real_t(&window)[windowSize], const real_t a=0.9_re)
Setup an initialize the Moving Outlier Removal filter.
Definition smoother.hpp:244
A Moving Outlier Removal filter.
Definition smoother.hpp:263
real_t smooth(const real_t x) override
Perform the smooth operation recursively for the input signal x.
Definition smoother.cpp:193
bool setup(real_t *window, const size_t w_size, const real_t a=0.9_re)
Setup an initialize the Moving Outlier Removal filter.
Definition smoother.cpp:176
bool setup(real_t(&window)[windowSize], const real_t a=0.9_re)
Setup an initialize the Moving Outlier Removal filter.
Definition smoother.hpp:291
virtual ~smootherMOR2()
Definition smoother.hpp:271
A Moving Window Median filter.
Definition smoother.hpp:132
bool setup(real_t *window, const size_t w_size)
Setup an initialize the Moving Window Median filter.
Definition smoother.cpp:85
virtual ~smootherMWM1()
Definition smoother.hpp:139
real_t smooth(const real_t x) override
Perform the smooth operation recursively for the input signal x.
Definition smoother.cpp:99
bool setup(real_t(&window)[windowSize])
Setup an initialize the Moving Window Median filter.
Definition smoother.hpp:156
A Moving Window Median filter.
Definition smoother.hpp:174
real_t smooth(const real_t x) override
Perform the smooth operation recursively for the input signal x.
Definition smoother.cpp:123
virtual ~smootherMWM2()
Definition smoother.hpp:180
bool setup(real_t *window, const size_t w_size)
Setup an initialize the Moving Window Median filter.
Definition smoother.cpp:110
bool setup(real_t(&window)[windowSize])
Setup an initialize the Moving Window Median filter.
Definition smoother.hpp:197
A Tapped Delay Line (TDL) object.
Definition tdl.hpp:32
The qLibs++ library namespace.
Definition fp16.cpp:4
float real_t
A type to instantiate a real variable double-precision of 64-bits IEEE 754.
Definition qlibs_types.hpp:43