Public Types | Public Member Functions | List of all members
simulated2D::inequality_constraints::MinDistanceConstraint< POSE, POINT > Struct Template Reference

#include <simulated2DConstraints.h>

Inheritance diagram for simulated2D::inequality_constraints::MinDistanceConstraint< POSE, POINT >:
Inheritance graph
[legend]

Public Types

typedef BoundingConstraint2< POSE, POINT > Base
 Base class for factor. More...
 
typedef POINT Point
 Type of point variable constrained. More...
 
typedef POSE Pose
 Type of pose variable constrained. More...
 
typedef MinDistanceConstraint< POSE, POINT > This
 This class for factor. More...
 
- Public Types inherited from gtsam::BoundingConstraint2< POSE, POINT >
typedef NoiseModelFactorN< POSE, POINT > Base
 
typedef std::shared_ptr< BoundingConstraint2< POSE, POINT > > shared_ptr
 
typedef POSE X1
 
typedef POINT X2
 
- Public Types inherited from gtsam::NoiseModelFactorN< POSE, POINT >
enum  
 N is the number of variables (N-way factor) More...
 
using ValueType = typename std::tuple_element< I - 1, std::tuple< ValueTypes... > >::type
 
- Public Types inherited from gtsam::NoiseModelFactor
typedef std::shared_ptr< Thisshared_ptr
 
- Public Types inherited from gtsam::NonlinearFactor
typedef std::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...
 

Public Member Functions

gtsam::NonlinearFactor::shared_ptr clone () const override
 
 MinDistanceConstraint (Key key1, Key key2, double range_bound, double mu=1000.0)
 
double value (const Pose &x1, const Point &x2, OptionalMatrixType H1=OptionalNone, OptionalMatrixType H2=OptionalNone) const override
 
 ~MinDistanceConstraint () override
 
- Public Member Functions inherited from gtsam::BoundingConstraint2< POSE, POINT >
bool active (const Values &c) const override
 
 BoundingConstraint2 (Key key1, Key key2, double threshold, bool isGreaterThan, double mu=1000.0)
 flag for greater/less than More...
 
Vector evaluateError (const X1 &x1, const X2 &x2, OptionalMatrixType H1, OptionalMatrixType H2) const override
 
bool isGreaterThan () const
 
double threshold () const
 
 ~BoundingConstraint2 () override
 
- Public Member Functions inherited from gtsam::NoiseModelFactorN< POSE, POINT >
Key key () const
 
 ~NoiseModelFactorN () override
 
 NoiseModelFactorN ()
 Default Constructor for I/O. More...
 
 NoiseModelFactorN (const SharedNoiseModel &noiseModel, KeyType< ValueTypes >... keys)
 
 NoiseModelFactorN (const SharedNoiseModel &noiseModel, CONTAINER keys)
 
Vector unwhitenedError (const Values &x, OptionalMatrixVecType H=nullptr) const override
 
virtual Vector evaluateError (const ValueTypes &... x, OptionalMatrixTypeT< ValueTypes >... H) const=0
 
Vector evaluateError (const ValueTypes &... x, MatrixTypeT< ValueTypes > &... H) const
 
Vector evaluateError (const ValueTypes &... x) const
 
AreAllMatrixRefs< Vector, OptionalJacArgs... > evaluateError (const ValueTypes &... x, OptionalJacArgs &&... H) const
 
AreAllMatrixPtrs< Vector, OptionalJacArgs... > evaluateError (const ValueTypes &... x, OptionalJacArgs &&... H) const
 
Key key1 () const
 
Key key2 () const
 
Key key3 () const
 
Key key4 () const
 
Key key5 () const
 
Key key6 () const
 
- 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
 
std::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
 
Vector unwhitenedError (const Values &x, std::vector< Matrix > &H) 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)
 
double error (const HybridValues &c) const override
 
virtual shared_ptr rekey (const std::map< Key, Key > &rekey_mapping) const
 
virtual shared_ptr rekey (const KeyVector &new_keys) const
 
virtual bool sendable () const
 
- Public Member Functions inherited from gtsam::Factor
virtual ~Factor ()=default
 Default destructor. More...
 
bool empty () const
 Whether the factor is empty (involves zero variables). 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...
 
bool equals (const This &other, double tol=1e-9) const
 check equality More...
 
KeyVectorkeys ()
 
iterator begin ()
 
iterator end ()
 

Additional Inherited Members

- Public Attributes inherited from gtsam::BoundingConstraint2< POSE, POINT >
bool isGreaterThan_
 
double threshold_
 
- Protected Types inherited from gtsam::NoiseModelFactorN< POSE, POINT >
using Base = NoiseModelFactor
 
using KeyType = Key
 
using MatrixTypeT = Matrix
 
using OptionalMatrixTypeT = Matrix *
 
using This = NoiseModelFactorN< ValueTypes... >
 
using IsConvertible = typename std::enable_if< std::is_convertible< From, To >::value, void >::type
 
using IndexIsValid = typename std::enable_if<(I >=1) &&(I<=N), void >::type
 
using ContainerElementType = typename std::decay< decltype(*std::declval< Container >().begin())>::type
 
using IsContainerOfKeys = IsConvertible< ContainerElementType< Container >, Key >
 
using AreAllMatrixRefs = std::enable_if_t<(... &&std::is_convertible< Args, Matrix &>::value), Ret >
 
using IsMatrixPointer = std::is_same< typename std::decay_t< Arg >, Matrix *>
 
using IsNullpointer = std::is_same< typename std::decay_t< Arg >, std::nullptr_t >
 
using AreAllMatrixPtrs = std::enable_if_t<(... &&(IsMatrixPointer< Args >::value||IsNullpointer< Args >::value)), Ret >
 
- 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)
 
- 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

template<class POSE, class POINT>
struct simulated2D::inequality_constraints::MinDistanceConstraint< POSE, POINT >

Binary inequality constraint forcing a minimum range NOTE: this is not a convex function! Be careful with initialization.

Template Parameters
POSEis the type of the pose value constrained
POINTis the type of the point value constrained

Definition at line 172 of file simulated2DConstraints.h.

Member Typedef Documentation

◆ Base

template<class POSE , class POINT >
typedef BoundingConstraint2<POSE, POINT> simulated2D::inequality_constraints::MinDistanceConstraint< POSE, POINT >::Base

Base class for factor.

Definition at line 173 of file simulated2DConstraints.h.

◆ Point

template<class POSE , class POINT >
typedef POINT simulated2D::inequality_constraints::MinDistanceConstraint< POSE, POINT >::Point

Type of point variable constrained.

Definition at line 176 of file simulated2DConstraints.h.

◆ Pose

template<class POSE , class POINT >
typedef POSE simulated2D::inequality_constraints::MinDistanceConstraint< POSE, POINT >::Pose

Type of pose variable constrained.

Definition at line 175 of file simulated2DConstraints.h.

◆ This

template<class POSE , class POINT >
typedef MinDistanceConstraint<POSE, POINT> simulated2D::inequality_constraints::MinDistanceConstraint< POSE, POINT >::This

This class for factor.

Definition at line 174 of file simulated2DConstraints.h.

Constructor & Destructor Documentation

◆ ~MinDistanceConstraint()

template<class POSE , class POINT >
simulated2D::inequality_constraints::MinDistanceConstraint< POSE, POINT >::~MinDistanceConstraint ( )
inlineoverride

Definition at line 178 of file simulated2DConstraints.h.

◆ MinDistanceConstraint()

template<class POSE , class POINT >
simulated2D::inequality_constraints::MinDistanceConstraint< POSE, POINT >::MinDistanceConstraint ( Key  key1,
Key  key2,
double  range_bound,
double  mu = 1000.0 
)
inline

Primary constructor for factor

Parameters
key1is the first variable key
key2is the second variable key
range_boundis the minimum range allowed between the variables
muis the gain for the penalty function

Definition at line 192 of file simulated2DConstraints.h.

Member Function Documentation

◆ clone()

template<class POSE , class POINT >
gtsam::NonlinearFactor::shared_ptr simulated2D::inequality_constraints::MinDistanceConstraint< POSE, POINT >::clone ( ) const
inlineoverridevirtual
Returns
a deep copy of this factor

Reimplemented from gtsam::NonlinearFactor.

Definition at line 181 of file simulated2DConstraints.h.

◆ value()

template<class POSE , class POINT >
double simulated2D::inequality_constraints::MinDistanceConstraint< POSE, POINT >::value ( const Pose x1,
const Point x2,
OptionalMatrixType  H1 = OptionalNone,
OptionalMatrixType  H2 = OptionalNone 
) const
inlineoverridevirtual

computes the range with derivatives

Parameters
x1is the first variable value
x2is the second variable value
H1is an optional Jacobian in x1
H2is an optional Jacobian in x2
Returns
the distance between the variables

Implements gtsam::BoundingConstraint2< POSE, POINT >.

Definition at line 204 of file simulated2DConstraints.h.


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


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:47:29