11#include <gtsam_unstable/dllexport.h>
16class GTSAM_UNSTABLE_EXPORT
AHRS {
28 typedef Eigen::Matrix<double,12,1> Variances;
40 typedef Eigen::Matrix<double,3,Eigen::Dynamic> Vector3s;
41 static Matrix3 Cov(
const Vector3s& m);
49 AHRS(
const Matrix& stationaryU,
const Matrix& stationaryF,
double g_e,
bool flat=
false);
51 std::pair<Mechanization_bRn2, KalmanFilter::State> initialize(
double g_e);
53 std::pair<Mechanization_bRn2, KalmanFilter::State> integrate(
55 const Vector& u,
double dt);
58 const Vector& f,
const Vector& u,
double ge)
const;
67 std::pair<Mechanization_bRn2, KalmanFilter::State>
aid(
69 const Vector& f,
bool Farrell=0)
const;
71 std::pair<Mechanization_bRn2, KalmanFilter::State> aidGeneral(
73 const Vector& f,
const Vector& f_expected,
const Rot3& R_previous)
const;
76 void print(
const std::string& s =
"")
const;
80 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
Simple linear Kalman filter.
Global functions in a separate testing namespace.
Definition chartTesting.h:28
Rot3 is a 3D rotation represented as a rotation matrix if the preprocessor symbol GTSAM_USE_QUATERNIO...
Definition Rot3.h:58
Kalman Filter class.
Definition KalmanFilter.h:41
GaussianDensity::shared_ptr State
The Kalman filter state is simply a GaussianDensity.
Definition KalmanFilter.h:56
AHRS(const Matrix &stationaryU, const Matrix &stationaryF, double g_e, bool flat=false)
AHRS constructor.
Definition AHRS.cpp:24
std::pair< Mechanization_bRn2, KalmanFilter::State > aid(const Mechanization_bRn2 &mech, KalmanFilter::State state, const Vector &f, bool Farrell=0) const
Aid the AHRS with an accelerometer reading, typically called when isAidingAvailable == true.
Definition AHRS.cpp:159
void print(const std::string &s="") const
print
Definition AHRS.cpp:236
Definition Mechanization_bRn2.h:17