30 #include <Eigen/Dense>
60 CpiBase(
double sigma_w,
double sigma_wb,
double sigma_a,
double sigma_ab,
bool imu_avg_ =
false) {
62 Q_c.block(0, 0, 3, 3) = std::pow(sigma_w, 2) *
eye3;
63 Q_c.block(3, 3, 3, 3) = std::pow(sigma_wb, 2) *
eye3;
64 Q_c.block(6, 6, 3, 3) = std::pow(sigma_a, 2) *
eye3;
65 Q_c.block(9, 9, 3, 3) = std::pow(sigma_ab, 2) *
eye3;
89 Eigen::Matrix<double, 4, 1> q_k_lin_ = Eigen::Matrix<double, 4, 1>::Zero(),
90 Eigen::Matrix<double, 3, 1> grav_ = Eigen::Matrix<double, 3, 1>::Zero()) {
109 virtual void feed_IMU(
double t_0,
double t_1, Eigen::Matrix<double, 3, 1> w_m_0, Eigen::Matrix<double, 3, 1> a_m_0,
110 Eigen::Matrix<double, 3, 1> w_m_1 = Eigen::Matrix<double, 3, 1>::Zero(),
111 Eigen::Matrix<double, 3, 1> a_m_1 = Eigen::Matrix<double, 3, 1>::Zero()) = 0;
120 Eigen::Matrix<double, 3, 1>
alpha_tau = Eigen::Matrix<double, 3, 1>::Zero();
121 Eigen::Matrix<double, 3, 1>
beta_tau = Eigen::Matrix<double, 3, 1>::Zero();
123 Eigen::Matrix<double, 3, 3>
R_k2tau = Eigen::Matrix<double, 3, 3>::Identity();
126 Eigen::Matrix<double, 3, 3>
J_q = Eigen::Matrix<double, 3, 3>::Zero();
127 Eigen::Matrix<double, 3, 3>
J_a = Eigen::Matrix<double, 3, 3>::Zero();
128 Eigen::Matrix<double, 3, 3>
J_b = Eigen::Matrix<double, 3, 3>::Zero();
129 Eigen::Matrix<double, 3, 3>
H_a = Eigen::Matrix<double, 3, 3>::Zero();
130 Eigen::Matrix<double, 3, 3>
H_b = Eigen::Matrix<double, 3, 3>::Zero();
138 Eigen::Matrix<double, 3, 1>
grav = Eigen::Matrix<double, 3, 1>::Zero();
141 Eigen::Matrix<double, 12, 12>
Q_c = Eigen::Matrix<double, 12, 12>::Zero();
144 Eigen::Matrix<double, 15, 15>
P_meas = Eigen::Matrix<double, 15, 15>::Zero();
151 Eigen::Matrix<double, 3, 3>
eye3 = Eigen::Matrix<double, 3, 3>::Identity();
154 Eigen::Matrix<double, 3, 1>
e_1;
155 Eigen::Matrix<double, 3, 1>
e_2;
156 Eigen::Matrix<double, 3, 1>
e_3;
159 Eigen::Matrix<double, 3, 3>
e_1x;
160 Eigen::Matrix<double, 3, 3>
e_2x;
161 Eigen::Matrix<double, 3, 3>
e_3x;