MRPT
2.0.1
Main Page
Related Pages
Modules
+
Namespaces
Namespace List
+
Namespace Members
+
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
+
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
+
Variables
a
b
c
d
e
g
h
i
l
m
n
p
r
s
t
u
v
w
+
Typedefs
a
c
f
i
m
o
p
r
s
t
v
+
Enumerations
c
e
f
g
m
n
p
s
t
v
+
Enumerator
a
b
c
d
e
f
i
k
l
m
n
o
p
r
s
t
u
v
w
+
Classes
Class List
Class Index
Class Hierarchy
+
Class Members
+
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
+
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
+
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Typedefs
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
+
Enumerations
a
e
f
j
m
o
p
q
r
s
t
u
v
+
Enumerator
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
y
+
Related Functions
c
d
e
g
m
o
p
t
w
+
Files
File List
+
File Members
+
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
+
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
+
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
+
Typedefs
b
c
d
g
i
j
l
m
p
r
s
t
v
x
Enumerations
+
Enumerator
a
d
e
i
j
n
p
r
s
u
w
+
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
Examples
filters.cpp
Go to the documentation of this file.
1
/* +------------------------------------------------------------------------+
2
| Mobile Robot Programming Toolkit (MRPT) |
3
| https://www.mrpt.org/ |
4
| |
5
| Copyright (c) 2005-2020, Individual contributors, see AUTHORS file |
6
| See: https://www.mrpt.org/Authors - All rights reserved. |
7
| Released under BSD License. See: https://www.mrpt.org/License |
8
+------------------------------------------------------------------------+ */
9
10
#include "
math-precomp.h
"
// Precompiled headers
11
12
#include <
mrpt/math/filters.h
>
13
14
using namespace
mrpt::math
;
15
16
LowPassFilter_IIR1::LowPassFilter_IIR1
(
double
_alpha,
double
y_k_minus_1)
17
: alpha(_alpha), m_y_km1(y_k_minus_1)
18
{
19
}
20
21
double
LowPassFilter_IIR1::filter
(
double
x)
22
{
23
// y[k] = alpha*y[k - 1] + (1 - alpha)*x[k]
24
const
double
y =
alpha
*
m_y_km1
+ (1 -
alpha
) * x;
25
m_y_km1
= y;
26
return
y;
27
}
28
29
double
LowPassFilter_IIR1::getLastOutput
()
const
{
return
m_y_km1
; }
mrpt::math
This base provides a set of functions for maths stuff.
Definition:
math/include/mrpt/math/bits_math.h:11
mrpt::math::LowPassFilter_IIR1::LowPassFilter_IIR1
LowPassFilter_IIR1(double alpha=0.5, double y_k_minus_1=.0)
Definition:
filters.cpp:16
mrpt::math::LowPassFilter_IIR1::m_y_km1
double m_y_km1
Definition:
filters.h:35
mrpt::math::LowPassFilter_IIR1::filter
double filter(double x)
Processes one input sample, updates the filter state and return the filtered value.
Definition:
filters.cpp:21
filters.h
mrpt::math::LowPassFilter_IIR1::alpha
double alpha
See equation in LowPassFilter_IIR1.
Definition:
filters.h:32
mrpt::math::LowPassFilter_IIR1::getLastOutput
double getLastOutput() const
Definition:
filters.cpp:29
math-precomp.h
Page generated by
Doxygen 1.8.14
for MRPT 2.0.1 Git: 0fef1a6d7 Fri Apr 3 23:00:21 2020 +0200 at vie abr 3 23:20:28 CEST 2020