25 using namespace gtsam;
28 #define TEST(TITLE,STATEMENT) \ 30 for(int i = 0; i < n; i++) \ 42 return Rot2::fromCosSin(r1.
c() * r2.
c() + r1.
s() * r2.
s(), -r1.
s() * r2.
c() + r1.
c() * r2.
s());
84 if (H1) *H1 = -Matrix1::Identity();
85 if (H2) *H2 = Matrix1::Identity();
94 cout <<
"NOTE: Times are reported for " << n <<
" calls" << endl;
101 TEST(Rot2_Logmap, Rot2::Logmap(
R2));
Rot2 Rot2betweenOptimized(const Rot2 &r1, const Rot2 &r2)
Vector Rot2BetweenFactorEvaluateErrorDefault(const Rot2 &measured, const Rot2 &p1, const Rot2 &p2, OptionalJacobian< 1, 1 > H1, OptionalJacobian< 1, 1 > H2)
Rot2 R(Rot2::fromAngle(0.1))
Vector Rot2BetweenFactorEvaluateErrorOptimizedBetweenFixed(const Rot2 &measured, const Rot2 &p1, const Rot2 &p2, OptionalJacobian< 1, 1 > H1, OptionalJacobian< 1, 1 > H2)
Pose2_ Expmap(const Vector3_ &xi)
#define TEST(TITLE, STATEMENT)
Eigen::Matrix< double, 1, 1 > Matrix1
TangentVector localCoordinates(const Class &g) const
localCoordinates as required by manifold concept: finds tangent vector between *this and g ...
Vector Rot2BetweenFactorEvaluateErrorOptimizedBetweenNoeye(const Rot2 &measured, const Rot2 &p1, const Rot2 &p2, OptionalJacobian< 1, 1 > H1, OptionalJacobian< 1, 1 > H2)
Array< int, Dynamic, 1 > v
Class retract(const TangentVector &v) const
retract as required by manifold concept: applies v at *this
Class between(const Class &g) const
Special class for optional Jacobian arguments.
The matrix class, also used for vectors and row-vectors.
Vector Rot2BetweenFactorEvaluateErrorOptimizedBetween(const Rot2 &measured, const Rot2 &p1, const Rot2 &p2, OptionalJacobian< 1, 1 > H1, OptionalJacobian< 1, 1 > H2)
Rot2 Rot2betweenDefault(const Rot2 &r1, const Rot2 &r2)