#include <kalman_filter.h>
Public Member Functions | |
bool | computePrediction (std::vector< T > &data_out) |
bool | computePrediction (std::vector< T > &data_out, const double &delta_t) |
virtual bool | configure () |
bool | configure (const std::vector< T > &init_state_vector, const std::string param_namespace="") |
bool | configure (const std::string ¶m_namespace) |
bool | getCurrentState (std::vector< T > &data_out) |
bool | getErrorCovarianceMatrix (Eigen::MatrixXd &data_out) |
bool | getGatingMatrix (Eigen::MatrixXd &data_out) |
bool | isInitializated () |
bool | likelihood (const std::vector< T > &data_in, double &data_out) |
MultiChannelKalmanFilter () | |
bool | predict (std::vector< T > &data_out) |
bool | resetErrorCovAndState () |
virtual bool | update (const std::vector< T > &data_in, std::vector< T > &data_out) |
bool | update (const std::vector< T > &data_in, std::vector< T > &data_out, const double &delta_t, bool update_Q_matrix=false, const Eigen::MatrixXd &R_loc=Eigen::MatrixXd::Zero(1, 1)) |
~MultiChannelKalmanFilter () | |
Public Member Functions inherited from filters::MultiChannelFilterBase< T > | |
bool | configure (unsigned int number_of_channels, const std::string ¶m_name, ros::NodeHandle node_handle=ros::NodeHandle()) |
bool | configure (unsigned int number_of_channels, XmlRpc::XmlRpcValue &config) |
bool | configure (XmlRpc::XmlRpcValue &config) |
MultiChannelFilterBase () | |
virtual bool | update (const T &data_in, T &data_out) |
Public Member Functions inherited from filters::FilterBase< T > | |
bool | configure (const std::string ¶m_name, ros::NodeHandle node_handle=ros::NodeHandle()) |
bool | configure (XmlRpc::XmlRpcValue &config) |
FilterBase () | |
const std::string & | getName () |
std::string | getType () |
virtual | ~FilterBase () |
Private Member Functions | |
double | fac (double x) |
bool | fromStdVectorToEigenMatrix (std::vector< double > &in, Eigen::MatrixXd &out, int rows, int columns, std::string matrix_name) |
bool | fromStdVectorToEigenVector (std::vector< double > &in, Eigen::VectorXd &out, int rows, std::string vector_name) |
bool | getParams (iirob_filters::KalmanFilterParameters &, const std::string &) |
Private Attributes | |
Eigen::MatrixXd | A |
Eigen::MatrixXd | At |
Eigen::MatrixXd | C |
bool | can_update_Q_matrix |
double | dt |
Eigen::MatrixXd | gatingMatrix |
Eigen::MatrixXd | I |
bool | initialized |
bool | isDynamicUpdate |
Eigen::MatrixXd | K |
int | m |
int | n |
ros::NodeHandle | nh |
Eigen::MatrixXd | P |
Eigen::MatrixXd | P0 |
Eigen::MatrixXd | Q |
Eigen::MatrixXd | Q_coeff |
Eigen::MatrixXd | Q_exponent |
double | Q_variance |
Eigen::MatrixXd | R |
Eigen::VectorXd | x_hat |
Eigen::VectorXd | x_hat_new |
Additional Inherited Members | |
Protected Member Functions inherited from filters::FilterBase< T > | |
bool | getParam (const std::string &name, std::string &value) |
bool | getParam (const std::string &name, XmlRpc::XmlRpcValue &value) |
bool | getParam (const std::string &name, double &value) |
bool | getParam (const std::string &name, std::vector< double > &value) |
bool | getParam (const std::string &name, unsigned int &value) |
bool | getParam (const std::string &name, int &value) |
bool | getParam (const std::string &name, std::vector< std::string > &value) |
bool | getParam (const std::string &name, bool &value) |
bool | loadConfiguration (XmlRpc::XmlRpcValue &config) |
Protected Attributes inherited from filters::MultiChannelFilterBase< T > | |
unsigned int | number_of_channels_ |
Protected Attributes inherited from filters::FilterBase< T > | |
bool | configured_ |
std::string | filter_name_ |
std::string | filter_type_ |
string_map_t | params_ |
Definition at line 53 of file kalman_filter.h.
iirob_filters::MultiChannelKalmanFilter< T >::MultiChannelKalmanFilter | ( | ) |
Definition at line 122 of file kalman_filter.h.
iirob_filters::MultiChannelKalmanFilter< T >::~MultiChannelKalmanFilter | ( | ) |
Definition at line 383 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::computePrediction | ( | std::vector< T > & | data_out | ) |
Definition at line 387 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::computePrediction | ( | std::vector< T > & | data_out, |
const double & | delta_t | ||
) |
Definition at line 403 of file kalman_filter.h.
|
virtual |
Implements filters::MultiChannelFilterBase< T >.
Definition at line 176 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::configure | ( | const std::vector< T > & | init_state_vector, |
const std::string | param_namespace = "" |
||
) |
Definition at line 162 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::configure | ( | const std::string & | param_namespace | ) |
Definition at line 181 of file kalman_filter.h.
|
private |
Definition at line 110 of file kalman_filter.h.
|
private |
Definition at line 128 of file kalman_filter.h.
|
private |
Definition at line 151 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::getCurrentState | ( | std::vector< T > & | data_out | ) |
Definition at line 543 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::getErrorCovarianceMatrix | ( | Eigen::MatrixXd & | data_out | ) |
Definition at line 480 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::getGatingMatrix | ( | Eigen::MatrixXd & | data_out | ) |
Definition at line 472 of file kalman_filter.h.
|
private |
Definition at line 212 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::isInitializated | ( | ) |
Definition at line 145 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::likelihood | ( | const std::vector< T > & | data_in, |
double & | data_out | ||
) |
Definition at line 554 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::predict | ( | std::vector< T > & | data_out | ) |
Definition at line 429 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::resetErrorCovAndState | ( | ) |
Definition at line 587 of file kalman_filter.h.
|
virtual |
Implements filters::MultiChannelFilterBase< T >.
Definition at line 445 of file kalman_filter.h.
bool iirob_filters::MultiChannelKalmanFilter< T >::update | ( | const std::vector< T > & | data_in, |
std::vector< T > & | data_out, | ||
const double & | delta_t, | ||
bool | update_Q_matrix = false , |
||
const Eigen::MatrixXd & | R_loc = Eigen::MatrixXd::Zero(1,1) |
||
) |
Definition at line 488 of file kalman_filter.h.
|
private |
Definition at line 75 of file kalman_filter.h.
|
private |
Definition at line 75 of file kalman_filter.h.
|
private |
Definition at line 75 of file kalman_filter.h.
|
private |
Definition at line 97 of file kalman_filter.h.
|
private |
Definition at line 81 of file kalman_filter.h.
|
private |
Definition at line 75 of file kalman_filter.h.
|
private |
Definition at line 90 of file kalman_filter.h.
|
private |
Definition at line 84 of file kalman_filter.h.
|
private |
Definition at line 106 of file kalman_filter.h.
|
private |
Definition at line 75 of file kalman_filter.h.
|
private |
Definition at line 78 of file kalman_filter.h.
|
private |
Definition at line 78 of file kalman_filter.h.
|
private |
Definition at line 95 of file kalman_filter.h.
|
private |
Definition at line 75 of file kalman_filter.h.
|
private |
Definition at line 75 of file kalman_filter.h.
|
private |
Definition at line 75 of file kalman_filter.h.
|
private |
Definition at line 75 of file kalman_filter.h.
|
private |
Definition at line 75 of file kalman_filter.h.
|
private |
Definition at line 87 of file kalman_filter.h.
|
private |
Definition at line 75 of file kalman_filter.h.
|
private |
Definition at line 93 of file kalman_filter.h.
|
private |
Definition at line 93 of file kalman_filter.h.