*/
Eigen::EulerAnglesZYXd euler(void);
+ /** @brief Get covariance estimation
+ @return covariance matrix
+ */
+ Eigen::MatrixXd covariance(void);
+
// Force 16-byte aligment of fixed-size vectorizable Eigen types,
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
};
P_=F(u)*P*F(u).transpose()+Pw_;
// State prediction
- x_=f(u); // Should be the last operation becuse changes x_
+ x_=f(u); // Should be the last operation because it changes x_
}
Eigen::Quaterniond Ekf::quaternion(void)
return euler;
}
+Eigen::MatrixXd Ekf::covariance(void)
+{
+ return P_;
+}
+
+
Eigen::VectorXd Ekf::f(const Eigen::Vector3d u)
{
Eigen::MatrixXd Xi(4,3);