61 double Filter(
const double x_insert);
115 const std::vector<double> &
numerators()
const;
140 double UpdateLast(
const double input);
146 double Compute(
const std::deque<double> &values,
147 const std::vector<double> &coefficients,
148 const std::size_t coeff_start,
const std::size_t coeff_end);
151 std::deque<double> x_values_;
154 std::deque<double> y_values_;
157 std::vector<double> denominators_;
160 std::vector<double> numerators_;
163 double dead_zone_ = 0.0;
The DigitalFilter class is used to pass signals with a frequency lower than a certain cutoff frequenc...
void set_coefficients(const std::vector< double > &denominators, const std::vector< double > &numerators)
set denominators and numerators
const std::vector< double > & numerators() const
get numerators
const std::deque< double > & inputs_queue() const
get inputs of the filter
const std::deque< double > & outputs_queue() const
get outputs of the filter
void set_dead_zone(const double deadzone)
set filter deadzone
void reset_values()
re-set the x_values_ and y_values_
double Filter(const double x_insert)
Processes a new measurement with the filter.
double dead_zone() const
get dead_zone
void set_numerators(const std::vector< double > &numerators)
set numerators by an input vector
const std::vector< double > & denominators() const
get denominators
~DigitalFilter()=default
Default destructor.
void set_denominators(const std::vector< double > &denominators)
@desc: Filter by the input x_insert Input: new value of x_insert Remove x[n - 1], insert x_insert int...