30 #ifdef GTSAM_TANGENT_PREINTEGRATION 67 :
public PreintegrationType {
96 const std::shared_ptr<Params>&
p,
100 : PreintegrationType(p, biasHat), preintMeasCov_(preintMeasCov) {}
109 const PreintegrationType&
base,
111 : PreintegrationType(base), preintMeasCov_(preintMeasCov) {}
122 void resetIntegration()
override;
130 void resetIntegration(
const gtsam::Matrix6& Q_init);
133 Params&
p()
const {
return *std::static_pointer_cast<Params>(this->p_); }
146 const std::string&
s =
"Preintegrated Measurements:")
const override;
149 double tol = 1
e-9)
const;
167 const double dt)
override;
172 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION 173 friend class boost::serialization::access; 175 template <
class ARCHIVE>
176 void serialize(ARCHIVE& ar,
const unsigned int ) {
177 namespace bs = ::boost::serialization;
178 ar& BOOST_SERIALIZATION_BASE_OBJECT_NVP(PreintegrationType);
179 ar& BOOST_SERIALIZATION_NVP(preintMeasCov_);
207 imuBias::ConstantBias, imuBias::ConstantBias> {
219 using Base::evaluateError;
222 #if !defined(_MSC_VER) && __GNUC__ == 4 && __GNUC_MINOR__ > 5 223 typedef typename std::shared_ptr<CombinedImuFactor>
shared_ptr;
252 GTSAM_EXPORT
friend std::ostream&
operator<<(std::ostream&
os,
262 double tol = 1
e-9)
const override;
273 Vector evaluateError(
const Pose3& pose_i,
const Vector3& vel_i,
275 const Pose3& pose_j,
const Vector3& vel_j,
276 const imuBias::ConstantBias& bias_i,
277 const imuBias::ConstantBias& bias_j,
284 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION 286 friend class boost::serialization::access;
287 template <
class ARCHIVE>
288 void serialize(ARCHIVE& ar,
const unsigned int ) {
290 ar& boost::serialization::make_nvp(
291 "NoiseModelFactor6", boost::serialization::base_object<Base>(*
this));
292 ar& BOOST_SERIALIZATION_NVP(_PIM_);
303 :
public Testable<PreintegrationCombinedParams> {};
307 :
public Testable<PreintegratedCombinedMeasurements> {};
void print(const Matrix &A, const string &s, ostream &stream)
PreintegrationCombinedParams Params
EIGEN_DEVICE_FUNC Derived & setZero(Index size)
std::ostream & operator<<(std::ostream &os, const Dih6 &m)
std::shared_ptr< CombinedImuFactor > shared_ptr
std::string serialize(const T &input)
serializes to a string
Params & p() const
const reference to params, shadows definition in base class
PreintegratedCombinedMeasurements()
Default constructor only for serialization and wrappers.
const PreintegratedCombinedMeasurements & preintegratedMeasurements() const
static const KeyFormatter DefaultKeyFormatter
Matrix * OptionalMatrixType
ManifoldPreintegration PreintegrationType
~CombinedImuFactor() override
~PreintegratedCombinedMeasurements() override
Virtual destructor.
Array< double, 1, 3 > e(1./3., 0.5, 2.)
static const Vector3 measuredAcc
std::shared_ptr< Factor > shared_ptr
A shared_ptr to this class.
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
Matrix preintMeasCov() const
PreintegratedCombinedMeasurements _PIM_
static const Vector3 measuredOmega(w, 0, 0)
ofstream os("timeSchurFactors.csv")
Eigen::Matrix< double, 15, 15 > preintMeasCov_
std::shared_ptr< This > shared_ptr
NoiseModelFactorN< Pose3, Vector3, Pose3, Vector3, imuBias::ConstantBias, imuBias::ConstantBias > Base
#define GTSAM_MAKE_ALIGNED_OPERATOR_NEW
Annotation indicating that a class derives from another given type.
PreintegratedCombinedMeasurements(const PreintegrationType &base, const Eigen::Matrix< double, 15, 15 > &preintMeasCov)
PreintegratedCombinedMeasurements(const std::shared_ptr< Params > &p, const imuBias::ConstantBias &biasHat=imuBias::ConstantBias(), const Eigen::Matrix< double, 15, 15 > &preintMeasCov=Eigen::Matrix< double, 15, 15 >::Zero())
std::uint64_t Key
Integer nonlinear key type.