@@ -135,18 +135,10 @@ class GTSAM_EXPORT PreintegratedRotation {
135
135
136
136
// / @name Access instance variables
137
137
// / @{
138
- const std::shared_ptr<Params>& params () const {
139
- return p_;
140
- }
141
- const double & deltaTij () const {
142
- return deltaTij_;
143
- }
144
- const Rot3& deltaRij () const {
145
- return deltaRij_;
146
- }
147
- const Matrix3& delRdelBiasOmega () const {
148
- return delRdelBiasOmega_;
149
- }
138
+ const std::shared_ptr<Params>& params () const { return p_; }
139
+ const double & deltaTij () const { return deltaTij_; }
140
+ const Rot3& deltaRij () const { return deltaRij_; }
141
+ const Matrix3& delRdelBiasOmega () const { return delRdelBiasOmega_; }
150
142
// / @}
151
143
152
144
// / @name Testable
@@ -158,6 +150,35 @@ class GTSAM_EXPORT PreintegratedRotation {
158
150
// / @name Main functionality
159
151
// / @{
160
152
153
+ /* *
154
+ * @brief Calculate an incremental rotation given the gyro measurement and a
155
+ * time interval, and update both deltaTij_ and deltaRij_.
156
+ * @param measuredOmega The measured angular velocity (as given by the sensor)
157
+ * @param bias The biasHat estimate
158
+ * @param deltaT The time interval
159
+ * @param F Jacobian of internal compose, used in AhrsFactor.
160
+ */
161
+ void integrateGyroMeasurement (const Vector3& measuredOmega,
162
+ const Vector3& biasHat, double deltaT,
163
+ OptionalJacobian<3 , 3 > F = {});
164
+
165
+ /* *
166
+ * @brief Return a bias corrected version of the integrated rotation.
167
+ * @param biasOmegaIncr An increment with respect to biasHat used above.
168
+ * @param H Jacobian of the correction w.r.t. the bias increment.
169
+ * @note The *key* functionality of this class used in optimizing the bias.
170
+ */
171
+ Rot3 biascorrectedDeltaRij (const Vector3& biasOmegaIncr,
172
+ OptionalJacobian<3 , 3 > H = {}) const ;
173
+
174
+ // / Integrate coriolis correction in body frame rot_i
175
+ Vector3 integrateCoriolis (const Rot3& rot_i) const ;
176
+
177
+ // / @}
178
+
179
+ // / @name Internal, exposed for testing only
180
+ // / @{
181
+
161
182
/* *
162
183
* @brief Function object for incremental rotation.
163
184
* @param measuredOmega The measured angular velocity (as given by the sensor)
@@ -179,25 +200,6 @@ class GTSAM_EXPORT PreintegratedRotation {
179
200
OptionalJacobian<3 , 3 > H_bias = {}) const ;
180
201
};
181
202
182
- /* *
183
- * @brief Calculate an incremental rotation given the gyro measurement and a
184
- * time interval, and update both deltaTij_ and deltaRij_.
185
- * @param measuredOmega The measured angular velocity (as given by the sensor)
186
- * @param bias The bias estimate
187
- * @param deltaT The time interval
188
- * @param F Jacobian of internal compose, used in AhrsFactor.
189
- */
190
- void integrateGyroMeasurement (const Vector3& measuredOmega,
191
- const Vector3& bias, double deltaT,
192
- OptionalJacobian<3 , 3 > F = {});
193
-
194
- // / Return a bias corrected version of the integrated rotation, with optional Jacobian
195
- Rot3 biascorrectedDeltaRij (const Vector3& biasOmegaIncr,
196
- OptionalJacobian<3 , 3 > H = {}) const ;
197
-
198
- // / Integrate coriolis correction in body frame rot_i
199
- Vector3 integrateCoriolis (const Rot3& rot_i) const ;
200
-
201
203
// / @}
202
204
203
205
// / @name Deprecated API
@@ -215,9 +217,10 @@ class GTSAM_EXPORT PreintegratedRotation {
215
217
return incrR;
216
218
}
217
219
218
- // / @deprecated: returned hard-to-understand Jacobian D_incrR_integratedOmega.
220
+ // / @deprecated: use integrateGyroMeasurement from now on
221
+ // / @note this returned hard-to-understand Jacobian D_incrR_integratedOmega.
219
222
void GTSAM_DEPRECATED integrateMeasurement (
220
- const Vector3& measuredOmega, const Vector3& bias , double deltaT,
223
+ const Vector3& measuredOmega, const Vector3& biasHat , double deltaT,
221
224
OptionalJacobian<3 , 3 > D_incrR_integratedOmega, OptionalJacobian<3 , 3 > F);
222
225
223
226
#endif
0 commit comments