21 #include <gtsam/base/VectorSpace.h> 23 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION 24 #include <boost/serialization/nvp.hpp> 39 static const size_t dimension = 6;
45 biasAcc_(0.0, 0.0, 0.0), biasGyro_(0.0, 0.0, 0.0) {
48 ConstantBias(
const Vector3& biasAcc,
const Vector3& biasGyro) :
49 biasAcc_(biasAcc), biasGyro_(biasGyro) {
53 biasAcc_(v.head<3>()), biasGyro_(v.tail<3>()) {
61 v << biasAcc_, biasGyro_;
79 if (H1) (*H1) << -I_3x3, Z_3x3;
80 if (H2) (*H2) << I_3x3;
81 return measurement - biasAcc_;
88 if (H1) (*H1) << Z_3x3, -I_3x3;
89 if (H2) (*H2) << I_3x3;
90 return measurement - biasGyro_;
97 GTSAM_EXPORT
friend std::ostream& operator<<(std::ostream& os,
101 void print(
const std::string& s =
"")
const;
125 return ConstantBias(biasAcc_ + v.head<3>(), biasGyro_ + v.tail<3>());
130 return ConstantBias(biasAcc_ + b.biasAcc_, biasGyro_ + b.biasGyro_);
135 return ConstantBias(biasAcc_ - b.biasAcc_, biasGyro_ - b.biasGyro_);
145 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION 147 friend class boost::serialization::access;
148 template<
class ARCHIVE>
149 void serialize(ARCHIVE & ar,
const unsigned int ) {
150 ar & BOOST_SERIALIZATION_NVP(biasAcc_);
151 ar & BOOST_SERIALIZATION_NVP(biasGyro_);
165 imuBias::ConstantBias> {
Vector3 correctGyroscope(const Vector3 &measurement, OptionalJacobian< 3, 6 > H1={}, OptionalJacobian< 3, 3 > H2={}) const
Definition: ImuBias.h:85
ConstantBias operator-(const ConstantBias &b) const
Definition: ImuBias.h:134
VectorSpace provides both Testable and VectorSpaceTraits.
Definition: VectorSpace.h:207
std::string serialize(const T &input)
serializes to a string
Definition: serialization.h:113
bool equals(const ConstantBias &expected, double tol=1e-5) const
Definition: ImuBias.h:104
ConstantBias operator+(const Vector6 &v) const
Definition: ImuBias.h:124
static ConstantBias Identity()
Definition: ImuBias.h:114
Vector6 vector() const
Definition: ImuBias.h:59
const Vector3 & accelerometer() const
Definition: ImuBias.h:66
ConstantBias operator+(const ConstantBias &b) const
Definition: ImuBias.h:129
ConstantBias operator-() const
Definition: ImuBias.h:119
Vector3 correctAccelerometer(const Vector3 &measurement, OptionalJacobian< 3, 6 > H1={}, OptionalJacobian< 3, 3 > H2={}) const
Definition: ImuBias.h:76
GTSAM_EXPORT void print(const Matrix &A, const std::string &s, std::ostream &stream)
bool equal_with_abs_tol(const Eigen::DenseBase< MATRIX > &A, const Eigen::DenseBase< MATRIX > &B, double tol=1e-9)
Definition: Matrix.h:80
Definition: chartTesting.h:28
Definition: OptionalJacobian.h:38
const Vector3 & gyroscope() const
Definition: ImuBias.h:71
#define GTSAM_MAKE_ALIGNED_OPERATOR_NEW
Definition: types.h:284
Special class for optional Jacobian arguments.