Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
gtsam::MagFactor Class Reference

#include <MagFactor.h>

Inheritance diagram for gtsam::MagFactor:
Inheritance graph
[legend]

Public Member Functions

NonlinearFactor::shared_ptr clone () const override
 
Vector evaluateError (const Rot2 &nRb, boost::optional< Matrix & > H=boost::none) const override
 vector of errors More...
 
 MagFactor (Key key, const Point3 &measured, double scale, const Unit3 &direction, const Point3 &bias, const SharedNoiseModel &model)
 
- Public Member Functions inherited from gtsam::NoiseModelFactor1< Rot2 >
 NoiseModelFactor1 ()
 
 NoiseModelFactor1 (const SharedNoiseModel &noiseModel, Key key1)
 
 ~NoiseModelFactor1 () override
 
Key key () const
 
Vector unwhitenedError (const Values &x, boost::optional< std::vector< Matrix > & > H=boost::none) const override
 
- Public Member Functions inherited from gtsam::NoiseModelFactor
shared_ptr cloneWithNewNoiseModel (const SharedNoiseModel newNoise) const
 
size_t dim () const override
 
bool equals (const NonlinearFactor &f, double tol=1e-9) const override
 
double error (const Values &c) const override
 
boost::shared_ptr< GaussianFactorlinearize (const Values &x) const override
 
const SharedNoiseModelnoiseModel () const
 access to the noise model More...
 
 NoiseModelFactor ()
 
template<typename CONTAINER >
 NoiseModelFactor (const SharedNoiseModel &noiseModel, const CONTAINER &keys)
 
void print (const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const override
 
Vector unweightedWhitenedError (const Values &c) const
 
double weight (const Values &c) const
 
Vector whitenedError (const Values &c) const
 
 ~NoiseModelFactor () override
 
- Public Member Functions inherited from gtsam::NonlinearFactor
 NonlinearFactor ()
 
template<typename CONTAINER >
 NonlinearFactor (const CONTAINER &keys)
 
virtual ~NonlinearFactor ()
 
virtual bool active (const Values &) const
 
shared_ptr rekey (const std::map< Key, Key > &rekey_mapping) const
 
shared_ptr rekey (const KeyVector &new_keys) const
 
- Public Member Functions inherited from gtsam::Factor
virtual ~Factor ()=default
 Default destructor. More...
 
Key front () const
 First key. More...
 
Key back () const
 Last key. More...
 
const_iterator find (Key key) const
 find More...
 
const KeyVectorkeys () const
 Access the factor's involved variable keys. More...
 
const_iterator begin () const
 
const_iterator end () const
 
size_t size () const
 
virtual void printKeys (const std::string &s="Factor", const KeyFormatter &formatter=DefaultKeyFormatter) const
 print only keys More...
 
KeyVectorkeys ()
 
iterator begin ()
 
iterator end ()
 

Static Public Member Functions

static Point3 unrotate (const Rot2 &R, const Point3 &p, boost::optional< Matrix & > HR=boost::none)
 

Private Attributes

const Point3 bias_
 bias More...
 
const Point3 measured_
 The measured magnetometer values. More...
 
const Point3 nM_
 Local magnetic field (mag output units) More...
 

Additional Inherited Members

- Public Types inherited from gtsam::NoiseModelFactor1< Rot2 >
typedef Rot2 X
 
- Public Types inherited from gtsam::NoiseModelFactor
typedef boost::shared_ptr< Thisshared_ptr
 
- Public Types inherited from gtsam::NonlinearFactor
typedef boost::shared_ptr< Thisshared_ptr
 
- Public Types inherited from gtsam::Factor
typedef KeyVector::const_iterator const_iterator
 Const iterator over keys. More...
 
typedef KeyVector::iterator iterator
 Iterator over keys. More...
 
- Protected Types inherited from gtsam::NoiseModelFactor1< Rot2 >
typedef NoiseModelFactor Base
 
typedef NoiseModelFactor1< Rot2This
 
- Protected Types inherited from gtsam::NoiseModelFactor
typedef NonlinearFactor Base
 
typedef NoiseModelFactor This
 
- Protected Types inherited from gtsam::NonlinearFactor
typedef Factor Base
 
typedef NonlinearFactor This
 
- Protected Member Functions inherited from gtsam::NoiseModelFactor
 NoiseModelFactor (const SharedNoiseModel &noiseModel)
 
- Protected Member Functions inherited from gtsam::Factor
 Factor ()
 
template<typename CONTAINER >
 Factor (const CONTAINER &keys)
 
template<typename ITERATOR >
 Factor (ITERATOR first, ITERATOR last)
 
bool equals (const This &other, double tol=1e-9) const
 check equality More...
 
- Static Protected Member Functions inherited from gtsam::Factor
template<typename CONTAINER >
static Factor FromKeys (const CONTAINER &keys)
 
template<typename ITERATOR >
static Factor FromIterators (ITERATOR first, ITERATOR last)
 
- Protected Attributes inherited from gtsam::NoiseModelFactor
SharedNoiseModel noiseModel_
 
- Protected Attributes inherited from gtsam::Factor
KeyVector keys_
 The keys involved in this factor. More...
 

Detailed Description

Factor to estimate rotation given magnetometer reading This version uses model measured bM = scale * bRn * direction + bias and assumes scale, direction, and the bias are given. Rotation is around negative Z axis, i.e. positive is yaw to right!

Definition at line 31 of file MagFactor.h.

Constructor & Destructor Documentation

gtsam::MagFactor::MagFactor ( Key  key,
const Point3 measured,
double  scale,
const Unit3 direction,
const Point3 bias,
const SharedNoiseModel model 
)
inline

Constructor of factor that estimates nav to body rotation bRn

Parameters
keyof the unknown rotation bRn in the factor graph
measuredmagnetometer reading, a 3-vector
scaleby which a unit vector is scaled to yield a magnetometer reading
directionof the local magnetic field, see e.g. http://www.ngdc.noaa.gov/geomag-web/#igrfwmm
biasof the magnetometer, modeled as purely additive (after scaling)
modelof the additive Gaussian noise that is assumed

Definition at line 48 of file MagFactor.h.

Member Function Documentation

NonlinearFactor::shared_ptr gtsam::MagFactor::clone ( ) const
inlineoverridevirtual
Returns
a deep copy of this factor

Reimplemented from gtsam::NonlinearFactor.

Definition at line 56 of file MagFactor.h.

Vector gtsam::MagFactor::evaluateError ( const Rot2 nRb,
boost::optional< Matrix & >  H = boost::none 
) const
inlineoverridevirtual

vector of errors

Implements gtsam::NoiseModelFactor1< Rot2 >.

Definition at line 75 of file MagFactor.h.

static Point3 gtsam::MagFactor::unrotate ( const Rot2 R,
const Point3 p,
boost::optional< Matrix & >  HR = boost::none 
)
inlinestatic

Definition at line 61 of file MagFactor.h.

Member Data Documentation

const Point3 gtsam::MagFactor::bias_
private

bias

Definition at line 35 of file MagFactor.h.

const Point3 gtsam::MagFactor::measured_
private

The measured magnetometer values.

Definition at line 33 of file MagFactor.h.

const Point3 gtsam::MagFactor::nM_
private

Local magnetic field (mag output units)

Definition at line 34 of file MagFactor.h.


The documentation for this class was generated from the following file:


gtsam
Author(s):
autogenerated on Sat May 8 2021 02:58:18