DiFi++ is a small c++ header-only library for DIgital FIlters based on rational transfer functions such as the butterworth filter and the moving average filter
 
 
 
Go to file
Vincent Samy 3251815ada All centered filter test passes.
Though time-varying second order is not working?
May need deeper tests.
2019-11-08 17:46:43 +09:00
cmake@efa25a9976 Upgrade cmake modules. 2019-10-29 13:40:46 +09:00
doc Add docs. 2019-01-04 17:15:03 +09:00
include All centered filter test passes. 2019-11-08 17:46:43 +09:00
tests All centered filter test passes. 2019-11-08 17:46:43 +09:00
.clang-format Time-fixed central filter pass. 2019-11-08 15:52:27 +09:00
.gitmodules Initial commit with generic filter 2018-10-23 10:16:10 +09:00
CMakeLists.txt Don't install useless files. 2019-10-10 13:16:40 +09:00
LICENSE Relax license. 2019-10-10 11:31:00 +09:00
README.md Pass to catch for tests. 2019-10-29 17:55:25 +09:00

README.md

DiFi++

License BSD 2-Clause

DiFi++ is a small c++ header-only library for DIgital FIlters based on rational transfer functions such as the butterworth filter and the moving average filter. DiFi++ is using the Eigen library for math computations.

The implementation is based on well written article from Neil Robertson. Please check out the followings

The library has been tested against Matlab results.

A doxygen documentation is generated when compiling.

Installing

This is an header-only library so there is nothing to compile (but the documentation)

git clone --recursive https://github.com/vsamy/DiFi++
cd DiFi++
mkdir build
cd build
cmake ..
make install

Testing

To test you need to install catch2 on your system.

Note

The method used is close but somewhat different from Matlab methods and Butterworth band-reject has quite different results (precision of 1e-8).