![]() |
LArSoft
v10_06_00
Liquid Argon Software toolkit - https://larsoft.org/
|
KalmanFilter3D class. More...
#include "KalmanFilter.h"
Public Member Functions | |
KalmanFilter3D (double dt, double processVariance, double measurementVariance, const Eigen::VectorXd &x) | |
Default constructor. More... | |
~KalmanFilter3D () | |
Destructor. More... | |
void | Predict () |
Uses the state transition matrix to predict the next state. More... | |
void | Update (const Eigen::VectorXd &z) |
Uses the measurement matrix to update the state estimate. More... | |
const Eigen::VectorXd & | GetState () const |
Get the current state vector. More... | |
const Eigen::VectorXd | GetPosition () const |
Get the current position vector. More... | |
const Eigen::VectorXd | GetDirection () const |
Get the current direction vector. More... | |
const Eigen::VectorXd & | GetTemporaryState () const |
Get the temporary state vector. More... | |
Private Attributes | |
double | m_dt |
Time step. More... | |
Eigen::VectorXd | m_x |
State vector (tracks position and 'velocity') More... | |
Eigen::MatrixXd | m_P |
Covariance matrix. More... | |
Eigen::MatrixXd | m_F |
State transition matrix. More... | |
Eigen::MatrixXd | m_H |
Measurement matrix. More... | |
Eigen::MatrixXd | m_R |
Measurement covariance matrix. More... | |
Eigen::MatrixXd | m_Q |
Process covariance matrix. More... | |
Eigen::VectorXd | m_xTemp |
Temporary state vector. More... | |
Eigen::MatrixXd | m_PTemp |
Temporary covariance matrix. More... | |
KalmanFilter3D class.
Definition at line 19 of file KalmanFilter.h.
lar_content::KalmanFilter3D::KalmanFilter3D | ( | double | dt, |
double | processVariance, | ||
double | measurementVariance, | ||
const Eigen::VectorXd & | x | ||
) |
Default constructor.
dt | Time step |
processVariance | Process variance |
measurementVariance | Measurement variance |
x | Initial position |
Definition at line 16 of file KalmanFilter.cc.
References m_F, m_H, m_P, m_Q, m_R, m_x, and x.
lar_content::KalmanFilter3D::~KalmanFilter3D | ( | ) |
const VectorXd lar_content::KalmanFilter3D::GetDirection | ( | ) | const |
Get the current direction vector.
Definition at line 83 of file KalmanFilter.cc.
References m_x.
const VectorXd lar_content::KalmanFilter3D::GetPosition | ( | ) | const |
Get the current position vector.
Definition at line 76 of file KalmanFilter.cc.
References m_x.
const VectorXd & lar_content::KalmanFilter3D::GetState | ( | ) | const |
Get the current state vector.
Definition at line 69 of file KalmanFilter.cc.
References m_x.
const VectorXd & lar_content::KalmanFilter3D::GetTemporaryState | ( | ) | const |
Get the temporary state vector.
Definition at line 90 of file KalmanFilter.cc.
References m_xTemp.
void lar_content::KalmanFilter3D::Predict | ( | ) |
Uses the state transition matrix to predict the next state.
Definition at line 48 of file KalmanFilter.cc.
References m_F, m_P, m_PTemp, m_Q, m_x, and m_xTemp.
void lar_content::KalmanFilter3D::Update | ( | const Eigen::VectorXd & | z | ) |
Uses the measurement matrix to update the state estimate.
z | The position to use for updating the state estimate |
Definition at line 56 of file KalmanFilter.cc.
References m_H, m_P, m_PTemp, m_R, m_x, m_xTemp, and y.
|
private |
Time step.
Definition at line 78 of file KalmanFilter.h.
|
private |
State transition matrix.
Definition at line 81 of file KalmanFilter.h.
Referenced by KalmanFilter3D(), and Predict().
|
private |
Measurement matrix.
Definition at line 82 of file KalmanFilter.h.
Referenced by KalmanFilter3D(), and Update().
|
private |
Covariance matrix.
Definition at line 80 of file KalmanFilter.h.
Referenced by KalmanFilter3D(), Predict(), and Update().
|
private |
Temporary covariance matrix.
Definition at line 86 of file KalmanFilter.h.
|
private |
Process covariance matrix.
Definition at line 84 of file KalmanFilter.h.
Referenced by KalmanFilter3D(), and Predict().
|
private |
Measurement covariance matrix.
Definition at line 83 of file KalmanFilter.h.
Referenced by KalmanFilter3D(), and Update().
|
private |
State vector (tracks position and 'velocity')
Definition at line 79 of file KalmanFilter.h.
Referenced by GetDirection(), GetPosition(), GetState(), KalmanFilter3D(), Predict(), and Update().
|
private |
Temporary state vector.
Definition at line 85 of file KalmanFilter.h.
Referenced by GetTemporaryState(), Predict(), and Update().