Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
gtsam Namespace Reference

traits More...

Namespaces

 dynamics
 
 example
 
 examples
 
 imuBias
 All bias models live in the imuBias namespace.
 
 inference
 
 initialize
 
 internal
 
 lago
 
 linear
 
 noiseModel
 All noise models live in the noiseModel namespace.
 
 parser
 
 partition
 
 serializationTestHelpers
 
 simulated3D
 
 so3
 
 symbol_shorthand
 
 testing
 
 traits
 
 treeTraversal
 
 utilities
 
 utils
 

Classes

struct  _ValuesConstKeyValuePair
 
struct  _ValuesKeyValuePair
 
class  AcceleratedPowerMethod
 Compute maximum Eigenpair with accelerated power method. More...
 
class  AcceleratingScenario
 Accelerating from an arbitrary initial state, with optional rotation. More...
 
class  ActiveSetSolver
 
class  AdaptAutoDiff
 
struct  additive_group_tag
 
class  AHRS
 
class  AHRSFactor
 
class  AlgebraicDecisionTree
 
class  AllDiff
 
class  AntiFactor
 
class  Assignment
 
class  AttitudeFactor
 
class  BatchFixedLagSmoother
 
class  BayesNet
 
class  BayesTree
 
class  BayesTreeCliqueBase
 
struct  BayesTreeCliqueData
 
struct  BayesTreeCliqueStats
 
class  BayesTreeOrphanWrapper
 
struct  Bearing
 
struct  Bearing< Pose2, T >
 
struct  Bearing< Pose3, Point3 >
 
struct  Bearing< Pose3, Pose3 >
 
struct  BearingFactor
 
struct  BearingRange
 
class  BearingRangeFactor
 
class  BearingS2
 
class  BetweenConstraint
 
class  BetweenFactor
 
class  BetweenFactorEM
 
class  BiasedGPSFactor
 
class  BinaryAllDiff
 
struct  BinaryJacobianFactor
 
class  BinaryMeasurement
 
class  BinarySumExpression
 
class  BlockJacobiPreconditioner
 
struct  BlockJacobiPreconditionerParameters
 
struct  BoundingConstraint1
 
struct  BoundingConstraint2
 
class  BTree
 
class  Cal3
 
class  Cal3_S2
 
class  Cal3_S2Stereo
 
class  Cal3Bundler
 
struct  Cal3Bundler0
 
class  Cal3DS2
 
class  Cal3DS2_Base
 
class  Cal3Fisheye
 
class  Cal3Unified
 
class  CalibratedCamera
 
struct  CameraProjectionMatrix
 
class  CameraSet
 A set of cameras, all with their own calibration. More...
 
struct  CGState
 
class  CheiralityException
 
class  CholeskyFailed
 Indicate Cholesky factorization failure. More...
 
class  ClusterTree
 
class  CombinedImuFactor
 
class  compose_key_visitor
 
class  ConcurrentBatchFilter
 
class  ConcurrentBatchSmoother
 
class  ConcurrentFilter
 
class  ConcurrentIncrementalFilter
 
class  ConcurrentIncrementalSmoother
 
class  ConcurrentMap
 
class  ConcurrentSmoother
 
class  Conditional
 
class  ConjugateGradientParameters
 
struct  const_selector
 
struct  const_selector< BASIC_TYPE, BASIC_TYPE, AS_NON_CONST, AS_CONST >
 
struct  const_selector< const BASIC_TYPE, BASIC_TYPE, AS_NON_CONST, AS_CONST >
 
class  ConstantTwistScenario
 
class  ConstantVelocityFactor
 
class  Constraint
 
struct  ConstructorTraversalData
 
class  CRefCallAddCopy
 
class  CRefCallPushBack
 
class  CSP
 
class  Cyclic
 Cyclic group of order N. More...
 
class  DecisionTree
 
class  DecisionTreeFactor
 
class  DeltaFactor
 
class  DeltaFactorBase
 
struct  DeltaImpl
 
struct  DGroundConstraint
 
struct  DHeightPrior
 
class  DirectProduct
 
class  DirectSum
 
class  DiscreteBayesNet
 
class  DiscreteBayesTree
 
class  DiscreteBayesTreeClique
 
class  DiscreteConditional
 
class  DiscreteEliminationTree
 
class  DiscreteEulerPoincareHelicopter
 
class  DiscreteFactor
 
class  DiscreteFactorGraph
 
class  DiscreteJunctionTree
 
struct  DiscreteKeys
 DiscreteKeys is a set of keys that can be assembled using the & operator. More...
 
class  DiscreteMarginals
 
class  DoglegOptimizer
 
struct  DoglegOptimizerImpl
 
class  DoglegParams
 
class  Domain
 
struct  DRollPrior
 
class  DSF
 
class  DSFBase
 
class  DSFMap
 
class  DSFVector
 
struct  Dummy
 
class  DummyFactor
 
class  DummyPreconditioner
 
struct  DummyPreconditionerParameters
 
class  DynamicValuesMismatched
 
class  EliminatableClusterTree
 
class  EliminateableFactorGraph
 
struct  EliminationData
 
struct  EliminationTraits
 
struct  EliminationTraits< DiscreteFactorGraph >
 
struct  EliminationTraits< GaussianFactorGraph >
 
struct  EliminationTraits< SymbolicFactorGraph >
 
class  EliminationTree
 
class  EqualityFactorGraph
 
struct  equals
 
struct  equals_star
 
struct  equalsVector
 
class  EquivInertialNavFactor_GlobalVel
 
class  EquivInertialNavFactor_GlobalVel_NoBias
 
class  Errors
 
class  EssentialMatrix
 
class  EssentialMatrixConstraint
 
class  EssentialMatrixFactor
 
class  EssentialMatrixFactor2
 
class  EssentialMatrixFactor3
 
class  Event
 
class  Expression
 
class  ExpressionFactor
 
class  ExpressionFactorGraph
 
class  ExpressionFactorN
 
class  ExtendedKalmanFilter
 
class  Factor
 
class  FactorGraph
 
class  FastList
 
class  FastMap
 
class  FastSet
 
struct  FixedDimension
 Give fixed size dimension of a type, fails at compile time if dynamic. More...
 
class  FixedLagSmoother
 
class  FixedVector
 
class  FrobeniusBetweenFactor
 
class  FrobeniusFactor
 
class  FrobeniusPrior
 
class  FullIMUFactor
 
class  FunctorizedFactor
 
class  FunctorizedFactor2
 
class  G_x1
 
class  GaussianBayesNet
 
class  GaussianBayesTree
 
class  GaussianBayesTreeClique
 
class  GaussianConditional
 
class  GaussianDensity
 
class  GaussianEliminationTree
 
class  GaussianFactor
 
class  GaussianFactorGraph
 
class  GaussianFactorGraphSystem
 
class  GaussianISAM
 
class  GaussianJunctionTree
 
class  GaussMarkov1stOrderFactor
 
class  GaussNewtonOptimizer
 
class  GaussNewtonParams
 
class  GeneralSFMFactor
 
class  GeneralSFMFactor2
 
class  GenericProjectionFactor
 
class  GenericStereoFactor
 
class  GenericValue
 
class  GncOptimizer
 
class  GncParams
 
class  GPSFactor
 
class  GPSFactor2
 
struct  GraphvizFormatting
 
struct  group_tag
 tag to assert a type is a group More...
 
struct  HasBearing
 
struct  HasRange
 
struct  HasTestablePrereqs
 Requirements on type to pass it to Testable template below. More...
 
class  HessianFactor
 A Gaussian factor using the canonical parameters (information form) More...
 
class  IMUFactor
 
class  ImuFactor
 
class  ImuFactor2
 
class  ImuMeasurement
 Contains data from the IMU mesaurements. More...
 
class  InconsistentEliminationRequested
 
class  IncrementalFixedLagSmoother
 
class  IndeterminantLinearSystemException
 
class  IndexPair
 Small utility class for representing a wrappable pairs of ints. More...
 
class  InequalityFactorGraph
 
class  InertialNavFactor_GlobalVelocity
 
class  InfeasibleInitialValues
 
class  InfeasibleOrUnboundedProblem
 
struct  InitializePose3
 
class  InvalidArgumentThreadsafe
 Thread-safe invalid argument exception. More...
 
class  InvalidDenseElimination
 
class  InvalidMatrixBlock
 
class  InvalidNoiseModel
 
class  InvDepthCamera3
 
class  InvDepthFactor3
 
class  InvDepthFactorVariant1
 
class  InvDepthFactorVariant2
 
class  InvDepthFactorVariant3a
 
class  InvDepthFactorVariant3b
 
class  ISAM
 
class  ISAM2
 
class  ISAM2BayesTree
 
class  ISAM2Clique
 
struct  ISAM2DoglegParams
 
struct  ISAM2GaussNewtonParams
 
class  ISAM2JunctionTree
 
struct  ISAM2Params
 
struct  ISAM2Result
 
struct  ISAM2UpdateParams
 
class  IsGroup
 
class  IsLieGroup
 
class  IsTestable
 
class  IsVectorSpace
 Vector Space concept. More...
 
class  IterativeOptimizationParameters
 
class  IterativeSolver
 
class  JacobianFactor
 
class  JacobianFactorQ
 
class  JacobianFactorQR
 
class  JacobianFactorSVD
 
class  JointMarginal
 
class  JunctionTree
 
class  KalmanFilter
 
class  KarcherMeanFactor
 
class  key_formatter
 
class  KeyInfo
 
struct  KeyInfoEntry
 
class  LabeledSymbol
 
class  LevenbergMarquardtOptimizer
 
class  LevenbergMarquardtParams
 
struct  lie_group_tag
 tag to assert a type is a Lie group More...
 
struct  LieGroup
 
struct  LieMatrix
 
struct  LieScalar
 
struct  LieVector
 
class  Line3
 
class  LinearContainerFactor
 
class  LinearCost
 
class  LinearEquality
 
class  LinearInequality
 
class  LinearizedGaussianFactor
 
class  LinearizedHessianFactor
 
class  LinearizedJacobianFactor
 
class  ListOfOneContainer
 
class  LocalOrientedPlane3Factor
 
struct  LP
 
class  LPInitSolver
 
struct  LPPolicy
 Policy for ActivetSetSolver to solve Linear Programming. More...
 
class  MagFactor
 
class  MagFactor1
 
class  MagFactor2
 
class  MagFactor3
 
struct  MakeJacobian
 : meta-function to generate Jacobian More...
 
struct  MakeOptionalJacobian
 : meta-function to generate JacobianTA optional reference Used mainly by Expressions More...
 
struct  manifold_tag
 tag to assert a type is a manifold More...
 
class  ManifoldPreintegration
 
class  MarginalizeNonleafException
 
class  Marginals
 
struct  MatrixProdFunctor
 
class  Measurement
 This is the base class for all measurement types. More...
 
class  Mechanization_bRn2
 
class  MetisIndex
 
class  MFAS
 
struct  multiplicative_group_tag
 Group operator syntax flavors. More...
 
struct  MultiplyWithInverse
 
struct  MultiplyWithInverseFunction
 
class  MultiProjectionFactor
 
class  NavState
 
struct  needs_eigen_aligned_allocator
 
struct  needs_eigen_aligned_allocator< T, void_t< typename T::_eigen_aligned_allocator_trait > >
 
class  NoiseModelFactor
 
class  NoiseModelFactor1
 
class  NoiseModelFactor2
 
class  NoiseModelFactor3
 
class  NoiseModelFactor4
 
class  NoiseModelFactor5
 
class  NoiseModelFactor6
 
class  NoMatchFoundForFixed
 
class  NonlinearClusterTree
 
class  NonlinearConjugateGradientOptimizer
 
class  NonlinearEquality
 
class  NonlinearEquality1
 
class  NonlinearEquality2
 
class  NonlinearFactor
 
class  NonlinearFactorGraph
 
class  NonlinearISAM
 
class  NonlinearOptimizer
 
class  NonlinearOptimizerParams
 
class  OdometryFactorBase
 
class  OptionalJacobian
 
class  OptionalJacobian< Eigen::Dynamic, Eigen::Dynamic >
 
class  Ordering
 
class  ordering_key_visitor
 
class  OrientedPlane3
 Represents an infinite plane in 3D, which is composed of a planar normal and its perpendicular distance to the origin. Currently it provides a transform of the plane, and a norm 1 differencing of two planes. Refer to Trevor12iros for more math details. More...
 
class  OrientedPlane3DirectionPrior
 
class  OrientedPlane3Factor
 
class  OutOfRangeThreadsafe
 Thread-safe out of range exception. More...
 
struct  ParseFactor
 
struct  ParseMeasurement
 
struct  ParseMeasurement< BearingRange2D >
 
struct  ParseMeasurement< Pose2 >
 
struct  ParseMeasurement< Pose3 >
 
class  PartialPriorFactor
 
class  ParticleFactor
 
class  ParticleFilter
 
class  PCGSolver
 
struct  PCGSolverParameters
 
class  PendulumFactor1
 
class  PendulumFactor2
 
class  PendulumFactorPk
 
class  PendulumFactorPk1
 
class  PinholeBase
 
class  PinholeBaseK
 
class  PinholeCamera
 
class  PinholeFactor
 
class  PinholePose
 
class  PinholeSet
 
class  Pose2
 
class  Pose3
 
class  Pose3AttitudeFactor
 
class  Pose3Upright
 
class  PoseBetweenFactor
 
class  PoseConcept
 
class  PosePriorFactor
 
class  PoseRotationPrior
 
class  PoseRTV
 
class  PoseToPointFactor
 
class  PoseTranslationPrior
 
class  Potentials
 
class  PowerMethod
 Compute maximum Eigenpair with power method. More...
 
class  Preconditioner
 
struct  PreconditionerParameters
 
class  PredecessorMap
 
class  PreintegratedAhrsMeasurements
 
class  PreintegratedCombinedMeasurements
 
class  PreintegratedImuMeasurements
 
class  PreintegratedRotation
 
struct  PreintegratedRotationParams
 
class  PreintegrationBase
 
struct  PreintegrationCombinedParams
 
struct  PreintegrationParams
 
class  PriorFactor
 
class  ProductLieGroup
 
class  ProjectionFactorPPP
 
class  ProjectionFactorPPPC
 
struct  QP
 
class  QPInitSolver
 
struct  QPPolicy
 Policy for ActivetSetSolver to solve Linear Programming. More...
 
class  QPSParser
 
class  QPSParserException
 
class  QPSVisitor
 
struct  Range
 
struct  Range< CalibratedCamera, T >
 
struct  Range< PinholeCamera< Calibration >, T >
 
struct  Range< Point3, Point3 >
 
struct  Range< Pose2, T >
 
struct  Range< Pose3, T >
 
struct  Range< PoseRTV, PoseRTV >
 
struct  Range< Vector4, Vector4 >
 
class  RangeFactor
 
class  RangeFactorWithTransform
 
class  Reconstruction
 
struct  RedirectCout
 
class  RefCallPushBack
 
class  ReferenceFrameFactor
 
class  RegularHessianFactor
 
class  RegularImplicitSchurFactor
 
class  RegularJacobianFactor
 
class  RelativeElevationFactor
 
struct  Reshape
 Reshape functor. More...
 
struct  Reshape< M, M, InOptions, M, M, InOptions >
 Reshape specialization that does nothing as shape stays the same (needed to not be ambiguous for square input equals square output) More...
 
struct  Reshape< M, N, InOptions, M, N, InOptions >
 Reshape specialization that does nothing as shape stays the same. More...
 
struct  Reshape< N, M, InOptions, M, N, InOptions >
 Reshape specialization that does transpose. More...
 
class  Rot2
 
class  Rot3
 
class  Rot3AttitudeFactor
 
class  RotateDirectionsFactor
 
class  RotateFactor
 
class  RuntimeErrorThreadsafe
 Thread-safe runtime error exception. More...
 
class  Sampler
 
class  ScalarMultiplyExpression
 
class  Scatter
 
class  Scenario
 Simple trajectory simulator. More...
 
class  ScenarioRunner
 
class  Scheduler
 
class  SDGraph
 
struct  SfmData
 Define the structure for SfM data. More...
 
struct  SfmTrack
 Define the structure for the 3D points. More...
 
class  SGraph
 
class  ShonanAveraging
 
class  ShonanAveraging2
 
class  ShonanAveraging3
 
struct  ShonanAveragingParameters
 Parameters governing optimization etc. More...
 
class  ShonanFactor
 
class  ShonanGaugeFactor
 
class  Signature
 
class  Similarity3
 
class  SimPolygon2D
 
class  SimWall2D
 
class  SingleValue
 
struct  SlotEntry
 One SlotEntry stores the slot index for a variable, as well its dim. More...
 
class  SmartFactorBase
 Base class for smart factors This base class has no internal point, but it has a measurement, noise model and an optional sensor pose. This class mainly computes the derivatives and returns them as a variety of factors. The methods take a Cameras argument, which should behave like PinholeCamera, and the value of a point, which is kept in the base class. More...
 
class  SmartProjectionFactor
 
struct  SmartProjectionParams
 
class  SmartProjectionPoseFactor
 
class  SmartRangeFactor
 
class  SmartStereoProjectionFactor
 
class  SmartStereoProjectionPoseFactor
 
class  SO
 
class  StereoCamera
 
class  StereoCheiralityException
 
class  StereoFactor
 
class  StereoPoint2
 
struct  StreamedKey
 To use the key_formatter on Keys, they must be wrapped in a StreamedKey. More...
 
class  Subgraph
 
class  SubgraphBuilder
 
struct  SubgraphBuilderParameters
 
class  SubgraphPreconditioner
 
struct  SubgraphPreconditionerParameters
 
class  SubgraphSolver
 
struct  SubgraphSolverParameters
 
class  Symbol
 
class  SymbolGenerator
 
class  SymbolicBayesNet
 
class  SymbolicBayesTree
 
class  SymbolicBayesTreeClique
 A clique in a SymbolicBayesTree. More...
 
class  SymbolicConditional
 
class  SymbolicEliminationTree
 
class  SymbolicFactor
 
class  SymbolicFactorGraph
 
class  SymbolicISAM
 
class  SymbolicJunctionTree
 
class  Symmetric
 Symmetric group. More...
 
class  SymmetricBlockMatrix
 
class  System
 
class  TangentPreintegration
 
class  TbbOpenMPMixedScope
 
struct  Testable
 
class  ThreadsafeException
 Base exception type that uses tbb_allocator if GTSAM is compiled with TBB. More...
 
class  TimeOfArrival
 Time of arrival to given sensor. More...
 
class  TOAFactor
 A "Time of Arrival" factor - so little code seems hardly worth it :-) More...
 
struct  traits
 
struct  traits< ADT >
 
struct  traits< BearingFactor< A1, A2, T > >
 traits More...
 
struct  traits< BearingRange< A1, A2 > >
 
struct  traits< BearingRangeFactor< A1, A2, B, R > >
 traits More...
 
struct  traits< BearingS2 >
 traits More...
 
struct  traits< BetweenConstraint< VALUE > >
 traits More...
 
struct  traits< BetweenFactor< VALUE > >
 traits More...
 
struct  traits< BinaryJacobianFactor< M, N1, N2 > >
 
struct  traits< Cal3_S2 >
 
struct  traits< Cal3_S2Stereo >
 
struct  traits< Cal3Bundler >
 
struct  traits< Cal3Bundler0 >
 
struct  traits< Cal3DS2 >
 
struct  traits< Cal3Fisheye >
 
struct  traits< Cal3Unified >
 
struct  traits< CalibratedCamera >
 
struct  traits< CallConfig >
 
struct  traits< CameraSet< CAMERA > >
 
struct  traits< Class >
 
struct  traits< CombinedImuFactor >
 
struct  traits< ConcurrentBatchFilter >
 traits More...
 
struct  traits< ConcurrentBatchSmoother >
 traits More...
 
struct  traits< ConcurrentIncrementalFilter >
 traits More...
 
struct  traits< ConcurrentIncrementalSmoother >
 traits More...
 
struct  traits< const Cal3_S2 >
 
struct  traits< const Cal3_S2Stereo >
 
struct  traits< const Cal3Bundler >
 
struct  traits< const Cal3DS2 >
 
struct  traits< const Cal3Fisheye >
 
struct  traits< const Cal3Unified >
 
struct  traits< const CalibratedCamera >
 
struct  traits< const CameraSet< CAMERA > >
 
struct  traits< const EssentialMatrix >
 
struct  traits< const Line3 >
 
struct  traits< const OrientedPlane3 >
 
struct  traits< const PinholeCamera< Calibration > >
 
struct  traits< const PinholePose< CALIBRATION > >
 
struct  traits< const PinholeSet< CAMERA > >
 
struct  traits< const Pose2 >
 
struct  traits< const Pose3 >
 
struct  traits< const Rot2 >
 
struct  traits< const Rot3 >
 
struct  traits< const Similarity3 >
 
struct  traits< const SO3 >
 
struct  traits< const SO4 >
 
struct  traits< const SO< N > >
 
struct  traits< const StereoCamera >
 
struct  traits< const StereoPoint2 >
 
struct  traits< const Unit3 >
 
struct  traits< CrazyDecisionTree >
 
struct  traits< Cyclic< N > >
 Define cyclic group to be a model of the Additive Group concept. More...
 
struct  traits< DecisionTreeFactor >
 
struct  traits< Dih6 >
 
struct  traits< DirectProduct< G, H > >
 
struct  traits< DirectSum< G, H > >
 
struct  traits< DiscreteBayesNet >
 
struct  traits< DiscreteConditional >
 
struct  traits< DiscreteFactor >
 
struct  traits< DiscreteFactor::Values >
 
struct  traits< DiscreteFactorGraph >
 traits More...
 
struct  traits< double >
 double More...
 
struct  traits< DT >
 
struct  traits< Eigen::Matrix< double, 1,-1, Options, MaxRows, MaxCols > >
 
struct  traits< Eigen::Matrix< double, M, N, Options, MaxRows, MaxCols > >
 
struct  traits< Eigen::Matrix< double,-1, 1, Options, MaxRows, MaxCols > >
 
struct  traits< Eigen::Matrix< double,-1,-1, Options, MaxRows, MaxCols > >
 
struct  traits< EqualityFactorGraph >
 traits More...
 
struct  traits< Errors >
 traits More...
 
struct  traits< EssentialMatrix >
 
struct  traits< Event >
 
struct  traits< ExpressionFactor< T > >
 traits More...
 
struct  traits< ExpressionFactorN< T, Args... > >
 traits More...
 
struct  traits< float >
 float More...
 
struct  traits< FunctorizedFactor2< R, T1, T2 > >
 traits More...
 
struct  traits< FunctorizedFactor< R, T > >
 traits More...
 
struct  traits< GaussianBayesNet >
 traits More...
 
struct  traits< GaussianBayesTree >
 traits More...
 
struct  traits< GaussianConditional >
 traits More...
 
struct  traits< GaussianFactor >
 traits More...
 
struct  traits< GaussianFactorGraph >
 traits More...
 
struct  traits< GaussianISAM >
 traits More...
 
struct  traits< GaussMarkov1stOrderFactor< VALUE > >
 traits More...
 
struct  traits< GeneralSFMFactor2< CALIBRATION > >
 
struct  traits< GeneralSFMFactor< CAMERA, LANDMARK > >
 
struct  traits< GenericProjectionFactor< POSE, LANDMARK, CALIBRATION > >
 traits More...
 
struct  traits< GenericStereoFactor< T1, T2 > >
 traits More...
 
struct  traits< GenericValue< ValueType > >
 
struct  traits< HessianFactor >
 traits More...
 
struct  traits< imuBias::ConstantBias >
 
struct  traits< ImuFactor >
 
struct  traits< ImuFactor2 >
 
struct  traits< InequalityFactorGraph >
 traits More...
 
struct  traits< InertialNavFactor_GlobalVelocity< POSE, VELOCITY, IMUBIAS > >
 traits More...
 
struct  traits< ISAM2 >
 traits More...
 
struct  traits< JacobianFactor >
 traits More...
 
struct  traits< JacobianFactorQ< D, ZDim > >
 
struct  traits< K4 >
 Define K4 to be a model of the Additive Group concept, and provide Testable. More...
 
struct  traits< Key >
 
struct  traits< LabeledSymbol >
 traits More...
 
struct  traits< LieMatrix >
 
struct  traits< LieScalar >
 
struct  traits< LieVector >
 
struct  traits< Line3 >
 
struct  traits< LinearContainerFactor >
 
struct  traits< LinearCost >
 traits More...
 
struct  traits< LinearEquality >
 traits More...
 
struct  traits< LinearInequality >
 traits More...
 
struct  traits< LinearizedHessianFactor >
 traits More...
 
struct  traits< LinearizedJacobianFactor >
 traits More...
 
struct  traits< LP >
 traits More...
 
struct  traits< MyType >
 
struct  traits< NavState >
 
struct  traits< noiseModel::Constrained >
 
struct  traits< noiseModel::Diagonal >
 
struct  traits< noiseModel::Gaussian >
 traits More...
 
struct  traits< noiseModel::Isotropic >
 
struct  traits< noiseModel::Unit >
 
struct  traits< NonlinearEquality1< VALUE > >
 
struct  traits< NonlinearEquality2< VALUE > >
 
struct  traits< NonlinearEquality< VALUE > >
 
struct  traits< NonlinearFactor >
 traits More...
 
struct  traits< NonlinearFactorGraph >
 traits More...
 
struct  traits< Ordering >
 traits More...
 
struct  traits< OrientedPlane3 >
 
struct  traits< PinholeCamera< Calibration > >
 
struct  traits< PinholeFactor >
 traits More...
 
struct  traits< PinholePose< CALIBRATION > >
 
struct  traits< PinholeSet< CAMERA > >
 
struct  traits< Pose2 >
 
struct  traits< Pose3 >
 
struct  traits< Pose3AttitudeFactor >
 traits More...
 
struct  traits< Pose3Upright >
 
struct  traits< PoseRTV >
 
struct  traits< Potentials >
 
struct  traits< Potentials::ADT >
 
struct  traits< PreintegratedCombinedMeasurements >
 
struct  traits< PreintegratedImuMeasurements >
 
struct  traits< PreintegratedRotation >
 
struct  traits< PreintegrationCombinedParams >
 
struct  traits< PriorFactor< VALUE > >
 traits More...
 
struct  traits< Product >
 
struct  traits< ProductLieGroup< G, H > >
 
struct  traits< ProjectionFactorPPP< POSE, LANDMARK, CALIBRATION > >
 traits More...
 
struct  traits< ProjectionFactorPPPC< POSE, LANDMARK, CALIBRATION > >
 traits More...
 
struct  traits< QUATERNION_TYPE >
 
struct  traits< RangeFactor< A1, A2, T > >
 traits More...
 
struct  traits< RangeFactorWithTransform< A1, A2, T > >
 traits More...
 
struct  traits< ReferenceFrameFactor< T1, T2 > >
 traits More...
 
struct  traits< RegularHessianFactor< D > >
 
struct  traits< RegularImplicitSchurFactor< CAMERA > >
 
struct  traits< Rot2 >
 
struct  traits< Rot3 >
 
struct  traits< Rot3AttitudeFactor >
 traits More...
 
struct  traits< SfmData >
 traits More...
 
struct  traits< SfmTrack >
 traits More...
 
struct  traits< Similarity3 >
 
struct  traits< simulated2D::GenericMeasurement< POSE, LANDMARK > >
 
struct  traits< simulated2D::Values >
 
struct  traits< SimWall2D >
 traits More...
 
struct  traits< SmartProjectionFactor< CAMERA > >
 traits More...
 
struct  traits< SmartProjectionPoseFactor< CALIBRATION > >
 traits More...
 
struct  traits< SmartStereoProjectionFactor >
 traits More...
 
struct  traits< SmartStereoProjectionPoseFactor >
 traits More...
 
struct  traits< SO3 >
 
struct  traits< SO4 >
 
struct  traits< SO< N > >
 
struct  traits< StereoCamera >
 
struct  traits< StereoFactor >
 traits More...
 
struct  traits< StereoPoint2 >
 
struct  traits< Symbol >
 traits More...
 
struct  traits< SymbolicBayesNet >
 traits More...
 
struct  traits< SymbolicBayesTree >
 
struct  traits< SymbolicBayesTreeClique >
 traits More...
 
struct  traits< SymbolicConditional >
 traits More...
 
struct  traits< SymbolicEliminationTree >
 traits More...
 
struct  traits< SymbolicFactor >
 traits More...
 
struct  traits< SymbolicFactorGraph >
 traits More...
 
struct  traits< Symmetric< N > >
 Define permutation group traits to be a model of the Multiplicative Group concept. More...
 
struct  traits< TestPartialPriorFactor2 >
 
struct  traits< TestPartialPriorFactor3 >
 
struct  traits< TestPoseBetweenFactor >
 
struct  traits< TestPosePriorFactor >
 
struct  traits< TestProjectionFactor >
 
struct  traits< TestValue >
 
struct  traits< TransformBtwRobotsUnaryFactor< VALUE > >
 traits More...
 
struct  traits< TransformBtwRobotsUnaryFactorEM< VALUE > >
 traits More...
 
struct  traits< Unit3 >
 
struct  traits< Values >
 traits More...
 
struct  traits< VariableIndex >
 traits More...
 
struct  traits< VariableSlots >
 traits More...
 
struct  traits< VectorValues >
 traits More...
 
class  TransformBtwRobotsUnaryFactor
 
class  TransformBtwRobotsUnaryFactorEM
 
class  TransformCovariance
 
class  TranslationFactor
 
class  TranslationRecovery
 
class  TriangulationCheiralityException
 Exception thrown by triangulateDLT when landmark is behind one or more of the cameras. More...
 
class  TriangulationFactor
 
struct  TriangulationParameters
 
class  TriangulationResult
 
class  TriangulationUnderconstrainedException
 Exception thrown by triangulateDLT when SVD returns rank < 3. More...
 
class  Unit3
 Represents a 3D point on a unit sphere. More...
 
struct  UpdateImpl
 
class  Value
 
class  ValueCloneAllocator
 
class  Values
 
struct  ValuesCastHelper
 
struct  ValuesCastHelper< const Value, CastedKeyValuePairType, KeyValuePairType >
 
struct  ValuesCastHelper< Value, CastedKeyValuePairType, KeyValuePairType >
 
class  ValuesIncorrectType
 
class  ValuesKeyAlreadyExists
 
class  ValuesKeyDoesNotExist
 
struct  ValueWithDefault
 
class  VariableIndex
 
class  VariableSlots
 
struct  vector_space_tag
 tag to assert a type is a vector space More...
 
class  VectorValues
 
class  VelocityConstraint
 
class  VelocityConstraint3
 
struct  VelocityPrior
 
class  VerticalBlockMatrix
 
class  WeightedSampler
 
class  WhiteNoiseFactor
 Binary factor to estimate parameters of zero-mean Gaussian white noise. More...
 

Typedefs

typedef qi::grammar< boost::spirit::basic_istream_iterator< char > > base_grammar
 
using BearingRange2D = BearingRange< Pose2, Point2 >
 
using BetweenFactorPose2s = std::vector< BetweenFactor< Pose2 >::shared_ptr >
 
using BetweenFactorPose3s = std::vector< BetweenFactor< Pose3 >::shared_ptr >
 
using BinaryMeasurementsUnit3 = std::vector< BinaryMeasurement< Unit3 >>
 
typedef Expression< Cal3_S2Cal3_S2_
 
typedef Expression< Cal3BundlerCal3Bundler_
 
typedef PinholeCamera< Cal3Bundler0Camera
 
using CameraSetCal3_S2 = CameraSet< PinholeCamera< Cal3_S2 >>
 
using CameraSetCal3Bundler = CameraSet< PinholeCamera< Cal3Bundler >>
 
typedef ConcurrentBatchFilter::Result ConcurrentBatchFilterResult
 Typedef for Matlab wrapping. More...
 
typedef ConcurrentBatchSmoother::Result ConcurrentBatchSmootherResult
 Typedef for Matlab wrapping. More...
 
typedef ConcurrentIncrementalFilter::Result ConcurrentIncrementalFilterResult
 Typedef for Matlab wrapping. More...
 
typedef ConcurrentIncrementalSmoother::Result ConcurrentIncrementalSmootherResult
 Typedef for Matlab wrapping. More...
 
typedef Eigen::Block< const MatrixConstSubMatrix
 
typedef Eigen::VectorBlock< const VectorConstSubVector
 
typedef ptrdiff_t DenseIndex
 The index type for Eigen objects. More...
 
typedef DirectProduct< S2, S3Dih6
 
typedef std::pair< Key, size_tDiscreteKey
 
typedef Expression< double > Double_
 
typedef DSF< intDSFInt
 
typedef DSFMap< IndexPairDSFMapIndexPair
 
using DynamicJacobian = OptionalJacobian< Eigen::Dynamic, Eigen::Dynamic >
 
template<bool B, class T = void>
using enable_if_t = typename std::enable_if< B, T >::type
 An shorthand alias for accessing the type inside std::enable_if that can be used in a template directly. More...
 
typedef std::uint64_t FactorIndex
 Integer nonlinear factor index type. More...
 
typedef FastSet< FactorIndexFactorIndexSet
 
typedef FastVector< FactorIndexFactorIndices
 Define collection types: More...
 
template<typename T >
using FastVector = std::vector< T, typename internal::FastDefaultVectorAllocator< T >::type >
 
typedef FixedLagSmoother::KeyTimestampMap FixedLagSmootherKeyTimestampMap
 Typedef for matlab wrapping. More...
 
typedef FixedLagSmootherKeyTimestampMap::value_type FixedLagSmootherKeyTimestampMapValue
 
typedef FixedLagSmoother::Result FixedLagSmootherResult
 
using GraphAndValues = std::pair< NonlinearFactorGraph::shared_ptr, Values::shared_ptr >
 
typedef std::pair< std::pair< size_t, size_t >, Pose2IndexedEdge
 
typedef std::pair< size_t, Point2IndexedLandmark
 
typedef std::pair< size_t, Pose2IndexedPose
 Return type for auxiliary functions. More...
 
typedef std::set< IndexPairIndexPairSet
 
typedef std::map< IndexPair, IndexPairSetIndexPairSetMap
 
typedef std::vector< IndexPairIndexPairVector
 
typedef FastMap< char, VectorISAM2ThresholdMap
 
typedef ISAM2ThresholdMap::value_type ISAM2ThresholdMapValue
 
typedef std::uint64_t Key
 Integer nonlinear key type. More...
 
using KeyDimMap = std::map< Key, size_t >
 Mapping between variable's key and its corresponding dimensionality. More...
 
typedef std::function< std::string(Key)> KeyFormatter
 Typedef for a function to format a key, i.e. to convert it to a string. More...
 
typedef FastMap< Key, intKeyGroupMap
 
typedef FastList< KeyKeyList
 
typedef std::map< std::pair< Key, Key >, double > KeyPairDoubleMap
 
typedef std::map< Key, Rot3KeyRotMap
 
typedef FastSet< KeyKeySet
 
typedef FastVector< KeyKeyVector
 Define collection type once and for all - also used in wrappers. More...
 
typedef std::map< Key, std::vector< size_t > > KeyVectorMap
 
typedef Expression< Line3Line3_
 
using LPSolver = ActiveSetSolver< LP, LPPolicy, LPInitSolver >
 
typedef Eigen::MatrixXd Matrix
 
typedef Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajorMatrixRowMajor
 
typedef Expression< NavStateNavState_
 
template<typename T >
using Parser = std::function< boost::optional< T >(istream &is, const string &tag)>
 
using PinholeCameraCal3_S2 = gtsam::PinholeCamera< gtsam::Cal3_S2 >
 
using PinholeCameraCal3Bundler = gtsam::PinholeCamera< gtsam::Cal3Bundler >
 
using PinholeCameraCal3DS2 = gtsam::PinholeCamera< gtsam::Cal3DS2 >
 
using PinholeCameraCal3Unified = gtsam::PinholeCamera< gtsam::Cal3Unified >
 
typedef Vector2 Point2
 
typedef Expression< Point2Point2_
 
typedef std::pair< Point2, Point2Point2Pair
 
typedef std::vector< Point2, Eigen::aligned_allocator< Point2 > > Point2Vector
 
typedef Vector3 Point3
 
typedef Expression< Point3Point3_
 
using Point3Pair = std::pair< Point3, Point3 >
 
using Point3Pairs = std::vector< Point3Pair >
 
typedef Expression< Pose2Pose2_
 
typedef Expression< Pose3Pose3_
 
using Pose3Pair = std::pair< Pose3, Pose3 >
 
using Pose3Pairs = std::vector< std::pair< Pose3, Pose3 > >
 
typedef std::vector< Pose3Pose3Vector
 
typedef ManifoldPreintegration PreintegrationType
 
using QPSolver = ActiveSetSolver< QP, QPPolicy, QPInitSolver >
 
typedef Eigen::Quaternion< double, Eigen::DontAlignQuaternion
 
typedef Expression< Rot2Rot2_
 
typedef Expression< Rot3Rot3_
 
typedef Eigen::RowVectorXd RowVector
 
typedef PinholeCamera< Cal3BundlerSfmCamera
 Define the structure for the camera poses. More...
 
typedef std::pair< size_t, Point2SfmMeasurement
 A measurement with its camera index. More...
 
typedef noiseModel::Constrained::shared_ptr SharedConstrained
 
typedef noiseModel::Diagonal::shared_ptr SharedDiagonal
 
typedef noiseModel::Gaussian::shared_ptr SharedGaussian
 
typedef noiseModel::Isotropic::shared_ptr SharedIsotropic
 
typedef noiseModel::Base::shared_ptr SharedNoiseModel
 
using ShonanAveragingParameters2 = ShonanAveragingParameters< 2 >
 
using ShonanAveragingParameters3 = ShonanAveragingParameters< 3 >
 
using ShonanFactor2 = ShonanFactor< 2 >
 
using ShonanFactor3 = ShonanFactor< 3 >
 
typedef std::pair< size_t, size_tSiftIndex
 Sift index for SfmTrack. More...
 
typedef std::vector< SimPolygon2DSimPolygon2DVector
 
typedef std::vector< SimWall2DSimWall2DVector
 
typedef SmartProjectionParams SmartStereoProjectionParams
 
using SO3 = SO< 3 >
 
using SO4 = SO< 4 >
 
using SOn = SO< Eigen::Dynamic >
 
using Sparse = Eigen::SparseMatrix< double >
 
typedef Eigen::SparseMatrix< double, Eigen::ColMajor, intSparseEigen
 
using SparseTriplets = std::vector< std::tuple< int, int, double > >
 
typedef internal::DoglegState State
 
typedef std::vector< StereoPoint2StereoPoint2Vector
 
typedef Eigen::Block< MatrixSubMatrix
 
typedef Eigen::VectorBlock< VectorSubVector
 
typedef NonlinearOptimizerParams SuccessiveLinearizationParams
 
typedef Expression< Unit3Unit3_
 
typedef Eigen::VectorXd Vector
 
typedef Eigen::Matrix< double, 1, 1 > Vector1
 
typedef Expression< Vector1Vector1_
 
typedef Eigen::Vector2d Vector2
 
typedef Expression< Vector2Vector2_
 
typedef Eigen::Vector3d Vector3
 
typedef Expression< Vector3Vector3_
 
typedef Expression< Vector4 > Vector4_
 
typedef Expression< Vector5 > Vector5_
 
typedef Expression< Vector6 > Vector6_
 
typedef Expression< Vector7 > Vector7_
 
typedef Expression< Vector8 > Vector8_
 
typedef Expression< Vector9 > Vector9_
 
typedef Vector3 Velocity3
 Velocity is currently typedef'd to Vector3. More...
 
typedef Expression< Velocity3Velocity3_
 
template<typename... >
using void_t = void
 Convenience void_t as we assume C++11, it will not conflict the std one in C++17 as this is in gtsam:: More...
 

Enumerations

enum  DegeneracyMode { IGNORE_DEGENERACY, ZERO_ON_DEGENERACY, HANDLE_INFINITY }
 How to manage degeneracy. More...
 
enum  GncLossType { GM, TLS }
 Choice of robust loss function for GNC. More...
 
enum  KernelFunctionType { KernelFunctionTypeNONE, KernelFunctionTypeHUBER, KernelFunctionTypeTUKEY }
 Robust kernel type to wrap around quadratic noise model. More...
 
enum  LinearizationMode { HESSIAN, IMPLICIT_SCHUR, JACOBIAN_Q, JACOBIAN_SVD }
 Linearization mode: what factor to linearize to. More...
 
enum  NoiseFormat {
  NoiseFormatG2O, NoiseFormatTORO, NoiseFormatGRAPH, NoiseFormatCOV,
  NoiseFormatAUTO
}
 Indicates how noise parameters are stored in file. More...
 

Functions

string _defaultKeyFormatter (Key key)
 
def _init ()
 
string _multirobotKeyFormatter (Key key)
 
template<typename T >
static bool _truePredicate (const T &)
 
boost::optional< Pose2align (const vector< Point2Pair > &pairs)
 
GTSAM_EXPORT boost::optional< Pose2align (const std::vector< Point2Pair > &pairs)
 
boost::optional< Pose3align (const Point3Pairs &baPointPairs)
 
template<typename Y , typename L >
DecisionTree< L, Yapply (const DecisionTree< L, Y > &f, const typename DecisionTree< L, Y >::Unary &op)
 
template<typename Y , typename L >
DecisionTree< L, Yapply (const DecisionTree< L, Y > &f, const DecisionTree< L, Y > &g, const typename DecisionTree< L, Y >::Binary &op)
 
template<class V1 , class V2 >
bool assert_container_equal (const std::map< V1, V2 > &expected, const std::map< V1, V2 > &actual, double tol=1e-9)
 
template<class V2 >
bool assert_container_equal (const std::map< size_t, V2 > &expected, const std::map< size_t, V2 > &actual, double tol=1e-9)
 
template<class V1 , class V2 >
bool assert_container_equal (const std::vector< std::pair< V1, V2 > > &expected, const std::vector< std::pair< V1, V2 > > &actual, double tol=1e-9)
 
template<class V >
bool assert_container_equal (const V &expected, const V &actual, double tol=1e-9)
 
template<class V2 >
bool assert_container_equality (const std::map< size_t, V2 > &expected, const std::map< size_t, V2 > &actual)
 
template<class V >
bool assert_container_equality (const V &expected, const V &actual)
 
bool assert_equal (const Key &expected, const Key &actual, double tol=0.0)
 
bool assert_equal (const Matrix &expected, const Matrix &actual, double tol)
 
template<class V >
bool assert_equal (const boost::optional< V > &expected, const boost::optional< V > &actual, double tol=1e-9)
 
template<class V >
bool assert_equal (const V &expected, const boost::optional< V > &actual, double tol=1e-9)
 
bool assert_equal (const std::list< Matrix > &As, const std::list< Matrix > &Bs, double tol)
 
template<class V >
bool assert_equal (const V &expected, const boost::optional< const V & > &actual, double tol=1e-9)
 
template<class V >
bool assert_equal (const std::vector< V > &expected, const std::vector< V > &actual, double tol=1e-9)
 
template<class V >
bool assert_equal (const V &expected, const V &actual, double tol=1e-9)
 
bool assert_equal (const Vector &expected, const Vector &actual, double tol)
 
bool assert_equal (const SubVector &expected, const SubVector &actual, double tol)
 
bool assert_equal (const ConstSubVector &expected, const ConstSubVector &actual, double tol)
 
bool assert_equal (const std::string &expected, const std::string &actual)
 
bool assert_inequal (const Matrix &A, const Matrix &B, double tol)
 
bool assert_inequal (const Vector &expected, const Vector &actual, double tol)
 
template<class V >
bool assert_inequal (const V &expected, const V &actual, double tol=1e-9)
 
template<class V >
bool assert_print_equal (const std::string &expected, const V &actual, const std::string &s="")
 
template<class V >
bool assert_stdout_equal (const std::string &expected, const V &actual)
 
Rot3_ attitude (const NavState_ &X)
 
template<class V1 , class V2 >
void axpy (double alpha, const V1 &x, V2 &y)
 
void axpy (double alpha, const Vector &x, SubVector y)
 
template<>
GTSAM_EXPORT void axpy< Errors, Errors > (double alpha, const Errors &x, Errors &y)
 
template<>
void axpy< Errors, Errors > (double alpha, const Errors &x, Errors &y)
 
Vector backSubstituteLower (const Matrix &L, const Vector &b, bool unit)
 
Vector backSubstituteUpper (const Matrix &U, const Vector &b, bool unit)
 
Vector backSubstituteUpper (const Vector &b, const Matrix &U, bool unit)
 
template<class T >
T BCH (const T &X, const T &Y)
 AGC: bracket() only appears in Rot3 tests, should this be used elsewhere? More...
 
template<typename T >
Expression< Tbetween (const Expression< T > &t1, const Expression< T > &t2)
 
template<class Class >
Class between_default (const Class &l1, const Class &l2)
 
 BOOST_CONCEPT_ASSERT ((boost::RandomAccessRangeConcept< ListOfOneContainer< int > >))
 
template<typename G >
 BOOST_CONCEPT_REQUIRES (((IsGroup< G >)),(bool)) check_group_invariants(const G &a
 Check invariants. More...
 
template<typename T >
 BOOST_CONCEPT_REQUIRES (((IsTestable< T >)),(bool)) check_manifold_invariants(const T &a
 Check invariants for Manifold type. More...
 
double bound (double a, double min, double max)
 
GaussianFactorGraph::shared_ptr buildFactorSubgraph (const GaussianFactorGraph &gfg, const Subgraph &subgraph, const bool clone)
 
VectorValues buildVectorValues (const Vector &v, const Ordering &ordering, const map< Key, size_t > &dimensions)
 Create VectorValues from a Vector. More...
 
static Point3 CalculateBestAxis (const Point3 &n)
 
template<typename Cal , size_t Dim>
void calibrateJacobians (const Cal &calibration, const Point2 &pn, OptionalJacobian< 2, Dim > Dcal=boost::none, OptionalJacobian< 2, 2 > Dp=boost::none)
 
template<typename L >
std::vector< Assignment< L > > cartesianProduct (const std::vector< std::pair< L, size_t > > &keys)
 Get Cartesian product consisting all possible configurations. More...
 
static void check (const SharedNoiseModel &noiseModel, size_t m)
 
template<class CLIQUE >
bool check_sharedCliques (const std::pair< Key, typename BayesTree< CLIQUE >::sharedClique > &v1, const std::pair< Key, typename BayesTree< CLIQUE >::sharedClique > &v2)
 
bool checkConvergence (double relativeErrorTreshold, double absoluteErrorTreshold, double errorThreshold, double currentError, double newError, NonlinearOptimizerParams::Verbosity verbosity)
 
GTSAM_EXPORT bool checkConvergence (const NonlinearOptimizerParams &params, double currentError, double newError)
 
static double Chi2inv (const double alpha, const size_t dofs)
 
Matrix cholesky_inverse (const Matrix &A)
 
pair< size_t, bool > choleskyCareful (Matrix &ATA, int order)
 
bool choleskyPartial (Matrix &ABC, size_t nFrontal, size_t topleft)
 
static int choleskyStep (Matrix &ATA, size_t k, size_t order)
 
boost::optional< Point2circleCircleIntersection (double R_d, double r_d, double tol)
 
list< Point2circleCircleIntersection (Point2 c1, Point2 c2, boost::optional< Point2 > fh)
 
list< Point2circleCircleIntersection (Point2 c1, double r1, Point2 c2, double r2, double tol=1e-9)
 Intersect 2 circles. More...
 
Matrix collect (const std::vector< const Matrix * > &matrices, size_t m, size_t n)
 
Matrix collect (size_t nrMatrices,...)
 
template<class LinearGraph >
KeyDimMap collectKeyDim (const LinearGraph &linearGraph)
 
template<class MATRIX >
const MATRIX::ConstColXpr column (const MATRIX &A, size_t j)
 
Vector columnNormSquare (const Matrix &A)
 
template<typename T >
Expression< Tcompose (const Expression< T > &t1, const Expression< T > &t2)
 
template<class G , class Factor , class POSE , class KEY >
boost::shared_ptr< ValuescomposePoses (const G &graph, const PredecessorMap< KEY > &tree, const POSE &rootPose)
 
Vector concatVectors (const std::list< Vector > &vs)
 
Vector concatVectors (size_t nrVectors,...)
 
Vector conjugateGradientDescent (const System &Ab, const Vector &x, const ConjugateGradientParameters &parameters)
 
Vector conjugateGradientDescent (const Matrix &A, const Vector &b, const Vector &x, const ConjugateGradientParameters &parameters)
 
VectorValues conjugateGradientDescent (const GaussianFactorGraph &fg, const VectorValues &x, const ConjugateGradientParameters &parameters)
 
template<class S , class V , class E >
V conjugateGradients (const S &Ab, V x, const ConjugateGradientParameters &parameters, bool steepest)
 
static BinaryMeasurement< Rot2convert (const BinaryMeasurement< Pose2 > &p)
 
static BinaryMeasurement< Rot3convert (const BinaryMeasurement< Pose3 > &p)
 
static BinaryMeasurement< Rot3convert (const BetweenFactor< Pose3 >::shared_ptr &f)
 
SharedNoiseModel ConvertNoiseModel (const SharedNoiseModel &model, size_t d, bool defaultToUnit)
 
static GaussianFactorGraph::shared_ptr convertToJacobianFactors (const GaussianFactorGraph &gfg)
 
static SharedNoiseModel createNoiseModel (const Vector6 v, bool smart, NoiseFormat noiseFormat, KernelFunctionType kernelFunctionType)
 
boost::shared_ptr< PreconditionercreatePreconditioner (const boost::shared_ptr< PreconditionerParameters > params)
 
GTSAM_EXPORT std::string createRewrittenFileName (const std::string &name)
 
string createRewrittenFileName (const string &name)
 
boost::shared_ptr< SamplercreateSampler (const SharedNoiseModel &model)
 
template<typename T >
std::vector< Expression< T > > createUnknowns (size_t n, char c, size_t start)
 Construct an array of leaves. More...
 
Point3 cross (const Point3 &p, const Point3 &q, OptionalJacobian< 3, 3 > H_p=boost::none, OptionalJacobian< 3, 3 > H_q=boost::none)
 cross product More...
 
static Matrix29 D2dcalibration (double x, double y, double xx, double yy, double xy, double rr, double r4, double pnx, double pny, const Matrix2 &DK)
 
static Matrix2 D2dintrinsic (double x, double y, double rr, double g, double k1, double k2, double p1, double p2, const Matrix2 &DK)
 
std::string demangle (const char *name)
 Pretty print Value type name. More...
 
NonlinearFactorGraph::shared_ptr deserializeGraph (const std::string &serialized_graph)
 
NonlinearFactorGraph::shared_ptr deserializeGraphFromFile (const std::string &fname)
 
NonlinearFactorGraph::shared_ptr deserializeGraphFromXMLFile (const std::string &fname, const std::string &name="graph")
 
NonlinearFactorGraph::shared_ptr deserializeGraphXML (const std::string &serialized_graph, const std::string &name="graph")
 
Values::shared_ptr deserializeValues (const std::string &serialized_values)
 
Values::shared_ptr deserializeValuesFromFile (const std::string &fname)
 
Values::shared_ptr deserializeValuesFromXMLFile (const std::string &fname, const std::string &name="values")
 
Values::shared_ptr deserializeValuesXML (const std::string &serialized_values, const std::string &name="values")
 
Matrix diag (const std::vector< Matrix > &Hs)
 
static noiseModel::Diagonal::shared_ptr Diagonal (const Matrix &covariance)
 
double distance2 (const Point2 &p1, const Point2 &q, OptionalJacobian< 1, 2 > H1=boost::none, OptionalJacobian< 1, 2 > H2=boost::none)
 distance between two points More...
 
double distance3 (const Point3 &p1, const Point3 &q, OptionalJacobian< 1, 3 > H1=boost::none, OptionalJacobian< 1, 3 > H2=boost::none)
 distance between two points More...
 
boost::tuple< int, double, VectorDLT (const Matrix &A, double rank_tol)
 
double dot (const Point3 &p, const Point3 &q, OptionalJacobian< 1, 3 > H_p=boost::none, OptionalJacobian< 1, 3 > H_q=boost::none)
 dot product More...
 
double dot (const Errors &a, const Errors &b)
 
template<class V1 , class V2 >
double dot (const V1 &a, const V2 &b)
 
Vector ediv_ (const Vector &a, const Vector &b)
 
std::pair< boost::shared_ptr< GaussianConditional >, boost::shared_ptr< HessianFactor > > EliminateCholesky (const GaussianFactorGraph &factors, const Ordering &keys)
 
std::pair< DiscreteConditional::shared_ptr, DecisionTreeFactor::shared_ptrEliminateDiscrete (const DiscreteFactorGraph &factors, const Ordering &frontalKeys)
 
std::pair< boost::shared_ptr< GaussianConditional >, boost::shared_ptr< GaussianFactor > > EliminatePreferCholesky (const GaussianFactorGraph &factors, const Ordering &keys)
 
std::pair< GaussianConditional::shared_ptr, JacobianFactor::shared_ptrEliminateQR (const GaussianFactorGraph &factors, const Ordering &keys)
 
std::pair< boost::shared_ptr< SymbolicConditional >, boost::shared_ptr< SymbolicFactor > > EliminateSymbolic (const SymbolicFactorGraph &factors, const Ordering &keys)
 
template<class T >
bool equal (const T &obj1, const T &obj2, double tol)
 
template<class T >
bool equal (const T &obj1, const T &obj2)
 
bool equal (const Vector &vec1, const Vector &vec2, double tol)
 
bool equal (const Vector &vec1, const Vector &vec2)
 
template<class MATRIX >
bool equal_with_abs_tol (const Eigen::DenseBase< MATRIX > &A, const Eigen::DenseBase< MATRIX > &B, double tol=1e-9)
 
bool equal_with_abs_tol (const Vector &vec1, const Vector &vec2, double tol)
 
bool equal_with_abs_tol (const SubVector &vec1, const SubVector &vec2, double tol)
 
template<class T >
T expm (const Vector &x, int K=7)
 
Matrix expm (const Matrix &A, size_t K)
 
template<class Class >
Class expmap_default (const Class &t, const Vector &d)
 
static ShonanAveraging3::Measurements extractRot3Measurements (const BetweenFactorPose3s &factors)
 
GTSAM_EXPORT std::string findExampleDataFile (const std::string &name)
 
string findExampleDataFile (const string &name)
 
template<class T , typename = typename std::enable_if< std::is_same<gtsam::Rot3, T>::value >::type>
T FindKarcherMean (const std::vector< T > &rotations)
 
template<class T >
T FindKarcherMean (const std::vector< T, Eigen::aligned_allocator< T >> &rotations)
 
template<class T >
T FindKarcherMean (std::initializer_list< T > &&rotations)
 
template<class T , class ALLOC >
T FindKarcherMeanImpl (const vector< T, ALLOC > &rotations)
 
template<class G , class KEY , class FACTOR2 >
PredecessorMap< KEY > findMinimumSpanningTree (const G &fg)
 
std::string formatMatrixIndented (const std::string &label, const Matrix &matrix, bool makeVectorHorizontal)
 
bool fpEqual (double a, double b, double tol, bool check_relative_also)
 
static std::vector< Matrix3 > G3 ({SO3::Hat(Vector3::Unit(0)), SO3::Hat(Vector3::Unit(1)), SO3::Hat(Vector3::Unit(2))})
 
static std::vector< Matrix4, Eigen::aligned_allocator< Matrix4 > > G4 ({SO4::Hat(Vector6::Unit(0)), SO4::Hat(Vector6::Unit(1)), SO4::Hat(Vector6::Unit(2)), SO4::Hat(Vector6::Unit(3)), SO4::Hat(Vector6::Unit(4)), SO4::Hat(Vector6::Unit(5))})
 
template<class T >
GenericValue< TgenericValue (const T &v)
 
static Vector getSubvector (const Vector &src, const KeyInfo &keyInfo, const KeyVector &keys)
 
static VectorValues gradientInPlace (const NonlinearFactorGraph &nfg, const Values &values)
 Return the gradient vector of a nonlinear factor graph. More...
 
bool greaterThanOrEqual (const Vector &vec1, const Vector &vec2)
 
Pose3 gtsam2openGL (const Rot3 &R, double tx, double ty, double tz)
 This function converts a GTSAM camera pose to an openGL camera pose. More...
 
Pose3 gtsam2openGL (const Pose3 &PoseGTSAM)
 This function converts a GTSAM camera pose to an openGL camera pose. More...
 
 GTSAM_CONCEPT_POSE_INST (Pose2)
 
 GTSAM_CONCEPT_POSE_INST (Pose3)
 
 GTSAM_MAKE_MATRIX_DEFS (1)
 
 GTSAM_MAKE_MATRIX_DEFS (2)
 
 GTSAM_MAKE_MATRIX_DEFS (3)
 
 GTSAM_MAKE_MATRIX_DEFS (4)
 
 GTSAM_MAKE_MATRIX_DEFS (5)
 
 GTSAM_MAKE_MATRIX_DEFS (6)
 
 GTSAM_MAKE_MATRIX_DEFS (7)
 
 GTSAM_MAKE_MATRIX_DEFS (8)
 
 GTSAM_MAKE_MATRIX_DEFS (9)
 
 GTSAM_MAKE_VECTOR_DEFS (4)
 
 GTSAM_MAKE_VECTOR_DEFS (5)
 
 GTSAM_MAKE_VECTOR_DEFS (6)
 
 GTSAM_MAKE_VECTOR_DEFS (7)
 
 GTSAM_MAKE_VECTOR_DEFS (8)
 
 GTSAM_MAKE_VECTOR_DEFS (9)
 
 GTSAM_MAKE_VECTOR_DEFS (10)
 
 GTSAM_MAKE_VECTOR_DEFS (11)
 
 GTSAM_MAKE_VECTOR_DEFS (12)
 
bool guardedIsDebug (const std::string &s)
 
void guardedSetDebug (const std::string &s, const bool v)
 
bool hasConstraints (const GaussianFactorGraph &factors)
 
pair< double, Vectorhouse (const Vector &x)
 
void householder (Matrix &A, size_t k)
 
void householder_ (Matrix &A, size_t k, bool copy_vectors)
 
double houseInPlace (Vector &v)
 
IndexPairVector IndexPairSetAsArray (IndexPairSet &set)
 
Values initialCamerasAndPointsEstimate (const SfmData &db)
 This function creates initial values for cameras and points from db. More...
 
Values initialCamerasEstimate (const SfmData &db)
 This function creates initial values for cameras from db. More...
 
template<class V1 , class V2 >
double inner_prod (const V1 &a, const V2 &b)
 
void inplace_QR (Matrix &A)
 
template<typename Derived1 , typename Derived2 >
void insertSub (Eigen::MatrixBase< Derived1 > &fullMatrix, const Eigen::MatrixBase< Derived2 > &subMatrix, size_t i, size_t j)
 
template<typename T >
T interpolate (const T &X, const T &Y, double t)
 
Matrix inverse_square_root (const Matrix &A)
 
static bool is_linear_dependent (const Matrix &A, const Matrix &B, double tol)
 
bool isDebugVersion ()
 
template<typename T , size_t d>
static double Kappa (const BinaryMeasurement< T > &measurement, const ShonanAveragingParameters< d > &parameters)
 
static std::mt19937 kRandomNumberGenerator (42)
 
bool linear_dependent (const Matrix &A, const Matrix &B, double tol)
 
bool linear_dependent (const Vector &vec1, const Vector &vec2, double tol)
 
bool linear_independent (const Matrix &A, const Matrix &B, double tol)
 
template<typename T , typename A >
Expression< TlinearExpression (const boost::function< T(A)> &f, const Expression< A > &expression, const Eigen::Matrix< double, traits< T >::dimension, traits< A >::dimension > &dTdA)
 
JacobianFactor linearizeNumerically (const NoiseModelFactor &factor, const Values &values, double delta=1e-5)
 
template<class S , class V , class W >
double lineSearch (const S &system, const V currentValues, const W &gradient)
 
template<typename T >
ListOfOneContainer< TListOfOne (const T &element)
 
Matrix LLt (const Matrix &A)
 
GTSAM_EXPORT GraphAndValues load2D (std::pair< std::string, SharedNoiseModel > dataset, size_t maxIndex=0, bool addNoise=false, bool smart=true, NoiseFormat noiseFormat=NoiseFormatAUTO, KernelFunctionType kernelFunctionType=KernelFunctionTypeNONE)
 
GTSAM_EXPORT GraphAndValues load2D (const std::string &filename, SharedNoiseModel model=SharedNoiseModel(), size_t maxIndex=0, bool addNoise=false, bool smart=true, NoiseFormat noiseFormat=NoiseFormatAUTO, KernelFunctionType kernelFunctionType=KernelFunctionTypeNONE)
 
GraphAndValues load2D (const string &filename, SharedNoiseModel model, size_t maxIndex, bool addNoise, bool smart, NoiseFormat noiseFormat, KernelFunctionType kernelFunctionType)
 
GraphAndValues load2D (pair< string, SharedNoiseModel > dataset, size_t maxIndex, bool addNoise, bool smart, NoiseFormat noiseFormat, KernelFunctionType kernelFunctionType)
 
GTSAM_EXPORT GraphAndValues load2D_robust (const std::string &filename, const noiseModel::Base::shared_ptr &model, size_t maxIndex=0)
 
GraphAndValues load2D_robust (const string &filename, const noiseModel::Base::shared_ptr &model, size_t maxIndex)
 
GTSAM_EXPORT GraphAndValues load3D (const std::string &filename)
 Load TORO 3D Graph. More...
 
GraphAndValues load3D (const string &filename)
 Load TORO 3D Graph. More...
 
template<class Class >
Vector logmap_default (const Class &l0, const Class &lp)
 
static Symbol make (gtsam::Key key)
 
static LabeledSymbol make (gtsam::Key key)
 
template<typename T , typename... Args>
gtsam::enable_if_t< needs_eigen_aligned_allocator< T >::value, boost::shared_ptr< T > > make_shared (Args &&...args)
 
template<typename T , typename... Args>
gtsam::enable_if_t<!needs_eigen_aligned_allocator< T >::value, boost::shared_ptr< T > > make_shared (Args &&...args)
 Fall back to the boost version if no need for alignment. More...
 
template<typename T , typename R , typename FUNC >
FunctorizedFactor< R, TMakeFunctorizedFactor (Key key, const R &z, const SharedNoiseModel &model, const FUNC func)
 
template<typename T1 , typename T2 , typename R , typename FUNC >
FunctorizedFactor2< R, T1, T2MakeFunctorizedFactor2 (Key key1, Key key2, const R &z, const SharedNoiseModel &model, const FUNC func)
 
const Eigen::IOFormatmatlabFormat ()
 
template<class PROBLEM >
Key maxKey (const PROBLEM &problem)
 
template<class CONTAINER >
Point3 mean (const CONTAINER &points)
 mean More...
 
Point3Pair means (const std::vector< Point3Pair > &abPointPairs)
 Calculate the two means of a set of Point3 pairs. More...
 
std::pair< Pose2, bool > moveWithBounce (const Pose2 &cur_pose, double step_size, const std::vector< SimWall2D > walls, Sampler &angle_drift, Sampler &reflect_noise, const Rot2 &bias)
 
Key mrsymbol (unsigned char c, unsigned char label, size_t j)
 
unsigned char mrsymbolChr (Key key)
 
size_t mrsymbolIndex (Key key)
 
unsigned char mrsymbolLabel (Key key)
 
template<class S , class V >
boost::tuple< V, intnonlinearConjugateGradient (const S &system, const V &initial, const NonlinearOptimizerParams &params, const bool singleIteration, const bool gradientDescent=false)
 
double norm2 (const Point2 &p, OptionalJacobian< 1, 2 > H=boost::none)
 Distance of the point from the origin, with Jacobian. More...
 
double norm3 (const Point3 &p, OptionalJacobian< 1, 3 > H=boost::none)
 Distance of the point from the origin, with Jacobian. More...
 
Point3 normalize (const Point3 &p, OptionalJacobian< 3, 3 > H=boost::none)
 normalize, with optional Jacobian More...
 
static void normalize (Signature::Row &row)
 
template<size_t d>
static size_t NrUnknowns (const typename ShonanAveraging< d >::Measurements &measurements)
 
template<class Y , class X , int N = traits<X>::dimension>
internal::FixedSizeMatrix< Y, X >::type numericalDerivative11 (boost::function< Y(const X &)> h, const X &x, double delta=1e-5)
 New-style numerical derivatives using manifold_traits. More...
 
template<class Y , class X >
internal::FixedSizeMatrix< Y, X >::type numericalDerivative11 (Y(*h)(const X &), const X &x, double delta=1e-5)
 
template<class Y , class X1 , class X2 , int N = traits<X1>::dimension>
internal::FixedSizeMatrix< Y, X1 >::type numericalDerivative21 (const boost::function< Y(const X1 &, const X2 &)> &h, const X1 &x1, const X2 &x2, double delta=1e-5)
 
template<class Y , class X1 , class X2 >
internal::FixedSizeMatrix< Y, X1 >::type numericalDerivative21 (Y(*h)(const X1 &, const X2 &), const X1 &x1, const X2 &x2, double delta=1e-5)
 
template<class Y , class X1 , class X2 , int N = traits<X2>::dimension>
internal::FixedSizeMatrix< Y, X2 >::type numericalDerivative22 (boost::function< Y(const X1 &, const X2 &)> h, const X1 &x1, const X2 &x2, double delta=1e-5)
 
template<class Y , class X1 , class X2 >
internal::FixedSizeMatrix< Y, X2 >::type numericalDerivative22 (Y(*h)(const X1 &, const X2 &), const X1 &x1, const X2 &x2, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , int N = traits<X1>::dimension>
internal::FixedSizeMatrix< Y, X1 >::type numericalDerivative31 (boost::function< Y(const X1 &, const X2 &, const X3 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< Y, X1 >::type numericalDerivative31 (Y(*h)(const X1 &, const X2 &, const X3 &), const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , int N = traits<X2>::dimension>
internal::FixedSizeMatrix< Y, X2 >::type numericalDerivative32 (boost::function< Y(const X1 &, const X2 &, const X3 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< Y, X2 >::type numericalDerivative32 (Y(*h)(const X1 &, const X2 &, const X3 &), const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , int N = traits<X3>::dimension>
internal::FixedSizeMatrix< Y, X3 >::type numericalDerivative33 (boost::function< Y(const X1 &, const X2 &, const X3 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< Y, X3 >::type numericalDerivative33 (Y(*h)(const X1 &, const X2 &, const X3 &), const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , int N = traits<X1>::dimension>
internal::FixedSizeMatrix< Y, X1 >::type numericalDerivative41 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 >
internal::FixedSizeMatrix< Y, X1 >::type numericalDerivative41 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , int N = traits<X2>::dimension>
internal::FixedSizeMatrix< Y, X2 >::type numericalDerivative42 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 >
internal::FixedSizeMatrix< Y, X2 >::type numericalDerivative42 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , int N = traits<X3>::dimension>
internal::FixedSizeMatrix< Y, X3 >::type numericalDerivative43 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 >
internal::FixedSizeMatrix< Y, X3 >::type numericalDerivative43 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , int N = traits<X4>::dimension>
internal::FixedSizeMatrix< Y, X4 >::type numericalDerivative44 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 >
internal::FixedSizeMatrix< Y, X4 >::type numericalDerivative44 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , int N = traits<X1>::dimension>
internal::FixedSizeMatrix< Y, X1 >::type numericalDerivative51 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 >
internal::FixedSizeMatrix< Y, X1 >::type numericalDerivative51 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , int N = traits<X2>::dimension>
internal::FixedSizeMatrix< Y, X2 >::type numericalDerivative52 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 >
internal::FixedSizeMatrix< Y, X2 >::type numericalDerivative52 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , int N = traits<X3>::dimension>
internal::FixedSizeMatrix< Y, X3 >::type numericalDerivative53 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 >
internal::FixedSizeMatrix< Y, X3 >::type numericalDerivative53 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , int N = traits<X4>::dimension>
internal::FixedSizeMatrix< Y, X4 >::type numericalDerivative54 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 >
internal::FixedSizeMatrix< Y, X4 >::type numericalDerivative54 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , int N = traits<X5>::dimension>
internal::FixedSizeMatrix< Y, X5 >::type numericalDerivative55 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 >
internal::FixedSizeMatrix< Y, X5 >::type numericalDerivative55 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X1>::dimension>
internal::FixedSizeMatrix< Y, X1 >::type numericalDerivative61 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix< Y, X1 >::type numericalDerivative61 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X2>::dimension>
internal::FixedSizeMatrix< Y, X2 >::type numericalDerivative62 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix< Y, X2 >::type numericalDerivative62 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X3>::dimension>
internal::FixedSizeMatrix< Y, X3 >::type numericalDerivative63 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix< Y, X3 >::type numericalDerivative63 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X4>::dimension>
internal::FixedSizeMatrix< Y, X4 >::type numericalDerivative64 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix< Y, X4 >::type numericalDerivative64 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X5>::dimension>
internal::FixedSizeMatrix< Y, X5 >::type numericalDerivative65 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix< Y, X5 >::type numericalDerivative65 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X6>::dimension>
internal::FixedSizeMatrix< Y, X6 >::type numericalDerivative66 (boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)> h, const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix< Y, X6 >::type numericalDerivative66 (Y(*h)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &), const X1 &x1, const X2 &x2, const X3 &x3, const X4 &x4, const X5 &x5, const X6 &x6, double delta=1e-5)
 
template<class X , int N = traits<X>::dimension>
Eigen::Matrix< double, N, 1 > numericalGradient (boost::function< double(const X &)> h, const X &x, double delta=1e-5)
 Numerically compute gradient of scalar function. More...
 
template<class X >
internal::FixedSizeMatrix< X, X >::type numericalHessian (boost::function< double(const X &)> f, const X &x, double delta=1e-5)
 
template<class X >
internal::FixedSizeMatrix< X, X >::type numericalHessian (double(*f)(const X &), const X &x, double delta=1e-5)
 
template<class X1 , class X2 >
internal::FixedSizeMatrix< X1, X1 >::type numericalHessian211 (boost::function< double(const X1 &, const X2 &)> f, const X1 &x1, const X2 &x2, double delta=1e-5)
 
template<class X1 , class X2 >
internal::FixedSizeMatrix< X1, X1 >::type numericalHessian211 (double(*f)(const X1 &, const X2 &), const X1 &x1, const X2 &x2, double delta=1e-5)
 
template<class X1 , class X2 >
internal::FixedSizeMatrix< X1, X2 >::type numericalHessian212 (boost::function< double(const X1 &, const X2 &)> f, const X1 &x1, const X2 &x2, double delta=1e-5)
 
template<class X1 , class X2 >
internal::FixedSizeMatrix< X1, X2 >::type numericalHessian212 (double(*f)(const X1 &, const X2 &), const X1 &x1, const X2 &x2, double delta=1e-5)
 
template<class X1 , class X2 >
internal::FixedSizeMatrix< X2, X2 >::type numericalHessian222 (boost::function< double(const X1 &, const X2 &)> f, const X1 &x1, const X2 &x2, double delta=1e-5)
 
template<class X1 , class X2 >
internal::FixedSizeMatrix< X2, X2 >::type numericalHessian222 (double(*f)(const X1 &, const X2 &), const X1 &x1, const X2 &x2, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X1, X1 >::type numericalHessian311 (boost::function< double(const X1 &, const X2 &, const X3 &)> f, const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X1, X1 >::type numericalHessian311 (double(*f)(const X1 &, const X2 &, const X3 &), const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X1, X2 >::type numericalHessian312 (boost::function< double(const X1 &, const X2 &, const X3 &)> f, const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X1, X2 >::type numericalHessian312 (double(*f)(const X1 &, const X2 &, const X3 &), const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X1, X3 >::type numericalHessian313 (boost::function< double(const X1 &, const X2 &, const X3 &)> f, const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X1, X3 >::type numericalHessian313 (double(*f)(const X1 &, const X2 &, const X3 &), const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X2, X2 >::type numericalHessian322 (boost::function< double(const X1 &, const X2 &, const X3 &)> f, const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X2, X2 >::type numericalHessian322 (double(*f)(const X1 &, const X2 &, const X3 &), const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X2, X3 >::type numericalHessian323 (boost::function< double(const X1 &, const X2 &, const X3 &)> f, const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X2, X3 >::type numericalHessian323 (double(*f)(const X1 &, const X2 &, const X3 &), const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X3, X3 >::type numericalHessian333 (boost::function< double(const X1 &, const X2 &, const X3 &)> f, const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix< X3, X3 >::type numericalHessian333 (double(*f)(const X1 &, const X2 &, const X3 &), const X1 &x1, const X2 &x2, const X3 &x3, double delta=1e-5)
 
Pose3 openGL2gtsam (const Rot3 &R, double tx, double ty, double tz)
 This function converts an openGL camera pose to an GTSAM camera pose. More...
 
Rot3 openGLFixedRotation ()
 
bool operator!= (const Matrix &A, const Matrix &B)
 
GTSAM_EXPORT Signature operator% (const DiscreteKey &key, const std::string &parent)
 
Signature operator% (const DiscreteKey &key, const string &parent)
 
Signature operator% (const DiscreteKey &key, const Signature::Table &parent)
 
DiscreteKeys operator& (const DiscreteKey &key1, const DiscreteKey &key2)
 Create a list from two keys. More...
 
Point2 operator* (double s, const Point2 &p)
 multiply with scalar More...
 
template<typename T >
Expression< Toperator* (const Expression< T > &expression1, const Expression< T > &expression2)
 Construct a product expression, assumes T::compose(T) -> T. More...
 
template<typename T >
ScalarMultiplyExpression< Toperator* (double s, const Expression< T > &e)
 
VectorValues operator* (const double a, const VectorValues &v)
 
template<typename T >
BinarySumExpression< Toperator+ (const Expression< T > &e1, const Expression< T > &e2)
 
template<typename T >
BinarySumExpression< Toperator- (const Expression< T > &e1, const Expression< T > &e2)
 Construct an expression that subtracts one expression from another. More...
 
std::ostream & operator<< (std::ostream &os, const Cal3_S2Stereo &cal)
 
std::ostream & operator<< (std::ostream &stream, const ImuMeasurement &meas)
 
std::ostream & operator<< (std::ostream &os, const Cal3_S2 &cal)
 
std::ostream & operator<< (std::ostream &os, const Cal3DS2 &cal)
 
ostream & operator<< (ostream &os, const StereoPoint2 &p)
 
std::ostream & operator<< (std::ostream &os, const Cal3DS2_Base &cal)
 
std::ostream & operator<< (std::ostream &os, const Cal3Unified &cal)
 
ostream & operator<< (ostream &os, const PreconditionerParameters &p)
 
ostream & operator<< (ostream &os, const PreintegrationBase &pim)
 
GTSAM_EXPORT std::ostream & operator<< (std::ostream &os, const gtsam::Point3Pair &p)
 
GTSAM_EXPORT std::ostream & operator<< (std::ostream &os, const gtsam::Point2Pair &p)
 
std::ostream & operator<< (std::ostream &os, const Cal3Bundler &cal)
 
std::ostream & operator<< (std::ostream &os, const Cal3 &cal)
 
ostream & operator<< (ostream &os, const IterativeOptimizationParameters &p)
 
std::ostream & operator<< (std::ostream &os, const Pose2 &pose)
 
GTSAM_EXPORT std::ostream & operator<< (std::ostream &os, const Symbol &symbol)
 
ostream & operator<< (ostream &os, const NavState &state)
 
ostream & operator<< (ostream &os, const gtsam::Point3Pair &p)
 
ostream & operator<< (ostream &os, const key_formatter &m)
 
ostream & operator<< (ostream &os, const Signature::Row &row)
 
std::ostream & operator<< (std::ostream &os, const Dih6 &m)
 
ostream & operator<< (ostream &os, const Subgraph::Edge &edge)
 
ostream & operator<< (ostream &os, const StreamedKey &streamedKey)
 
ostream & operator<< (ostream &os, const Signature::Table &table)
 
ostream & operator<< (ostream &os, const EssentialMatrix &E)
 
ostream & operator<< (ostream &os, const gtsam::Point2Pair &p)
 
ostream & operator<< (ostream &os, const Subgraph &subgraph)
 
GTSAM_EXPORT std::ostream & operator<< (std::ostream &os, const LabeledSymbol &symbol)
 
std::ostream & operator<< (std::ostream &os, const ImuFactor &f)
 
GTSAM_EXPORT ostream & operator<< (ostream &os, const VectorValues &v)
 
std::ostream & operator<< (std::ostream &os, const Cal3Fisheye &cal)
 
ostream & operator<< (ostream &os, const SubgraphBuilderParameters &p)
 
std::ostream & operator<< (std::ostream &os, const Unit3 &pair)
 
ostream & operator<< (ostream &os, const Signature &s)
 
std::ostream & operator<< (std::ostream &os, const ImuFactor2 &f)
 
std::ostream & operator<< (std::ostream &os, const CombinedImuFactor &f)
 
std::ostream & operator<< (std::ostream &os, const Similarity3 &p)
 
ostream & operator<< (ostream &os, const Rot3 &R)
 
std::ostream & operator<< (std::ostream &os, const Pose3 &pose)
 
bool operator== (const Matrix &A, const Matrix &B)
 
bool operator== (const Vector &vec1, const Vector &vec2)
 
istream & operator>> (istream &is, EssentialMatrix &E)
 
GTSAM_EXPORT std::istream & operator>> (std::istream &inputStream, Matrix &destinationMatrix)
 
istream & operator>> (istream &inputStream, Matrix &destinationMatrix)
 
istream & operator>> (istream &is, Quaternion &q)
 
istream & operator>> (istream &is, Rot3 &R)
 
istream & operator>> (istream &is, Matrix6 &m)
 
Vector operator^ (const Matrix &A, const Vector &v)
 
Signature operator| (const DiscreteKey &key, const DiscreteKey &parent)
 
Point3 optimize (const NonlinearFactorGraph &graph, const Values &values, Key landmarkKey)
 
size_t optimizeWildfire (const ISAM2Clique::shared_ptr &root, double threshold, const KeySet &keys, VectorValues *delta)
 
size_t optimizeWildfireNonRecursive (const ISAM2Clique::shared_ptr &root, double threshold, const KeySet &keys, VectorValues *delta)
 
FastVector< VariableSlots::const_iterator > orderedSlotsHelper (const Ordering &ordering, const VariableSlots &variableSlots)
 
BetweenFactorPose2s parse2DFactors (const std::string &filename, const noiseModel::Diagonal::shared_ptr &model, size_t maxIndex)
 
BetweenFactorPose3s parse3DFactors (const std::string &filename, const noiseModel::Diagonal::shared_ptr &model, size_t maxIndex)
 
GTSAM_EXPORT boost::optional< IndexedEdgeparseEdge (std::istream &is, const std::string &tag)
 
boost::optional< IndexedEdgeparseEdge (istream &is, const string &tag)
 
template<typename T >
GTSAM_EXPORT std::vector< typename BetweenFactor< T >::shared_ptr > parseFactors (const std::string &filename, const noiseModel::Diagonal::shared_ptr &model=nullptr, size_t maxIndex=0)
 
template<>
std::vector< BetweenFactor< Pose2 >::shared_ptr > parseFactors< Pose2 > (const std::string &filename, const noiseModel::Diagonal::shared_ptr &model, size_t maxIndex)
 
template<>
std::vector< BetweenFactor< Pose3 >::shared_ptr > parseFactors< Pose3 > (const std::string &filename, const noiseModel::Diagonal::shared_ptr &model, size_t maxIndex)
 
template<typename T >
static void parseLines (const string &filename, Parser< T > parse)
 
template<typename T >
GTSAM_EXPORT std::vector< BinaryMeasurement< T > > parseMeasurements (const std::string &filename, const noiseModel::Diagonal::shared_ptr &model=nullptr, size_t maxIndex=0)
 
template<>
std::vector< BinaryMeasurement< Pose2 > > parseMeasurements (const std::string &filename, const noiseModel::Diagonal::shared_ptr &model, size_t maxIndex)
 
template<>
std::vector< BinaryMeasurement< Rot2 > > parseMeasurements (const std::string &filename, const noiseModel::Diagonal::shared_ptr &model, size_t maxIndex)
 
template<>
std::vector< BinaryMeasurement< Pose3 > > parseMeasurements (const std::string &filename, const noiseModel::Diagonal::shared_ptr &model, size_t maxIndex)
 
template<>
std::vector< BinaryMeasurement< Rot3 > > parseMeasurements (const std::string &filename, const noiseModel::Diagonal::shared_ptr &model, size_t maxIndex)
 
template<typename T >
map< size_t, TparseToMap (const string &filename, Parser< pair< size_t, T >> parse, size_t maxIndex)
 
template<typename T >
static vector< TparseToVector (const string &filename, Parser< T > parse)
 
template<typename T >
GTSAM_EXPORT std::map< size_t, TparseVariables (const std::string &filename, size_t maxIndex=0)
 
template<>
std::map< size_t, Point2parseVariables< Point2 > (const std::string &filename, size_t maxIndex)
 
template<>
std::map< size_t, Point3parseVariables< Point3 > (const std::string &filename, size_t maxIndex)
 
template<>
std::map< size_t, Pose2parseVariables< Pose2 > (const std::string &filename, size_t maxIndex)
 
template<>
std::map< size_t, Pose3parseVariables< Pose3 > (const std::string &filename, size_t maxIndex)
 
GTSAM_EXPORT boost::optional< IndexedLandmarkparseVertexLandmark (std::istream &is, const std::string &tag)
 
boost::optional< IndexedLandmarkparseVertexLandmark (istream &is, const string &tag)
 
boost::optional< pair< size_t, Point3 > > parseVertexPoint3 (istream &is, const string &tag)
 
GTSAM_EXPORT boost::optional< IndexedPoseparseVertexPose (std::istream &is, const std::string &tag)
 
boost::optional< IndexedPoseparseVertexPose (istream &is, const string &tag)
 
boost::optional< pair< size_t, Pose3 > > parseVertexPose3 (istream &is, const string &tag)
 
static Vector perturb (const Vector &initialVector)
 
Point3_ position (const NavState_ &X)
 
static bool PowerMinimumEigenValue (const Sparse &A, const Matrix &S, double &minEigenValue, Vector *minEigenVector=0, size_t *numIterations=0, size_t maxIterations=1000, double minEigenvalueNonnegativityTolerance=10e-4)
 MINIMUM EIGENVALUE COMPUTATIONS. More...
 
template<class S , class V >
V preconditionedConjugateGradient (const S &system, const V &initial, const ConjugateGradientParameters &parameters)
 
template<class G , class V , class KEY >
boost::tuple< G, V, std::map< KEY, V > > predecessorMap2Graph (const PredecessorMap< KEY > &p_map)
 
template<class KEY >
std::list< KEY > predecessorMap2Keys (const PredecessorMap< KEY > &p_map)
 
template<class CONTAINER >
void Print (const CONTAINER &keys, const string &s, const KeyFormatter &keyFormatter)
 
GTSAM_EXPORT void print (const Errors &a, const std::string &s="Error")
 
void print (float v, const std::string &s="")
 
void print (double v, const std::string &s="")
 
void print (const Vector &v, const string &s, ostream &stream)
 
void print (const Vector &v, const string &s)
 
GTSAM_EXPORT void print (const Vector &v, const std::string &s, std::ostream &stream)
 
GTSAM_EXPORT void print (const Vector &v, const std::string &s="")
 
void print (const Errors &a, const string &s)
 
void print (const Matrix &A, const string &s, ostream &stream)
 
GTSAM_EXPORT void print (const Matrix &A, const std::string &s, std::ostream &stream)
 
GTSAM_EXPORT void print (const Matrix &A, const std::string &s="")
 
void print (const Matrix &A, const string &s)
 
void PrintKey (Key key, const string &s, const KeyFormatter &keyFormatter)
 Utility function to print one key with optional prefix. More...
 
GTSAM_EXPORT void PrintKey (Key key, const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter)
 Utility function to print one key with optional prefix. More...
 
void PrintKeyList (const KeyList &keys, const string &s, const KeyFormatter &keyFormatter)
 Utility function to print sets of keys with optional prefix. More...
 
GTSAM_EXPORT void PrintKeyList (const KeyList &keys, const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter)
 Utility function to print sets of keys with optional prefix. More...
 
void PrintKeySet (const KeySet &keys, const string &s, const KeyFormatter &keyFormatter)
 Utility function to print sets of keys with optional prefix. More...
 
GTSAM_EXPORT void PrintKeySet (const KeySet &keys, const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter)
 Utility function to print sets of keys with optional prefix. More...
 
void PrintKeyVector (const KeyVector &keys, const string &s, const KeyFormatter &keyFormatter)
 Utility function to print sets of keys with optional prefix. More...
 
GTSAM_EXPORT void PrintKeyVector (const KeyVector &keys, const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter)
 Utility function to print sets of keys with optional prefix. More...
 
template<class MATRIX >
MATRIX prod (const MATRIX &A, const MATRIX &B)
 
Point2_ project (const Point3_ &p_cam)
 Expression version of PinholeBase::Project. More...
 
Point2_ project (const Unit3_ &p_cam)
 
template<class CAMERA , class POINT >
Point2_ project2 (const Expression< CAMERA > &camera_, const Expression< POINT > &p_)
 
template<class CALIBRATION , class POINT >
Point2_ project3 (const Pose3_ &x, const Expression< POINT > &p, const Expression< CALIBRATION > &K)
 
pair< Matrix, Matrixqr (const Matrix &A)
 
GTSAM_EXPORT bool readBAL (const std::string &filename, SfmData &data)
 This function parses a "Bundle Adjustment in the Large" (BAL) file and stores the data into a SfmData structure. More...
 
GTSAM_EXPORT SfmData readBal (const std::string &filename)
 This function parses a "Bundle Adjustment in the Large" (BAL) file and returns the data as a SfmData structure. Mainly used by wrapped code. More...
 
bool readBAL (const string &filename, SfmData &data)
 This function parses a "Bundle Adjustment in the Large" (BAL) file and stores the data into a SfmData structure. More...
 
SfmData readBal (const string &filename)
 This function parses a "Bundle Adjustment in the Large" (BAL) file and returns the data as a SfmData structure. Mainly used by wrapped code. More...
 
GTSAM_EXPORT bool readBundler (const std::string &filename, SfmData &data)
 This function parses a bundler output file and stores the data into a SfmData structure. More...
 
bool readBundler (const string &filename, SfmData &data)
 This function parses a bundler output file and stores the data into a SfmData structure. More...
 
GTSAM_EXPORT GraphAndValues readG2o (const std::string &g2oFile, const bool is3D=false, KernelFunctionType kernelFunctionType=KernelFunctionTypeNONE)
 This function parses a g2o file and stores the measurements into a NonlinearFactorGraph and the initial guess in a Values structure. More...
 
GraphAndValues readG2o (const string &g2oFile, const bool is3D, KernelFunctionType kernelFunctionType)
 This function parses a g2o file and stores the measurements into a NonlinearFactorGraph and the initial guess in a Values structure. More...
 
void recursiveMarkAffectedKeys (const Key &key, const ISAM2Clique::shared_ptr &clique, std::set< Key > &additionalKeys)
 
template<int OutM, int OutN, int OutOptions, int InM, int InN, int InOptions>
Reshape< OutM, OutN, OutOptions, InM, InN, InOptions >::ReshapedType reshape (const Eigen::Matrix< double, InM, InN, InOptions > &m)
 
Point3_ rotate (const Rot3_ &x, const Point3_ &p)
 
Unit3_ rotate (const Rot3_ &x, const Unit3_ &p)
 
Rot3_ rotation (const Pose3_ &pose)
 
template<size_t d>
static Matrix RoundSolutionS (const Matrix &S)
 
template<class MATRIX >
const MATRIX::ConstRowXpr row (const MATRIX &A, size_t j)
 
pair< Matrix3, Vector3RQ (const Matrix3 &A, OptionalJacobian< 3, 9 > H)
 
Matrix RtR (const Matrix &A)
 
void save (const Vector &v, const string &s, const string &filename)
 
GTSAM_EXPORT void save (const Vector &A, const std::string &s, const std::string &filename)
 
GTSAM_EXPORT void save (const Matrix &A, const std::string &s, const std::string &filename)
 
void save (const Matrix &A, const string &s, const string &filename)
 
GTSAM_EXPORT void save2D (const NonlinearFactorGraph &graph, const Values &config, const noiseModel::Diagonal::shared_ptr model, const std::string &filename)
 
void save2D (const NonlinearFactorGraph &graph, const Values &config, const noiseModel::Diagonal::shared_ptr model, const string &filename)
 
void scal (double alpha, Vector &x)
 
static Scatter scatterFromValues (const Values &values)
 
static Scatter scatterFromValues (const Values &values, const Ordering &ordering)
 
template<class Archive >
void serialize (Archive &ar, SO4 &Q, const unsigned int)
 
template<class Archive >
void serialize (Archive &ar, SO3 &R, const unsigned int)
 
template<class Archive >
void serialize (Archive &ar, SOn &Q, const unsigned int file_version)
 
std::string serializeGraph (const NonlinearFactorGraph &graph)
 
bool serializeGraphToFile (const NonlinearFactorGraph &graph, const std::string &fname)
 
bool serializeGraphToXMLFile (const NonlinearFactorGraph &graph, const std::string &fname, const std::string &name="graph")
 
std::string serializeGraphXML (const NonlinearFactorGraph &graph, const std::string &name="graph")
 
std::string serializeValues (const Values &values)
 
bool serializeValuesToFile (const Values &values, const std::string &fname)
 
bool serializeValuesToXMLFile (const Values &values, const std::string &fname, const std::string &name="values")
 
std::string serializeValuesXML (const Values &values, const std::string &name="values")
 
static void setSubvector (const Vector &src, const KeyInfo &keyInfo, const KeyVector &keys, Vector &dst)
 
Matrix3 skewSymmetric (double wx, double wy, double wz)
 
template<class Derived >
Matrix3 skewSymmetric (const Eigen::MatrixBase< Derived > &w)
 
template<typename Container >
static vector< size_tsort_idx (const Container &src)
 
SparseEigen sparseJacobianEigen (const GaussianFactorGraph &gfg, const Ordering &ordering)
 Constructs an Eigen-format SparseMatrix of a GaussianFactorGraph. More...
 
SparseEigen sparseJacobianEigen (const GaussianFactorGraph &gfg)
 
static bool SparseMinimumEigenValue (const Sparse &A, const Matrix &S, double *minEigenValue, Vector *minEigenVector=0, size_t *numIterations=0, size_t maxIterations=1000, double minEigenvalueNonnegativityTolerance=10e-4, Eigen::Index numLanczosVectors=20)
 
template<class G , class KEY , class FACTOR2 >
void split (const G &g, const PredecessorMap< KEY > &tree, G &Ab1, G &Ab2)
 
std::pair< GaussianFactorGraph::shared_ptr, GaussianFactorGraph::shared_ptrsplitFactorGraph (const GaussianFactorGraph &factorGraph, const Subgraph &subgraph)
 
Matrix stack (size_t nrMatrices,...)
 
Matrix stack (const std::vector< Matrix > &blocks)
 
Vector steepestDescent (const System &Ab, const Vector &x, const ConjugateGradientParameters &parameters)
 
Vector steepestDescent (const Matrix &A, const Vector &b, const Vector &x, const ConjugateGradientParameters &parameters)
 
VectorValues steepestDescent (const GaussianFactorGraph &fg, const VectorValues &x, const ConjugateGradientParameters &parameters)
 
GTSAM_EXPORT Vector steepestDescent (const System &Ab, const Vector &x, const IterativeOptimizationParameters &parameters)
 
GTSAM_EXPORT Matrix43 stiefel (const SO4 &Q, OptionalJacobian< 12, 6 > H)
 
template<class MATRIX >
Eigen::Block< const MATRIX > sub (const MATRIX &A, size_t i1, size_t i2, size_t j1, size_t j2)
 
void svd (const Matrix &A, Matrix &U, Vector &S, Matrix &V)
 
Key symbol (unsigned char c, std::uint64_t j)
 
unsigned char symbolChr (Key key)
 
std::uint64_t symbolIndex (Key key)
 
void synchronize (ConcurrentFilter &filter, ConcurrentSmoother &smoother)
 
 TEST (LPInitSolver, InfiniteLoopSingleVar)
 
 TEST (LPInitSolver, InfiniteLoopMultiVar)
 
 TEST (LPInitSolver, Initialization)
 
template<typename G >
void testChartDerivatives (TestResult &result_, const std::string &name_, const G &t1, const G &t2)
 
template<typename T >
void testDefaultChart (TestResult &result_, const std::string &name_, const T &value)
 
template<typename G >
void testLieGroupDerivatives (TestResult &result_, const std::string &name_, const G &t1, const G &t2)
 
void tictoc_finishedIteration_ ()
 
void tictoc_print2_ ()
 
void tictoc_print_ ()
 
void tictoc_reset_ ()
 
template<class G , class F , class KEY >
SDGraph< KEY > toBoostGraph (const G &graph)
 
GTSAM_EXPORT Matrix3 topLeft (const SO4 &Q, OptionalJacobian< 9, 6 > H)
 
Matrix trans (const Matrix &A)
 
template<class T , class P >
P transform_point (const T &trans, const P &global, boost::optional< Matrix & > Dtrans, boost::optional< Matrix & > Dglobal)
 
Point3_ transformFrom (const Pose3_ &x, const Point3_ &p)
 
Point2_ transformTo (const Pose2_ &x, const Point2_ &p)
 
Point3_ transformTo (const Pose3_ &x, const Point3_ &p)
 
Line3_ transformTo (const Pose3_ &wTc, const Line3_ &wL)
 
Line3 transformTo (const Pose3 &wTc, const Line3 &wL, OptionalJacobian< 4, 6 > Dpose, OptionalJacobian< 4, 4 > Dline)
 
Point3 triangulateDLT (const std::vector< Matrix34, Eigen::aligned_allocator< Matrix34 >> &projection_matrices, const Point2Vector &measurements, double rank_tol)
 
Vector4 triangulateHomogeneousDLT (const std::vector< Matrix34, Eigen::aligned_allocator< Matrix34 >> &projection_matrices, const Point2Vector &measurements, double rank_tol)
 
template<class CALIBRATION >
Point3 triangulateNonlinear (const std::vector< Pose3 > &poses, boost::shared_ptr< CALIBRATION > sharedCal, const Point2Vector &measurements, const Point3 &initialEstimate)
 
template<class CAMERA >
Point3 triangulateNonlinear (const CameraSet< CAMERA > &cameras, const typename CAMERA::MeasurementVector &measurements, const Point3 &initialEstimate)
 
template<class CALIBRATION >
Point3 triangulatePoint3 (const std::vector< Pose3 > &poses, boost::shared_ptr< CALIBRATION > sharedCal, const Point2Vector &measurements, double rank_tol=1e-9, bool optimize=false)
 
template<class CAMERA >
Point3 triangulatePoint3 (const CameraSet< CAMERA > &cameras, const typename CAMERA::MeasurementVector &measurements, double rank_tol=1e-9, bool optimize=false)
 
template<class CALIBRATION >
Point3 triangulatePoint3 (const CameraSet< PinholeCamera< CALIBRATION > > &cameras, const Point2Vector &measurements, double rank_tol=1e-9, bool optimize=false)
 Pinhole-specific version. More...
 
template<class CAMERA >
TriangulationResult triangulateSafe (const CameraSet< CAMERA > &cameras, const typename CAMERA::MeasurementVector &measured, const TriangulationParameters &params)
 triangulateSafe: extensive checking of the outcome More...
 
template<class CALIBRATION >
std::pair< NonlinearFactorGraph, ValuestriangulationGraph (const std::vector< Pose3 > &poses, boost::shared_ptr< CALIBRATION > sharedCal, const Point2Vector &measurements, Key landmarkKey, const Point3 &initialEstimate)
 
template<class CAMERA >
std::pair< NonlinearFactorGraph, ValuestriangulationGraph (const CameraSet< CAMERA > &cameras, const typename CAMERA::MeasurementVector &measurements, Key landmarkKey, const Point3 &initialEstimate)
 
template<class CALIBRATION >
Point2_ uncalibrate (const Expression< CALIBRATION > &K, const Point2_ &xy_hat)
 
Point3_ unrotate (const Rot3_ &x, const Point3_ &p)
 
Unit3_ unrotate (const Rot3_ &x, const Unit3_ &p)
 
static Vector9 vec3 (const Matrix3 &R)
 
static SO4::VectorN2 vec4 (const Matrix4 &Q)
 
Matrix vector_scale (const Vector &v, const Matrix &A, bool inf_mask)
 
Matrix vector_scale (const Matrix &A, const Vector &v, bool inf_mask)
 
void vector_scale_inplace (const Vector &v, Matrix &A, bool inf_mask)
 
Velocity3_ velocity (const NavState_ &X)
 
template<class T >
Matrix wedge (const Vector &x)
 
template<>
Matrix wedge< Pose2 > (const Vector &xi)
 
template<>
Matrix wedge< Pose3 > (const Vector &xi)
 
template<>
Matrix wedge< Similarity3 > (const Vector &xi)
 
list< boost::tuple< Vector, double, double > > weighted_eliminate (Matrix &A, Vector &b, const Vector &sigmas)
 
double weightedPseudoinverse (const Vector &a, const Vector &weights, Vector &pseudo)
 
pair< Vector, double > weightedPseudoinverse (const Vector &a, const Vector &weights)
 
GTSAM_EXPORT bool writeBAL (const std::string &filename, SfmData &data)
 This function writes a "Bundle Adjustment in the Large" (BAL) file from a SfmData structure. More...
 
bool writeBAL (const string &filename, SfmData &data)
 This function writes a "Bundle Adjustment in the Large" (BAL) file from a SfmData structure. More...
 
GTSAM_EXPORT bool writeBALfromValues (const std::string &filename, const SfmData &data, Values &values)
 This function writes a "Bundle Adjustment in the Large" (BAL) file from a SfmData structure and a value structure (measurements are the same as the SfM input data, while camera poses and values are read from Values) More...
 
bool writeBALfromValues (const string &filename, const SfmData &data, Values &values)
 This function writes a "Bundle Adjustment in the Large" (BAL) file from a SfmData structure and a value structure (measurements are the same as the SfM input data, while camera poses and values are read from Values) More...
 
GTSAM_EXPORT void writeG2o (const NonlinearFactorGraph &graph, const Values &estimate, const std::string &filename)
 This function writes a g2o file from NonlinearFactorGraph and a Values structure. More...
 
void writeG2o (const NonlinearFactorGraph &graph, const Values &estimate, const string &filename)
 This function writes a g2o file from NonlinearFactorGraph and a Values structure. More...
 
template<class MATRIX >
void zeroBelowDiagonal (MATRIX &A, size_t cols=0)
 
Standard serialization

Serialization in default compressed format

template<class T >
void serializeToStream (const T &input, std::ostream &out_archive_stream)
 
template<class T >
void deserializeFromStream (std::istream &in_archive_stream, T &output)
 deserializes from a stream More...
 
template<class T >
std::string serializeToString (const T &input)
 serializes to a string More...
 
template<class T >
void deserializeFromString (const std::string &serialized, T &output)
 deserializes from a string More...
 
template<class T >
bool serializeToFile (const T &input, const std::string &filename)
 serializes to a file More...
 
template<class T >
bool deserializeFromFile (const std::string &filename, T &output)
 deserializes from a file More...
 
template<class T >
std::string serialize (const T &input)
 serializes to a string More...
 
template<class T >
void deserialize (const std::string &serialized, T &output)
 deserializes from a string More...
 
XML Serialization

Serialization to XML format with named structures

template<class T >
void serializeToXMLStream (const T &input, std::ostream &out_archive_stream, const std::string &name="data")
 
template<class T >
void deserializeFromXMLStream (std::istream &in_archive_stream, T &output, const std::string &name="data")
 deserializes from a stream in XML More...
 
template<class T >
std::string serializeToXMLString (const T &input, const std::string &name="data")
 serializes to a string in XML More...
 
template<class T >
void deserializeFromXMLString (const std::string &serialized, T &output, const std::string &name="data")
 deserializes from a string in XML More...
 
template<class T >
bool serializeToXMLFile (const T &input, const std::string &filename, const std::string &name="data")
 serializes to an XML file More...
 
template<class T >
bool deserializeFromXMLFile (const std::string &filename, T &output, const std::string &name="data")
 deserializes from an XML file More...
 
template<class T >
std::string serializeXML (const T &input, const std::string &name="data")
 serializes to a string in XML More...
 
template<class T >
void deserializeXML (const std::string &serialized, T &output, const std::string &name="data")
 deserializes from a string in XML More...
 
Binary Serialization

Serialization to binary format with named structures

template<class T >
void serializeToBinaryStream (const T &input, std::ostream &out_archive_stream, const std::string &name="data")
 
template<class T >
void deserializeFromBinaryStream (std::istream &in_archive_stream, T &output, const std::string &name="data")
 deserializes from a stream in binary More...
 
template<class T >
std::string serializeToBinaryString (const T &input, const std::string &name="data")
 serializes to a string in binary More...
 
template<class T >
void deserializeFromBinaryString (const std::string &serialized, T &output, const std::string &name="data")
 deserializes from a string in binary More...
 
template<class T >
bool serializeToBinaryFile (const T &input, const std::string &filename, const std::string &name="data")
 serializes to a binary file More...
 
template<class T >
bool deserializeFromBinaryFile (const std::string &filename, T &output, const std::string &name="data")
 deserializes from a binary file More...
 
template<class T >
std::string serializeBinary (const T &input, const std::string &name="data")
 serializes to a string in binary More...
 
template<class T >
void deserializeBinary (const std::string &serialized, T &output, const std::string &name="data")
 deserializes from a string in binary More...
 
utility functions
VectorValues buildVectorValues (const Vector &v, const KeyInfo &keyInfo)
 Create VectorValues from a Vector and a KeyInfo class. More...
 
VectorValues buildVectorValues (const Vector &v, const Ordering &ordering, const std::map< Key, size_t > &dimensions)
 Create VectorValues from a Vector. More...
 

Variables

const Gb
 
static const size_t chrBits = sizeof(unsigned char) * 8
 
static const Key chrMask = Key(UCHAR_MAX) << indexBits
 
GTSAM_EXPORT FastMap< std::string, ValueWithDefault< bool, false > > debugFlags
 
static const KeyFormatter DefaultKeyFormatter = &_defaultKeyFormatter
 
static size_t gDummyCount = 0
 
static const size_t indexBits = keyBits - chrBits
 
static const Key indexMask = ~chrMask
 
static double intNoiseVar = 0.0000001
 
static const size_t keyBits = sizeof(Key) * 8
 
static const Vector kGravity = Vector::Unit(3,2)*9.81
 
static const size_t kHeightIndex = 5
 
static const Matrix3 kIntegrationErrorCovariance = intNoiseVar * I_3x3
 
static const size_t kPitchIndex = 1
 
static const size_t kRollIndex = 0
 
static const std::vector< size_tkVelocityIndices = { 6, 7, 8 }
 
static const size_t kVelocityZIndex = 8
 
const double logSqrt2PI = log(std::sqrt(2.0 * M_PI))
 constant needed below More...
 
const size_t max_it = 100000
 
static const gtsam::KeyFormatter MultiRobotKeyFormatter
 
static const double negativePivotThreshold = -1e-1
 
static const Matrix93 P3
 
static const Eigen::Matrix< double, 16, 6 > P4
 
static const Rot2 R_PI_2 (Rot2::fromCosSin(0., 1.))
 
const G double tol
 
static const int underconstrainedExponentDifference = 12
 
static const double underconstrainedPrior = 1e-5
 
static const Eigen::MatrixBase< Vector2 >::ConstantReturnType Z_2x1 = Vector2::Zero()
 
static const Eigen::MatrixBase< Vector3 >::ConstantReturnType Z_3x1 = Vector3::Zero()
 
static const double zeroPivotThreshold = 1e-6
 

Detailed Description

traits

Global functions in a separate testing namespace

These should not be used outside of tests, as they are just remappings of the original functions. We use these to avoid needing to do too much boost::bind magic or writing a bunch of separate proxy functions.

Don't expect all classes to work for all of these functions.

Matrix is a typedef in the gtsam namespace TODO: make a version to work with matlab wrapping we use the default < double,col_major,unbounded_array<double> >

triangulationFactor.h

Date
March 2, 2014
Author
Frank Dellaert

Typedef Documentation

typedef qi::grammar<boost::spirit::basic_istream_iterator<char> > gtsam::base_grammar

Definition at line 408 of file QPSParser.cpp.

Definition at line 442 of file dataset.cpp.

using gtsam::BetweenFactorPose2s = typedef std::vector<BetweenFactor<Pose2>::shared_ptr>

Definition at line 494 of file dataset.h.

using gtsam::BetweenFactorPose3s = typedef std::vector<BetweenFactor<Pose3>::shared_ptr>

Definition at line 500 of file dataset.h.

Definition at line 506 of file dataset.h.

Definition at line 80 of file slam/expressions.h.

Definition at line 81 of file slam/expressions.h.

Definition at line 55 of file testAdaptAutoDiff.cpp.

Definition at line 501 of file triangulation.h.

Definition at line 500 of file triangulation.h.

Typedef for Matlab wrapping.

Definition at line 254 of file ConcurrentBatchFilter.h.

Typedef for Matlab wrapping.

Definition at line 205 of file ConcurrentBatchSmoother.h.

Typedef for Matlab wrapping.

Definition at line 199 of file ConcurrentIncrementalFilter.h.

Typedef for Matlab wrapping.

Definition at line 169 of file ConcurrentIncrementalSmoother.h.

Definition at line 74 of file base/Matrix.h.

Definition at line 65 of file Vector.h.

typedef ptrdiff_t gtsam::DenseIndex

The index type for Eigen objects.

Definition at line 67 of file types.h.

Definition at line 107 of file testGroup.cpp.

typedef std::pair<Key,size_t> gtsam::DiscreteKey

Key type for discrete conditionals Includes name and cardinality

Definition at line 34 of file DiscreteKey.h.

typedef Expression<double> gtsam::Double_

Definition at line 28 of file nonlinear/expressions.h.

typedef DSF<int> gtsam::DSFInt

Definition at line 210 of file DSF.h.

Definition at line 131 of file DSFMap.h.

Definition at line 356 of file SOn.h.

template<bool B, class T = void>
using gtsam::enable_if_t = typedef typename std::enable_if<B, T>::type

An shorthand alias for accessing the type inside std::enable_if that can be used in a template directly.

Definition at line 31 of file make_shared.h.

Integer nonlinear factor index type.

Definition at line 64 of file types.h.

Definition at line 33 of file Factor.h.

Define collection types:

Define collection type:

Definition at line 32 of file Factor.h.

template<typename T >
using gtsam::FastVector = typedef std::vector<T, typename internal::FastDefaultVectorAllocator<T>::type>

Definition at line 34 of file FastVector.h.

Typedef for matlab wrapping.

Definition at line 134 of file FixedLagSmoother.h.

typedef FixedLagSmootherKeyTimestampMap::value_type gtsam::FixedLagSmootherKeyTimestampMapValue

Definition at line 135 of file FixedLagSmoother.h.

Definition at line 136 of file FixedLagSmoother.h.

Return type for load functions, which return a graph and initial values. For landmarks, the gtsam::Symbol L(index) is used to insert into the Values. Bearing-range measurements also refer to landmarks with L(index).

Definition at line 143 of file dataset.h.

typedef std::pair<std::pair<size_t, size_t>, Pose2> gtsam::IndexedEdge

Definition at line 113 of file dataset.h.

typedef std::pair<size_t, Point2> gtsam::IndexedLandmark

Definition at line 112 of file dataset.h.

typedef std::pair<size_t, Pose2> gtsam::IndexedPose

Return type for auxiliary functions.

Definition at line 111 of file dataset.h.

Definition at line 126 of file DSFMap.h.

Definition at line 130 of file DSFMap.h.

typedef std::vector<IndexPair> gtsam::IndexPairVector

Definition at line 125 of file DSFMap.h.

Definition at line 133 of file ISAM2Params.h.

typedef ISAM2ThresholdMap::value_type gtsam::ISAM2ThresholdMapValue

Definition at line 134 of file ISAM2Params.h.

Integer nonlinear key type.

Definition at line 61 of file types.h.

using gtsam::KeyDimMap = typedef std::map<Key, size_t>

Mapping between variable's key and its corresponding dimensionality.

Definition at line 32 of file LP.h.

typedef std::function<std::string(Key)> gtsam::KeyFormatter

Typedef for a function to format a key, i.e. to convert it to a string.

Definition at line 35 of file Key.h.

Definition at line 91 of file Key.h.

Definition at line 89 of file Key.h.

typedef std::map<std::pair<Key, Key>, double> gtsam::KeyPairDoubleMap

Definition at line 99 of file MFAS.h.

typedef std::map<Key, Rot3> gtsam::KeyRotMap

Definition at line 35 of file InitializePose3.h.

Definition at line 90 of file Key.h.

Define collection type once and for all - also used in wrappers.

Definition at line 86 of file Key.h.

typedef std::map<Key, std::vector<size_t> > gtsam::KeyVectorMap

Definition at line 34 of file InitializePose3.h.

Definition at line 35 of file slam/expressions.h.

Definition at line 77 of file LPSolver.h.

typedef Eigen::MatrixXd gtsam::Matrix

Definition at line 43 of file base/Matrix.h.

Definition at line 44 of file base/Matrix.h.

Definition at line 17 of file navigation/expressions.h.

template<typename T >
using gtsam::Parser = typedef std::function<boost::optional<T>(istream &is, const string &tag)>

Definition at line 119 of file dataset.cpp.

Convenient aliases for Pinhole camera classes with different calibrations. Also needed as forward declarations in the wrapper.

Definition at line 32 of file SimpleCamera.h.

Definition at line 33 of file SimpleCamera.h.

Definition at line 34 of file SimpleCamera.h.

Definition at line 35 of file SimpleCamera.h.

As of GTSAM 4, in order to make GTSAM more lean, it is now possible to just typedef Point2 to Vector2

Definition at line 27 of file Point2.h.

Definition at line 21 of file slam/expressions.h.

typedef std::pair< Point2, Point2 > gtsam::Point2Pair

Calculate pose between a vector of 2D point correspondences (p,q) where q = Pose2::transformFrom(p) = t + R*p

Definition at line 38 of file Point2.h.

Definition at line 42 of file Point2.h.

As of GTSAM 4, in order to make GTSAM more lean, it is now possible to just typedef Point3 to Vector3

Definition at line 35 of file Point3.h.

Definition at line 31 of file slam/expressions.h.

using gtsam::Point3Pair = typedef std::pair<Point3, Point3>

Definition at line 38 of file Point3.h.

typedef vector< Point3Pair > gtsam::Point3Pairs

Definition at line 41 of file Point3.h.

Definition at line 23 of file slam/expressions.h.

Definition at line 34 of file slam/expressions.h.

using gtsam::Pose3Pair = typedef std::pair<Pose3, Pose3>

Definition at line 391 of file Pose3.h.

using gtsam::Pose3Pairs = typedef std::vector<std::pair<Pose3, Pose3> >

Definition at line 392 of file Pose3.h.

typedef std::vector<Pose3> gtsam::Pose3Vector

Definition at line 395 of file Pose3.h.

Definition at line 37 of file CombinedImuFactor.h.

Definition at line 46 of file QPSolver.h.

Definition at line 172 of file geometry/Quaternion.h.

Definition at line 22 of file slam/expressions.h.

Definition at line 33 of file slam/expressions.h.

typedef Eigen::RowVectorXd gtsam::RowVector

Definition at line 25 of file LinearCost.h.

Define the structure for the camera poses.

Definition at line 323 of file dataset.h.

typedef std::pair<size_t, Point2> gtsam::SfmMeasurement

A measurement with its camera index.

Definition at line 214 of file dataset.h.

Definition at line 737 of file NoiseModel.h.

Definition at line 736 of file NoiseModel.h.

Definition at line 735 of file NoiseModel.h.

Definition at line 738 of file NoiseModel.h.

Note, deliberately not in noiseModel namespace. Deprecated. Only for compatibility with previous version.

Definition at line 734 of file NoiseModel.h.

Definition at line 104 of file ShonanAveraging.h.

Definition at line 105 of file ShonanAveraging.h.

using gtsam::ShonanFactor2 = typedef ShonanFactor<2>

Definition at line 88 of file ShonanFactor.h.

using gtsam::ShonanFactor3 = typedef ShonanFactor<3>

Definition at line 89 of file ShonanFactor.h.

typedef std::pair<size_t, size_t> gtsam::SiftIndex

Sift index for SfmTrack.

Definition at line 217 of file dataset.h.

Definition at line 131 of file SimPolygon2D.h.

typedef std::vector<SimWall2D> gtsam::SimWall2DVector

Definition at line 69 of file SimWall2D.h.

Definition at line 42 of file SmartStereoProjectionFactor.h.

using gtsam::SO3 = typedef SO<3>

Definition at line 34 of file SO3.h.

using gtsam::SO4 = typedef SO<4>

Definition at line 34 of file SO4.h.

using gtsam::SOn = typedef SO<Eigen::Dynamic>

Definition at line 335 of file SOn.h.

Definition at line 26 of file AcceleratedPowerMethod.h.

Eigen-format sparse matrix. Note: ColMajor is ~20% faster since InnerIndices must be sorted

Definition at line 35 of file SparseEigen.h.

using gtsam::SparseTriplets = typedef std::vector<std::tuple<int, int, double> >

Definition at line 103 of file GaussianFactorGraph.cpp.

Definition at line 62 of file DoglegOptimizer.cpp.

Definition at line 162 of file StereoPoint2.h.

Definition at line 73 of file base/Matrix.h.

Definition at line 64 of file Vector.h.

Definition at line 193 of file NonlinearOptimizerParams.h.

Definition at line 32 of file slam/expressions.h.

typedef Eigen::VectorXd gtsam::Vector

Definition at line 38 of file Vector.h.

typedef Eigen::Matrix<double, 1, 1> gtsam::Vector1

Definition at line 41 of file Vector.h.

Definition at line 29 of file nonlinear/expressions.h.

typedef Eigen::Vector2d gtsam::Vector2

Definition at line 42 of file Vector.h.

Definition at line 30 of file nonlinear/expressions.h.

typedef Eigen::Vector3d gtsam::Vector3

Definition at line 43 of file Vector.h.

Definition at line 31 of file nonlinear/expressions.h.

typedef Expression<Vector4> gtsam::Vector4_

Definition at line 32 of file nonlinear/expressions.h.

typedef Expression<Vector5> gtsam::Vector5_

Definition at line 33 of file nonlinear/expressions.h.

typedef Expression<Vector6> gtsam::Vector6_

Definition at line 34 of file nonlinear/expressions.h.

typedef Expression<Vector7> gtsam::Vector7_

Definition at line 35 of file nonlinear/expressions.h.

typedef Expression<Vector8> gtsam::Vector8_

Definition at line 36 of file nonlinear/expressions.h.

typedef Expression<Vector9> gtsam::Vector9_

Definition at line 37 of file nonlinear/expressions.h.

Velocity is currently typedef'd to Vector3.

Syntactic sugar to clarify components.

Definition at line 28 of file NavState.h.

Definition at line 18 of file navigation/expressions.h.

template<typename... >
using gtsam::void_t = typedef void

Convenience void_t as we assume C++11, it will not conflict the std one in C++17 as this is in gtsam::

Definition at line 238 of file types.h.

Enumeration Type Documentation

How to manage degeneracy.

Enumerator
IGNORE_DEGENERACY 
ZERO_ON_DEGENERACY 
HANDLE_INFINITY 

Definition at line 35 of file SmartFactorParams.h.

Choice of robust loss function for GNC.

Enumerator
GM 
TLS 

Definition at line 36 of file GncParams.h.

Robust kernel type to wrap around quadratic noise model.

Enumerator
KernelFunctionTypeNONE 
KernelFunctionTypeHUBER 
KernelFunctionTypeTUKEY 

Definition at line 74 of file dataset.h.

Linearization mode: what factor to linearize to.

SmartFactorParams: parameters and (linearization/degeneracy) modes for SmartProjection and SmartStereoProjection factors

Enumerator
HESSIAN 
IMPLICIT_SCHUR 
JACOBIAN_Q 
JACOBIAN_SVD 

Definition at line 30 of file SmartFactorParams.h.

Indicates how noise parameters are stored in file.

Enumerator
NoiseFormatG2O 

Information matrix I11, I12, I13, I22, I23, I33.

NoiseFormatTORO 

Information matrix, but inf_ff inf_fs inf_ss inf_rr inf_fr inf_sr.

NoiseFormatGRAPH 

default: toro-style order, but covariance matrix !

NoiseFormatCOV 

Covariance matrix C11, C12, C13, C22, C23, C33.

NoiseFormatAUTO 

Try to guess covariance matrix layout.

Definition at line 65 of file dataset.h.

Function Documentation

GTSAM_EXPORT std::string gtsam::_defaultKeyFormatter ( Key  key)

Definition at line 31 of file Key.cpp.

def gtsam._init ( )
private
This function is to add shims for the long-gone Point2 and Point3 types

Definition at line 6 of file python/gtsam/__init__.py.

GTSAM_EXPORT std::string gtsam::_multirobotKeyFormatter ( Key  key)

Definition at line 45 of file Key.cpp.

template<typename T >
static bool gtsam::_truePredicate ( const T )
static

Definition at line 52 of file Values.h.

boost::optional<Pose2> gtsam::align ( const vector< Point2Pair > &  pairs)

Definition at line 314 of file Pose2.cpp.

GTSAM_EXPORT boost::optional<Pose2> gtsam::align ( const std::vector< Point2Pair > &  pairs)

Definition at line 314 of file Pose2.cpp.

boost::optional<Pose3> gtsam::align ( const Point3Pairs baPointPairs)

Definition at line 410 of file Pose3.cpp.

template<typename Y , typename L >
DecisionTree<L, Y> gtsam::apply ( const DecisionTree< L, Y > &  f,
const typename DecisionTree< L, Y >::Unary &  op 
)

free versions of apply

Definition at line 216 of file DecisionTree.h.

template<typename Y , typename L >
DecisionTree<L, Y> gtsam::apply ( const DecisionTree< L, Y > &  f,
const DecisionTree< L, Y > &  g,
const typename DecisionTree< L, Y >::Binary &  op 
)

Definition at line 222 of file DecisionTree.h.

template<class V1 , class V2 >
bool gtsam::assert_container_equal ( const std::map< V1, V2 > &  expected,
const std::map< V1, V2 > &  actual,
double  tol = 1e-9 
)

Function for comparing maps of testable->testable TODO: replace with more generalized version

Definition at line 117 of file TestableAssertions.h.

template<class V2 >
bool gtsam::assert_container_equal ( const std::map< size_t, V2 > &  expected,
const std::map< size_t, V2 > &  actual,
double  tol = 1e-9 
)

Function for comparing maps of size_t->testable

Definition at line 155 of file TestableAssertions.h.

template<class V1 , class V2 >
bool gtsam::assert_container_equal ( const std::vector< std::pair< V1, V2 > > &  expected,
const std::vector< std::pair< V1, V2 > > &  actual,
double  tol = 1e-9 
)

Function for comparing vector of pairs (testable, testable)

Definition at line 193 of file TestableAssertions.h.

template<class V >
bool gtsam::assert_container_equal ( const V expected,
const V actual,
double  tol = 1e-9 
)

General function for comparing containers of testable objects

Definition at line 233 of file TestableAssertions.h.

template<class V2 >
bool gtsam::assert_container_equality ( const std::map< size_t, V2 > &  expected,
const std::map< size_t, V2 > &  actual 
)

Function for comparing maps of size_t->testable Types are assumed to have operator ==

Definition at line 264 of file TestableAssertions.h.

template<class V >
bool gtsam::assert_container_equality ( const V expected,
const V actual 
)

General function for comparing containers of objects with operator==

Definition at line 302 of file TestableAssertions.h.

bool gtsam::assert_equal ( const Key expected,
const Key actual,
double  tol = 0.0 
)
inline

Equals testing for basic types

Definition at line 34 of file TestableAssertions.h.

GTSAM_EXPORT bool gtsam::assert_equal ( const Matrix A,
const Matrix B,
double  tol = 1e-9 
)

equals with an tolerance, prints out message if unequal

Same, prints if error

Parameters
vec1Vector
vec2Vector
tol1e-9
Returns
bool

Definition at line 42 of file Matrix.cpp.

template<class V >
bool gtsam::assert_equal ( const boost::optional< V > &  expected,
const boost::optional< V > &  actual,
double  tol = 1e-9 
)

Comparisons for boost.optional objects that checks whether objects exist before comparing their values. First version allows for both to be boost::none, but the second, with expected given rather than optional

Concept requirement: V is testable

Definition at line 50 of file TestableAssertions.h.

template<class V >
bool gtsam::assert_equal ( const V expected,
const boost::optional< V > &  actual,
double  tol = 1e-9 
)

Definition at line 66 of file TestableAssertions.h.

GTSAM_EXPORT bool gtsam::assert_equal ( const std::list< Matrix > &  As,
const std::list< Matrix > &  Bs,
double  tol = 1e-9 
)

equals with an tolerance, prints out message if unequal

Definition at line 71 of file Matrix.cpp.

template<class V >
bool gtsam::assert_equal ( const V expected,
const boost::optional< const V & > &  actual,
double  tol = 1e-9 
)

Definition at line 75 of file TestableAssertions.h.

template<class V >
bool gtsam::assert_equal ( const std::vector< V > &  expected,
const std::vector< V > &  actual,
double  tol = 1e-9 
)

Version of assert_equals to work with vectors

Deprecated:
: use container equals instead

Definition at line 88 of file TestableAssertions.h.

template<class V >
bool gtsam::assert_equal ( const V expected,
const V actual,
double  tol = 1e-9 
)

This template works for any type with equals

Definition at line 97 of file Testable.h.

bool gtsam::assert_equal ( const Vector vec1,
const Vector vec2,
double  tol = 1e-9 
)

Same, prints if error

Parameters
vec1Vector
vec2Vector
tol1e-9
Returns
bool

Definition at line 145 of file Vector.cpp.

GTSAM_EXPORT bool gtsam::assert_equal ( const SubVector vec1,
const SubVector vec2,
double  tol = 1e-9 
)

Same, prints if error

Parameters
vec1Vector
vec2Vector
tol1e-9
Returns
bool

Definition at line 163 of file Vector.cpp.

GTSAM_EXPORT bool gtsam::assert_equal ( const ConstSubVector expected,
const ConstSubVector actual,
double  tol 
)

Definition at line 172 of file Vector.cpp.

bool gtsam::assert_equal ( const std::string &  expected,
const std::string &  actual 
)
inline

Compare strings for unit tests

Definition at line 331 of file TestableAssertions.h.

GTSAM_EXPORT bool gtsam::assert_inequal ( const Matrix A,
const Matrix B,
double  tol = 1e-9 
)

inequals with an tolerance, prints out message if within tolerance

Not the same, prints if error

Parameters
vec1Vector
vec2Vector
tol1e-9
Returns
bool

Definition at line 62 of file Matrix.cpp.

bool gtsam::assert_inequal ( const Vector vec1,
const Vector vec2,
double  tol = 1e-9 
)

Not the same, prints if error

Parameters
vec1Vector
vec2Vector
tol1e-9
Returns
bool

Definition at line 154 of file Vector.cpp.

template<class V >
bool gtsam::assert_inequal ( const V expected,
const V actual,
double  tol = 1e-9 
)

Allow for testing inequality

Definition at line 344 of file TestableAssertions.h.

template<class V >
bool gtsam::assert_print_equal ( const std::string &  expected,
const V actual,
const std::string &  s = "" 
)

Capture print function output and compare against string.

Parameters
sOptional string to pass to the print() method.

Definition at line 379 of file TestableAssertions.h.

template<class V >
bool gtsam::assert_stdout_equal ( const std::string &  expected,
const V actual 
)

Capture std out via cout stream and compare against string.

Definition at line 357 of file TestableAssertions.h.

Rot3_ gtsam::attitude ( const NavState_ X)
inline

Definition at line 34 of file navigation/expressions.h.

template<class V1 , class V2 >
void gtsam::axpy ( double  alpha,
const V1 &  x,
V2 &  y 
)
inline

BLAS Level 1 axpy: y <- alpha*x + y

Deprecated:
: use operators instead

Definition at line 217 of file Vector.h.

void gtsam::axpy ( double  alpha,
const Vector x,
SubVector  y 
)
inline

Definition at line 221 of file Vector.h.

template<>
GTSAM_EXPORT void gtsam::axpy< Errors, Errors > ( double  alpha,
const Errors x,
Errors y 
)

BLAS level 2 style

Definition at line 114 of file Errors.cpp.

template<>
void gtsam::axpy< Errors, Errors > ( double  alpha,
const Errors x,
Errors y 
)

BLAS level 2 style

Definition at line 114 of file Errors.cpp.

GTSAM_EXPORT Vector gtsam::backSubstituteLower ( const Matrix L,
const Vector b,
bool  unit = false 
)

backSubstitute L*x=b

Parameters
Lan lower triangular matrix
ban RHS vector
unit,settrue if unit triangular
Returns
the solution x of L*x=b

Definition at line 366 of file Matrix.cpp.

GTSAM_EXPORT Vector gtsam::backSubstituteUpper ( const Matrix U,
const Vector b,
bool  unit = false 
)

backSubstitute U*x=b

Parameters
Uan upper triangular matrix
ban RHS vector
unit,settrue if unit triangular
Returns
the solution x of U*x=b

backSubstitute x'*U=b'

Parameters
Uan upper triangular matrix
ban RHS vector
unit,settrue if unit triangular
Returns
the solution x of x'*U=b'

Definition at line 376 of file Matrix.cpp.

Vector gtsam::backSubstituteUpper ( const Vector b,
const Matrix U,
bool  unit = false 
)

backSubstitute x'*U=b'

Parameters
Uan upper triangular matrix
ban RHS vector
unit,settrue if unit triangular
Returns
the solution x of x'*U=b'

Definition at line 386 of file Matrix.cpp.

template<class T >
T gtsam::BCH ( const T X,
const T Y 
)

AGC: bracket() only appears in Rot3 tests, should this be used elsewhere?

Three term approximation of the Baker-Campbell-Hausdorff formula In non-commutative Lie groups, when composing exp(Z) = exp(X)exp(Y) it is not true that Z = X+Y. Instead, Z can be calculated using the BCH formula: Z = X + Y + [X,Y]/2 + [X-Y,[X,Y]]/12 - [Y,[X,[X,Y]]]/24 http://en.wikipedia.org/wiki/Baker-Campbell-Hausdorff_formula

Definition at line 297 of file Lie.h.

template<typename T >
Expression<T> gtsam::between ( const Expression< T > &  t1,
const Expression< T > &  t2 
)

Definition at line 17 of file nonlinear/expressions.h.

template<class Class >
Class gtsam::between_default ( const Class l1,
const Class l2 
)
inline

These core global functions can be specialized by new Lie types for better performance.Compute l0 s.t. l2=l1*l0

Definition at line 239 of file Lie.h.

gtsam::BOOST_CONCEPT_ASSERT ( (boost::RandomAccessRangeConcept< ListOfOneContainer< int > >)  )
template<typename G >
gtsam::BOOST_CONCEPT_REQUIRES ( ((IsGroup< G >))  ,
(bool)   
) const

Check invariants.

template<typename T >
gtsam::BOOST_CONCEPT_REQUIRES ( ((IsTestable< T >))  ,
(bool)   
) const

Check invariants for Manifold type.

double gtsam::bound ( double  a,
double  min,
double  max 
)

Definition at line 17 of file PoseRTV.cpp.

boost::shared_ptr< GaussianFactorGraph > gtsam::buildFactorSubgraph ( const GaussianFactorGraph gfg,
const Subgraph subgraph,
const bool  clone 
)

Select the factors in a factor graph according to the subgraph.

Definition at line 449 of file SubgraphBuilder.cpp.

VectorValues gtsam::buildVectorValues ( const Vector v,
const Ordering ordering,
const std::map< Key, size_t > &  dimensions 
)

Create VectorValues from a Vector.

Definition at line 140 of file PCGSolver.cpp.

VectorValues gtsam::buildVectorValues ( const Vector v,
const Ordering ordering,
const map< Key, size_t > &  dimensions 
)

Create VectorValues from a Vector.

Definition at line 140 of file PCGSolver.cpp.

VectorValues gtsam::buildVectorValues ( const Vector v,
const KeyInfo keyInfo 
)

Create VectorValues from a Vector and a KeyInfo class.

Definition at line 161 of file PCGSolver.cpp.

static Point3 gtsam::CalculateBestAxis ( const Point3 n)
static

Definition at line 64 of file Unit3.cpp.

template<typename Cal , size_t Dim>
void gtsam::calibrateJacobians ( const Cal &  calibration,
const Point2 pn,
OptionalJacobian< 2, Dim >  Dcal = boost::none,
OptionalJacobian< 2, 2 >  Dp = boost::none 
)

Function which makes use of the Implicit Function Theorem to compute the Jacobians of calibrate using uncalibrate. This is useful when there are iterative operations in the calibrate function which make computing jacobians difficult.

Given f(pi, pn) = uncalibrate(pn) - pi, and g(pi) = calibrate, we can easily compute the Jacobians: df/pi = -I (pn and pi are independent args) Dp = -inv(H_uncal_pn) * df/pi = -inv(H_uncal_pn) * (-I) = inv(H_uncal_pn) Dcal = -inv(H_uncal_pn) * df/K = -inv(H_uncal_pn) * H_uncal_K

Template Parameters
CalCalibration model.
DimThe number of parameters in the calibration model.
Parameters
pCalibrated point.
Dcaloptional 2*p Jacobian wrpt p Cal3DS2 parameters.
Dpoptional 2*2 Jacobian wrpt intrinsic coordinates.

Definition at line 47 of file Cal3.h.

template<typename L >
std::vector<Assignment<L> > gtsam::cartesianProduct ( const std::vector< std::pair< L, size_t > > &  keys)

Get Cartesian product consisting all possible configurations.

Parameters
vectorlist of keys (label,cardinality) pairs.
Returns
vector list of all possible value assignments

This function returns a vector of Assignment values for all possible (Cartesian product) configurations of set of Keys which are nothing but (Label,cardinality) pairs. This function should NOT be called for more than a small number of variables and cardinalities. E.g. For 6 variables with each having cardinalities 4, we get 4096 possible configurations!!

Definition at line 62 of file Assignment.h.

static void gtsam::check ( const SharedNoiseModel noiseModel,
size_t  m 
)
static

Definition at line 88 of file NonlinearFactor.cpp.

template<class CLIQUE >
bool gtsam::check_sharedCliques ( const std::pair< Key, typename BayesTree< CLIQUE >::sharedClique > &  v1,
const std::pair< Key, typename BayesTree< CLIQUE >::sharedClique > &  v2 
)

Definition at line 203 of file BayesTree-inst.h.

GTSAM_EXPORT bool gtsam::checkConvergence ( double  relativeErrorTreshold,
double  absoluteErrorTreshold,
double  errorThreshold,
double  currentError,
double  newError,
NonlinearOptimizerParams::Verbosity  verbosity = NonlinearOptimizerParams::SILENT 
)

Check whether the relative error decrease is less than relativeErrorTreshold, the absolute error decrease is less than absoluteErrorTreshold, or the error itself is less than errorThreshold.

Definition at line 183 of file NonlinearOptimizer.cpp.

GTSAM_EXPORT bool gtsam::checkConvergence ( const NonlinearOptimizerParams params,
double  currentError,
double  newError 
)

Definition at line 235 of file NonlinearOptimizer.cpp.

static double gtsam::Chi2inv ( const double  alpha,
const size_t  dofs 
)
static

Definition at line 38 of file GncOptimizer.h.

GTSAM_EXPORT Matrix gtsam::cholesky_inverse ( const Matrix A)

Return the inverse of a S.P.D. matrix. Inversion is done via Cholesky decomposition.

Definition at line 538 of file Matrix.cpp.

GTSAM_EXPORT std::pair< size_t, bool > gtsam::choleskyCareful ( Matrix ATA,
int  order = -1 
)

"Careful" Cholesky computes the positive square-root of a positive symmetric semi-definite matrix (i.e. that may be rank-deficient). Unlike standard Cholesky, the square-root factor may have all-zero rows for free variables.

Additionally, this function returns the index of the row after the last non-zero row in the computed factor, so that it may be truncated to an upper-trapazoidal matrix.

The second element of the return value is true if the matrix was factored successfully, or false if it was non-positive-semidefinite (i.e. indefinite or negative-(semi-)definite.

Note that this returned index is the rank of the matrix if and only if all of the zero-rows of the factor occur after any non-zero rows. This is (always?) the case during elimination of a fully-constrained least-squares problem.

The optional order argument specifies the size of the square upper-left submatrix to operate on, ignoring the rest of the matrix.

Definition at line 76 of file base/cholesky.cpp.

GTSAM_EXPORT bool gtsam::choleskyPartial ( Matrix ABC,
size_t  nFrontal,
size_t  topleft = 0 
)

Partial Cholesky computes a factor [R S such that [R' 0 [R S = [A B 0 L] S' I] 0 L] B' C]. The input to this function is the matrix ABC = [A B], and the parameter [B' C] nFrontal determines the split between A, B, and C, with A being of size nFrontal x nFrontal.

if non-zero, factorization proceeds in bottom-right corner starting at topleft

Returns
true if the decomposition is successful, false if A was not positive-definite.

Definition at line 108 of file base/cholesky.cpp.

static int gtsam::choleskyStep ( Matrix ATA,
size_t  k,
size_t  order 
)
inlinestatic

Definition at line 36 of file base/cholesky.cpp.

GTSAM_EXPORT boost::optional< Point2 > gtsam::circleCircleIntersection ( double  R_d,
double  r_d,
double  tol 
)

Definition at line 55 of file Point2.cpp.

GTSAM_EXPORT std::list< Point2 > gtsam::circleCircleIntersection ( Point2  c1,
Point2  c2,
boost::optional< Point2 fh 
)

Definition at line 70 of file Point2.cpp.

GTSAM_EXPORT std::list< Point2 > gtsam::circleCircleIntersection ( Point2  c1,
double  r1,
Point2  c2,
double  r2,
double  tol = 1e-9 
)

Intersect 2 circles.

Parameters
c1center of first circle
r1radius of first circle
c2center of second circle
r2radius of second circle
tolabsolute tolerance below which we consider touching circles
Returns
list of solutions (0,1, or 2). Identical circles will return empty list, as well.

Definition at line 99 of file Point2.cpp.

GTSAM_EXPORT Matrix gtsam::collect ( const std::vector< const Matrix * > &  matrices,
size_t  m = 0,
size_t  n = 0 
)

create a matrix by concatenating Given a set of matrices: A1, A2, A3... If all matrices have the same size, specifying single matrix dimensions will avoid the lookup of dimensions

Parameters
matricesis a vector of matrices in the order to be collected
mis the number of rows of a single matrix
nis the number of columns of a single matrix
Returns
combined matrix [A1 A2 A3]

Definition at line 442 of file Matrix.cpp.

GTSAM_EXPORT Matrix gtsam::collect ( size_t  nrMatrices,
  ... 
)

Definition at line 467 of file Matrix.cpp.

template<class LinearGraph >
KeyDimMap gtsam::collectKeyDim ( const LinearGraph &  linearGraph)

Definition at line 38 of file LP.h.

template<class MATRIX >
const MATRIX::ConstColXpr gtsam::column ( const MATRIX &  A,
size_t  j 
)

Extracts a column view from a matrix that avoids a copy

Parameters
Amatrix to extract column from
jindex of the column
Returns
a const view of the matrix

Definition at line 214 of file base/Matrix.h.

GTSAM_EXPORT Vector gtsam::columnNormSquare ( const Matrix A)

Definition at line 223 of file Matrix.cpp.

template<typename T >
Expression<T> gtsam::compose ( const Expression< T > &  t1,
const Expression< T > &  t2 
)

Definition at line 23 of file nonlinear/expressions.h.

template<class G , class Factor , class POSE , class KEY >
boost::shared_ptr< Values > gtsam::composePoses ( const G graph,
const PredecessorMap< KEY > &  tree,
const POSE &  rootPose 
)

Compose the poses by following the chain specified by the spanning tree

Definition at line 174 of file graph-inl.h.

GTSAM_EXPORT Vector gtsam::concatVectors ( const std::list< Vector > &  vs)

concatenate Vectors

Definition at line 302 of file Vector.cpp.

GTSAM_EXPORT Vector gtsam::concatVectors ( size_t  nrVectors,
  ... 
)

concatenate Vectors

Definition at line 320 of file Vector.cpp.

GTSAM_EXPORT Vector gtsam::conjugateGradientDescent ( const System Ab,
const Vector x,
const ConjugateGradientParameters parameters 
)

Method of conjugate gradients (CG), System version

Definition at line 45 of file iterative.cpp.

GTSAM_EXPORT Vector gtsam::conjugateGradientDescent ( const Matrix A,
const Vector b,
const Vector x,
const ConjugateGradientParameters parameters 
)

Method of conjugate gradients (CG), Matrix version

Definition at line 57 of file iterative.cpp.

GTSAM_EXPORT VectorValues gtsam::conjugateGradientDescent ( const GaussianFactorGraph fg,
const VectorValues x,
const ConjugateGradientParameters parameters 
)

Method of conjugate gradients (CG), Gaussian Factor Graph version

Definition at line 70 of file iterative.cpp.

template<class S , class V , class E >
V gtsam::conjugateGradients ( const S &  Ab,
V  x,
const ConjugateGradientParameters parameters,
bool  steepest = false 
)

Method of conjugate gradients (CG) template "System" class S needs gradient(S,v), e=S*v, v=S^e "Vector" class V needs dot(v,v), -v, v+v, s*v "Vector" class E needs dot(v,v)

Parameters
Ab,the"system" that needs to be solved, examples below
xis the initial estimate
steepestflag, if true does steepest descent, not CG

Definition at line 125 of file iterative-inl.h.

static BinaryMeasurement<Rot2> gtsam::convert ( const BinaryMeasurement< Pose2 > &  p)
static

Definition at line 403 of file dataset.cpp.

static BinaryMeasurement<Rot3> gtsam::convert ( const BinaryMeasurement< Pose3 > &  p)
static

Definition at line 886 of file dataset.cpp.

static BinaryMeasurement<Rot3> gtsam::convert ( const BetweenFactor< Pose3 >::shared_ptr &  f)
static

Definition at line 965 of file ShonanAveraging.cpp.

GTSAM_EXPORT SharedNoiseModel gtsam::ConvertNoiseModel ( const SharedNoiseModel model,
size_t  n,
bool  defaultToUnit = true 
)

When creating (any) FrobeniusFactor we can convert a Rot/Pose BetweenFactor noise model into a n-dimensional isotropic noise model used to weight the Frobenius norm. If the noise model passed is null we return a n-dimensional isotropic noise model with sigma=1.0. If not, we we check if the d-dimensional noise model on rotations is isotropic. If it is, we extend to 'n' dimensions, otherwise we throw an error. If the noise model is a robust error model, we use the sigmas of the underlying noise model.

If defaultToUnit == false throws an exception on unexepcted input.

Definition at line 27 of file FrobeniusFactor.cpp.

static GaussianFactorGraph::shared_ptr gtsam::convertToJacobianFactors ( const GaussianFactorGraph gfg)
static

Definition at line 80 of file SubgraphPreconditioner.cpp.

static SharedNoiseModel gtsam::createNoiseModel ( const Vector6  v,
bool  smart,
NoiseFormat  noiseFormat,
KernelFunctionType  kernelFunctionType 
)
static

Definition at line 212 of file dataset.cpp.

boost::shared_ptr< Preconditioner > gtsam::createPreconditioner ( const boost::shared_ptr< PreconditionerParameters params)

Definition at line 186 of file Preconditioner.cpp.

GTSAM_EXPORT std::string gtsam::createRewrittenFileName ( const std::string &  name)

Creates a temporary file name that needs to be ignored in .gitingnore for checking read-write oprations

Definition at line 100 of file dataset.cpp.

string gtsam::createRewrittenFileName ( const std::string &  name)

Creates a temporary file name that needs to be ignored in .gitingnore for checking read-write oprations

Definition at line 100 of file dataset.cpp.

boost::shared_ptr<Sampler> gtsam::createSampler ( const SharedNoiseModel model)

Definition at line 378 of file dataset.cpp.

template<typename T >
std::vector< Expression< T > > gtsam::createUnknowns ( size_t  n,
char  c,
size_t  start = 0 
)

Construct an array of leaves.

Construct an array of unknown expressions with successive symbol keys Example: createUnknowns<Pose2>(3,'x') creates unknown expressions for x0,x1,x2

Definition at line 256 of file Expression-inl.h.

GTSAM_EXPORT Point3 gtsam::cross ( const Point3 p,
const Point3 q,
OptionalJacobian< 3, 3 >  H_p = boost::none,
OptionalJacobian< 3, 3 >  H_q = boost::none 
)

cross product

Returns
this x q

Definition at line 63 of file Point3.cpp.

static Matrix29 gtsam::D2dcalibration ( double  x,
double  y,
double  xx,
double  yy,
double  xy,
double  rr,
double  r4,
double  pnx,
double  pny,
const Matrix2 &  DK 
)
static

Definition at line 57 of file Cal3DS2_Base.cpp.

static Matrix2 gtsam::D2dintrinsic ( double  x,
double  y,
double  rr,
double  g,
double  k1,
double  k2,
double  p1,
double  p2,
const Matrix2 &  DK 
)
static

Definition at line 71 of file Cal3DS2_Base.cpp.

std::string GTSAM_EXPORT gtsam::demangle ( const char *  name)

Pretty print Value type name.

Function to demangle type name of variable, e.g. demangle(typeid(x).name())

Definition at line 37 of file types.cpp.

template<class T >
void gtsam::deserialize ( const std::string &  serialized,
T output 
)

deserializes from a string

Definition at line 106 of file base/serialization.h.

template<class T >
void gtsam::deserializeBinary ( const std::string &  serialized,
T output,
const std::string &  name = "data" 
)

deserializes from a string in binary

Definition at line 253 of file base/serialization.h.

template<class T >
bool gtsam::deserializeFromBinaryFile ( const std::string &  filename,
T output,
const std::string &  name = "data" 
)

deserializes from a binary file

Definition at line 235 of file base/serialization.h.

template<class T >
void gtsam::deserializeFromBinaryStream ( std::istream &  in_archive_stream,
T output,
const std::string &  name = "data" 
)

deserializes from a stream in binary

Definition at line 199 of file base/serialization.h.

template<class T >
void gtsam::deserializeFromBinaryString ( const std::string &  serialized,
T output,
const std::string &  name = "data" 
)

deserializes from a string in binary

Definition at line 216 of file base/serialization.h.

template<class T >
bool gtsam::deserializeFromFile ( const std::string &  filename,
T output 
)

deserializes from a file

Definition at line 90 of file base/serialization.h.

template<class T >
void gtsam::deserializeFromStream ( std::istream &  in_archive_stream,
T output 
)

deserializes from a stream

Definition at line 58 of file base/serialization.h.

template<class T >
void gtsam::deserializeFromString ( const std::string &  serialized,
T output 
)

deserializes from a string

Definition at line 73 of file base/serialization.h.

template<class T >
bool gtsam::deserializeFromXMLFile ( const std::string &  filename,
T output,
const std::string &  name = "data" 
)

deserializes from an XML file

Definition at line 161 of file base/serialization.h.

template<class T >
void gtsam::deserializeFromXMLStream ( std::istream &  in_archive_stream,
T output,
const std::string &  name = "data" 
)

deserializes from a stream in XML

Definition at line 125 of file base/serialization.h.

template<class T >
void gtsam::deserializeFromXMLString ( const std::string &  serialized,
T output,
const std::string &  name = "data" 
)

deserializes from a string in XML

Definition at line 142 of file base/serialization.h.

NonlinearFactorGraph::shared_ptr gtsam::deserializeGraph ( const std::string &  serialized_graph)

Definition at line 216 of file serialization.cpp.

NonlinearFactorGraph::shared_ptr gtsam::deserializeGraphFromFile ( const std::string &  fname)

Definition at line 283 of file serialization.cpp.

NonlinearFactorGraph::shared_ptr gtsam::deserializeGraphFromXMLFile ( const std::string &  fname,
const std::string &  name = "graph" 
)

Definition at line 291 of file serialization.cpp.

NonlinearFactorGraph::shared_ptr gtsam::deserializeGraphXML ( const std::string &  serialized_graph,
const std::string &  name = "graph" 
)

Definition at line 228 of file serialization.cpp.

Values::shared_ptr gtsam::deserializeValues ( const std::string &  serialized_values)

Definition at line 241 of file serialization.cpp.

Values::shared_ptr gtsam::deserializeValuesFromFile ( const std::string &  fname)

Definition at line 300 of file serialization.cpp.

Values::shared_ptr gtsam::deserializeValuesFromXMLFile ( const std::string &  fname,
const std::string &  name = "values" 
)

Definition at line 308 of file serialization.cpp.

Values::shared_ptr gtsam::deserializeValuesXML ( const std::string &  serialized_values,
const std::string &  name = "values" 
)

Definition at line 253 of file serialization.cpp.

template<class T >
void gtsam::deserializeXML ( const std::string &  serialized,
T output,
const std::string &  name = "data" 
)

deserializes from a string in XML

Definition at line 179 of file base/serialization.h.

GTSAM_EXPORT Matrix gtsam::diag ( const std::vector< Matrix > &  Hs)

Create a matrix with submatrices along its diagonal

Definition at line 206 of file Matrix.cpp.

static noiseModel::Diagonal::shared_ptr gtsam::Diagonal ( const Matrix covariance)
static

Definition at line 26 of file ScenarioRunner.h.

GTSAM_EXPORT double gtsam::distance2 ( const Point2 p,
const Point2 q,
OptionalJacobian< 1, 2 >  H1,
OptionalJacobian< 1, 2 >  H2 
)

distance between two points

Definition at line 39 of file Point2.cpp.

GTSAM_EXPORT double gtsam::distance3 ( const Point3 p1,
const Point3 q,
OptionalJacobian< 1, 3 >  H1,
OptionalJacobian< 1, 3 >  H2 
)

distance between two points

Definition at line 26 of file Point3.cpp.

GTSAM_EXPORT boost::tuple< int, double, Vector > gtsam::DLT ( const Matrix A,
double  rank_tol = 1e-9 
)

Direct linear transform algorithm that calls svd to find a vector v that minimizes the algebraic error A*v

Parameters
Aof size m*n, where m>=n (pad with zero rows if not!) Returns rank of A, minimum error (singular value), and corresponding eigenvector (column of V, with A=U*S*V')

Definition at line 567 of file Matrix.cpp.

GTSAM_EXPORT double gtsam::dot ( const Point3 p,
const Point3 q,
OptionalJacobian< 1, 3 >  H1,
OptionalJacobian< 1, 3 >  H2 
)

dot product

Definition at line 71 of file Point3.cpp.

GTSAM_EXPORT double gtsam::dot ( const Errors a,
const Errors b 
)

dot product

Definition at line 99 of file Errors.cpp.

template<class V1 , class V2 >
double gtsam::dot ( const V1 &  a,
const V2 &  b 
)
inline

Dot product

Definition at line 194 of file Vector.h.

GTSAM_EXPORT Vector gtsam::ediv_ ( const Vector a,
const Vector b 
)

elementwise division, but 0/0 = 0, not inf

Parameters
afirst vector
bsecond vector
Returns
vector [a(i)/b(i)]

Definition at line 199 of file Vector.cpp.

GTSAM_EXPORT std::pair< boost::shared_ptr< GaussianConditional >, boost::shared_ptr< HessianFactor > > gtsam::EliminateCholesky ( const GaussianFactorGraph factors,
const Ordering keys 
)

Definition at line 532 of file HessianFactor.cpp.

GTSAM_EXPORT std::pair< boost::shared_ptr< DiscreteConditional >, DecisionTreeFactor::shared_ptr > gtsam::EliminateDiscrete ( const DiscreteFactorGraph factors,
const Ordering keys 
)

Main elimination function for DiscreteFactorGraph

Definition at line 105 of file DiscreteFactorGraph.cpp.

GTSAM_EXPORT std::pair< boost::shared_ptr< GaussianConditional >, boost::shared_ptr< GaussianFactor > > gtsam::EliminatePreferCholesky ( const GaussianFactorGraph factors,
const Ordering keys 
)

Definition at line 555 of file HessianFactor.cpp.

GTSAM_EXPORT std::pair< boost::shared_ptr< GaussianConditional >, boost::shared_ptr< JacobianFactor > > gtsam::EliminateQR ( const GaussianFactorGraph factors,
const Ordering keys 
)

Multiply all factors and eliminate the given keys from the resulting factor using a QR variant that handles constraints (zero sigmas). Computation happens in noiseModel::Gaussian::QR Returns a conditional on those keys, and a new factor on the separator.

Definition at line 797 of file JacobianFactor.cpp.

GTSAM_EXPORT std::pair< boost::shared_ptr< SymbolicConditional >, boost::shared_ptr< SymbolicFactor > > gtsam::EliminateSymbolic ( const SymbolicFactorGraph factors,
const Ordering keys 
)

Dense elimination function for symbolic factors. This is usually provided as an argument to one of the factor graph elimination functions (see EliminateableFactorGraph). The factor graph elimination functions do sparse variable elimination, and use this function to eliminate single variables or variable cliques.

Definition at line 31 of file SymbolicFactor.cpp.

template<class T >
bool gtsam::equal ( const T obj1,
const T obj2,
double  tol 
)
inline

Call equal on the object

Definition at line 83 of file Testable.h.

template<class T >
bool gtsam::equal ( const T obj1,
const T obj2 
)
inline

Call equal without tolerance (use default tolerance)

Definition at line 89 of file Testable.h.

bool gtsam::equal ( const Vector vec1,
const Vector vec2,
double  tol 
)
inline

Override of equal in Lie.h

Definition at line 134 of file Vector.h.

bool gtsam::equal ( const Vector vec1,
const Vector vec2 
)
inline

Override of equal in Lie.h

Definition at line 141 of file Vector.h.

template<class MATRIX >
bool gtsam::equal_with_abs_tol ( const Eigen::DenseBase< MATRIX > &  A,
const Eigen::DenseBase< MATRIX > &  B,
double  tol = 1e-9 
)

equals with a tolerance

Definition at line 84 of file base/Matrix.h.

GTSAM_EXPORT bool gtsam::equal_with_abs_tol ( const Vector vec1,
const Vector vec2,
double  tol = 1e-9 
)

VecA == VecB up to tolerance

Definition at line 123 of file Vector.cpp.

GTSAM_EXPORT bool gtsam::equal_with_abs_tol ( const SubVector vec1,
const SubVector vec2,
double  tol 
)

Definition at line 134 of file Vector.cpp.

template<class T >
T gtsam::expm ( const Vector x,
int  K = 7 
)

Exponential map given exponential coordinates class T needs a wedge<> function and a constructor from Matrix

Parameters
xexponential coordinates, vector of size n @ return a T

Definition at line 316 of file Lie.h.

GTSAM_EXPORT Matrix gtsam::expm ( const Matrix A,
size_t  K = 7 
)

Numerical exponential map, naive approach, not industrial strength !!!

Parameters
Amatrix to exponentiate
Knumber of iterations

Definition at line 588 of file Matrix.cpp.

template<class Class >
Class gtsam::expmap_default ( const Class t,
const Vector d 
)
inline

Exponential map centered at l0, s.t. exp(t,d) = t*exp(d)

Definition at line 251 of file Lie.h.

static ShonanAveraging3::Measurements gtsam::extractRot3Measurements ( const BetweenFactorPose3s factors)
static

Definition at line 979 of file ShonanAveraging.cpp.

GTSAM_EXPORT std::string gtsam::findExampleDataFile ( const std::string &  name)

Find the full path to an example dataset distributed with gtsam. The name may be specified with or without a file extension - if no extension is given, this function first looks for the .graph extension, then .txt. We first check the gtsam source tree for the file, followed by the installed example dataset location. Both the source tree and installed locations are obtained from CMake during compilation.

Returns
The full path and filename to the requested dataset.
Exceptions
std::invalid_argumentif no matching file could be found using the search process described above.

Definition at line 65 of file dataset.cpp.

string gtsam::findExampleDataFile ( const std::string &  name)

Find the full path to an example dataset distributed with gtsam. The name may be specified with or without a file extension - if no extension is given, this function first looks for the .graph extension, then .txt. We first check the gtsam source tree for the file, followed by the installed example dataset location. Both the source tree and installed locations are obtained from CMake during compilation.

Returns
The full path and filename to the requested dataset.
Exceptions
std::invalid_argumentif no matching file could be found using the search process described above.

Definition at line 65 of file dataset.cpp.

template<class T , typename = typename std::enable_if< std::is_same<gtsam::Rot3, T>::value >::type>
T gtsam::FindKarcherMean ( const std::vector< T > &  rotations)

Definition at line 45 of file KarcherMeanFactor-inl.h.

template<class T >
T gtsam::FindKarcherMean ( const std::vector< T, Eigen::aligned_allocator< T >> &  rotations)

Optimize for the Karcher mean, minimizing the geodesic distance to each of the given rotations, by constructing a factor graph out of simple PriorFactors.

Definition at line 50 of file KarcherMeanFactor-inl.h.

template<class T >
T gtsam::FindKarcherMean ( std::initializer_list< T > &&  rotations)

Definition at line 55 of file KarcherMeanFactor-inl.h.

template<class T , class ALLOC >
T gtsam::FindKarcherMeanImpl ( const vector< T, ALLOC > &  rotations)

Definition at line 29 of file KarcherMeanFactor-inl.h.

template<class G , class KEY , class FACTOR2 >
PredecessorMap< KEY > gtsam::findMinimumSpanningTree ( const G g)

find the minimum spanning tree using boost graph library

Definition at line 232 of file graph-inl.h.

std::string gtsam::formatMatrixIndented ( const std::string &  label,
const Matrix matrix,
bool  makeVectorHorizontal 
)

Definition at line 598 of file Matrix.cpp.

GTSAM_EXPORT bool gtsam::fpEqual ( double  a,
double  b,
double  tol,
bool  check_relative_also = true 
)

Ensure we are not including a different version of Eigen in user code than while compiling gtsam, since it can lead to hard-to-understand runtime crashes. Numerically stable function for comparing if floating point values are equal within epsilon tolerance. Used for vector and matrix comparison with C++11 compatible functions.

If either value is NaN or Inf, we check for both values to be NaN or Inf respectively for the comparison to be true. If one is NaN/Inf and the other is not, returns false.

Parameters
check_relative_alsois a flag which toggles additional checking for relative error. This means that if either the absolute error or the relative error is within the tolerance, the result will be true. By default, the flag is true.

Return true if two numbers are close wrt tol.

Definition at line 42 of file Vector.cpp.

static std::vector<Matrix3> gtsam::G3 ( {SO3::Hat(Vector3::Unit(0)), SO3::Hat(Vector3::Unit(1)), SO3::Hat(Vector3::Unit(2))}  )
static
static std::vector<Matrix4, Eigen::aligned_allocator<Matrix4> > gtsam::G4 ( {SO4::Hat(Vector6::Unit(0)), SO4::Hat(Vector6::Unit(1)), SO4::Hat(Vector6::Unit(2)), SO4::Hat(Vector6::Unit(3)), SO4::Hat(Vector6::Unit(4)), SO4::Hat(Vector6::Unit(5))}  )
static
template<class T >
GenericValue<T> gtsam::genericValue ( const T v)

Functional constructor of GenericValue<T> so T can be automatically deduced

Definition at line 212 of file GenericValue.h.

static Vector gtsam::getSubvector ( const Vector src,
const KeyInfo keyInfo,
const KeyVector keys 
)
static

Definition at line 40 of file SubgraphPreconditioner.cpp.

static VectorValues gtsam::gradientInPlace ( const NonlinearFactorGraph nfg,
const Values values 
)
static

Return the gradient vector of a nonlinear factor graph.

Parameters
nfgthe graph
valuesa linearization point Can be moved to NonlinearFactorGraph.h if desired

Definition at line 37 of file NonlinearConjugateGradientOptimizer.cpp.

GTSAM_EXPORT bool gtsam::greaterThanOrEqual ( const Vector v1,
const Vector v2 
)

Greater than or equal to operation returns true if all elements in v1 are greater than corresponding elements in v2

Definition at line 114 of file Vector.cpp.

GTSAM_EXPORT Pose3 gtsam::gtsam2openGL ( const Rot3 R,
double  tx,
double  ty,
double  tz 
)

This function converts a GTSAM camera pose to an openGL camera pose.

Parameters
Rrotation in GTSAM
txx component of the translation in GTSAM
tyy component of the translation in GTSAM
tzz component of the translation in GTSAM
Returns
Pose3 in openGL format

Definition at line 972 of file dataset.cpp.

GTSAM_EXPORT Pose3 gtsam::gtsam2openGL ( const Pose3 PoseGTSAM)

This function converts a GTSAM camera pose to an openGL camera pose.

Parameters
PoseGTSAMpose in GTSAM format
Returns
Pose3 in openGL format

Definition at line 980 of file dataset.cpp.

gtsam::GTSAM_CONCEPT_POSE_INST ( Pose2  )

instantiate concept checks

gtsam::GTSAM_CONCEPT_POSE_INST ( Pose3  )

instantiate concept checks

gtsam::GTSAM_MAKE_MATRIX_DEFS ( )
gtsam::GTSAM_MAKE_MATRIX_DEFS ( )
gtsam::GTSAM_MAKE_MATRIX_DEFS ( )
gtsam::GTSAM_MAKE_MATRIX_DEFS ( )
gtsam::GTSAM_MAKE_MATRIX_DEFS ( )
gtsam::GTSAM_MAKE_MATRIX_DEFS ( )
gtsam::GTSAM_MAKE_MATRIX_DEFS ( )
gtsam::GTSAM_MAKE_MATRIX_DEFS ( )
gtsam::GTSAM_MAKE_MATRIX_DEFS ( )
gtsam::GTSAM_MAKE_VECTOR_DEFS ( )
gtsam::GTSAM_MAKE_VECTOR_DEFS ( )
gtsam::GTSAM_MAKE_VECTOR_DEFS ( )
gtsam::GTSAM_MAKE_VECTOR_DEFS ( )
gtsam::GTSAM_MAKE_VECTOR_DEFS ( )
gtsam::GTSAM_MAKE_VECTOR_DEFS ( )
gtsam::GTSAM_MAKE_VECTOR_DEFS ( 10  )
gtsam::GTSAM_MAKE_VECTOR_DEFS ( 11  )
gtsam::GTSAM_MAKE_VECTOR_DEFS ( 12  )
bool GTSAM_EXPORT gtsam::guardedIsDebug ( const std::string &  s)

Definition at line 35 of file debug.cpp.

void GTSAM_EXPORT gtsam::guardedSetDebug ( const std::string &  s,
const bool  v 
)

Definition at line 43 of file debug.cpp.

GTSAM_EXPORT bool gtsam::hasConstraints ( const GaussianFactorGraph factors)

Evaluates whether linear factors have any constrained noise models

Returns
true if any factor is constrained.

Definition at line 426 of file GaussianFactorGraph.cpp.

GTSAM_EXPORT std::pair< double, Vector > gtsam::house ( const Vector x)

house(x,j) computes HouseHolder vector v and scaling factor beta from x, such that the corresponding Householder reflection zeroes out all but x.(j), j is base 0. Golub & Van Loan p 210.

Definition at line 237 of file Vector.cpp.

GTSAM_EXPORT void gtsam::householder ( Matrix A,
size_t  k 
)

Householder tranformation, zeros below diagonal

Parameters
knumber of columns to zero out below diagonal
Amatrix
Returns
nothing: in place !!!

Definition at line 353 of file Matrix.cpp.

GTSAM_EXPORT void gtsam::householder_ ( Matrix A,
size_t  k,
bool  copy_vectors 
)

Imperative version of Householder QR factorization, Golub & Van Loan p 224 version with Householder vectors below diagonal, as in GVL

Householder transformation, Householder vectors below diagonal

Parameters
knumber of columns to zero out below diagonal
Amatrix
copy_vectors- true to copy Householder vectors below diagonal
Returns
nothing: in place !!!

Definition at line 326 of file Matrix.cpp.

GTSAM_EXPORT double gtsam::houseInPlace ( Vector x)

beta = house(x) computes the HouseHolder vector in place

Definition at line 212 of file Vector.cpp.

IndexPairVector gtsam::IndexPairSetAsArray ( IndexPairSet set)
inline

Definition at line 128 of file DSFMap.h.

GTSAM_EXPORT Values gtsam::initialCamerasAndPointsEstimate ( const SfmData db)

This function creates initial values for cameras and points from db.

Parameters
SfmData
Returns
Values

Definition at line 1284 of file dataset.cpp.

GTSAM_EXPORT Values gtsam::initialCamerasEstimate ( const SfmData db)

This function creates initial values for cameras from db.

Parameters
SfmData
Returns
Values

Definition at line 1276 of file dataset.cpp.

template<class V1 , class V2 >
double gtsam::inner_prod ( const V1 &  a,
const V2 &  b 
)
inline

compatibility version for ublas' inner_prod()

Definition at line 201 of file Vector.h.

GTSAM_EXPORT void gtsam::inplace_QR ( Matrix A)

QR factorization using Eigen's internal block QR algorithm

Parameters
Ais the input matrix, and is the output
clear_below_diagonalenables zeroing out below diagonal

Definition at line 635 of file Matrix.cpp.

template<typename Derived1 , typename Derived2 >
void gtsam::insertSub ( Eigen::MatrixBase< Derived1 > &  fullMatrix,
const Eigen::MatrixBase< Derived2 > &  subMatrix,
size_t  i,
size_t  j 
)

insert a submatrix IN PLACE at a specified location in a larger matrix NOTE: there is no size checking

Parameters
fullMatrixmatrix to be updated
subMatrixmatrix to be inserted
iis the row of the upper left corner insert location
jis the column of the upper left corner insert location

Definition at line 198 of file base/Matrix.h.

template<typename T >
T gtsam::interpolate ( const T X,
const T Y,
double  t 
)

Linear interpolation between X and Y by coefficient t in [0, 1].

Definition at line 325 of file Lie.h.

GTSAM_EXPORT Matrix gtsam::inverse_square_root ( const Matrix A)

Use Cholesky to calculate inverse square root of a matrix

Definition at line 551 of file Matrix.cpp.

static bool gtsam::is_linear_dependent ( const Matrix A,
const Matrix B,
double  tol 
)
static

Definition at line 84 of file Matrix.cpp.

bool GTSAM_EXPORT gtsam::isDebugVersion ( )

Definition at line 50 of file debug.cpp.

template<typename T , size_t d>
static double gtsam::Kappa ( const BinaryMeasurement< T > &  measurement,
const ShonanAveragingParameters< d > &  parameters 
)
static

Definition at line 338 of file ShonanAveraging.cpp.

static std::mt19937 gtsam::kRandomNumberGenerator ( 42  )
static
GTSAM_EXPORT bool gtsam::linear_dependent ( const Matrix A,
const Matrix B,
double  tol = 1e-9 
)

check whether the rows of two matrices are linear dependent

check whether two vectors are linearly dependent

Parameters
vec1Vector
vec2Vector
tol1e-9
Returns
bool

Definition at line 116 of file Matrix.cpp.

bool gtsam::linear_dependent ( const Vector vec1,
const Vector vec2,
double  tol = 1e-9 
)

check whether two vectors are linearly dependent

Parameters
vec1Vector
vec2Vector
tol1e-9
Returns
bool

Definition at line 181 of file Vector.cpp.

GTSAM_EXPORT bool gtsam::linear_independent ( const Matrix A,
const Matrix B,
double  tol = 1e-9 
)

check whether the rows of two matrices are linear independent

Definition at line 102 of file Matrix.cpp.

template<typename T , typename A >
Expression<T> gtsam::linearExpression ( const boost::function< T(A)> &  f,
const Expression< A > &  expression,
const Eigen::Matrix< double, traits< T >::dimension, traits< A >::dimension > &  dTdA 
)

Create an expression out of a linear function f:T->A with (constant) Jacobian dTdA TODO(frank): create a more efficient version like ScalarMultiplyExpression. This version still does a malloc every linearize.

Definition at line 242 of file Expression.h.

JacobianFactor gtsam::linearizeNumerically ( const NoiseModelFactor factor,
const Values values,
double  delta = 1e-5 
)

Linearize a nonlinear factor using numerical differentiation The benefit of this method is that it does not need to know what types are involved to evaluate the factor. If all the machinery of gtsam is working correctly, we should get the correct numerical derivatives out the other side. NOTE(frank): factors that have non vector-space measurements use between or LocalCoordinates to evaluate the error, and their derivatives will only be correct for near-zero errors. This is fixable but expensive, and does not matter in practice as most factors will sit near zero errors anyway. However, it means that below will only be exact for the correct measurement.

Definition at line 37 of file factorTesting.h.

template<class S , class V , class W >
double gtsam::lineSearch ( const S &  system,
const V  currentValues,
const W &  gradient 
)

Implement the golden-section line search algorithm

Definition at line 88 of file NonlinearConjugateGradientOptimizer.h.

template<typename T >
ListOfOneContainer<T> gtsam::ListOfOne ( const T element)

Factory function for ListOfOneContainer to enable ListOfOne(e) syntax.

Definition at line 139 of file types.h.

GTSAM_EXPORT Matrix gtsam::LLt ( const Matrix A)

Definition at line 522 of file Matrix.cpp.

GTSAM_EXPORT GraphAndValues gtsam::load2D ( std::pair< std::string, SharedNoiseModel dataset,
size_t  maxIndex = 0,
bool  addNoise = false,
bool  smart = true,
NoiseFormat  noiseFormat = NoiseFormatAUTO,
KernelFunctionType  kernelFunctionType = KernelFunctionTypeNONE 
)

Load TORO 2D Graph

Parameters
dataset/modelpair as constructed by [dataset]
maxIndexif non-zero cut out vertices >= maxIndex
addNoiseadd noise to the edges
smarttry to reduce complexity of covariance to cheapest model

Definition at line 567 of file dataset.cpp.

GTSAM_EXPORT GraphAndValues gtsam::load2D ( const std::string &  filename,
SharedNoiseModel  model = SharedNoiseModel(),
size_t  maxIndex = 0,
bool  addNoise = false,
bool  smart = true,
NoiseFormat  noiseFormat = NoiseFormatAUTO,
KernelFunctionType  kernelFunctionType = KernelFunctionTypeNONE 
)

Load TORO/G2O style graph files

Parameters
filename
modeloptional noise model to use instead of one specified by file
maxIndexif non-zero cut out vertices >= maxIndex
addNoiseadd noise to the edges
smarttry to reduce complexity of covariance to cheapest model
noiseFormathow noise parameters are stored
kernelFunctionTypewhether to wrap the noise model in a robust kernel
Returns
graph and initial values

Definition at line 500 of file dataset.cpp.

GraphAndValues gtsam::load2D ( const std::string &  filename,
SharedNoiseModel  model = SharedNoiseModel(),
size_t  maxIndex = 0,
bool  addNoise = false,
bool  smart = true,
NoiseFormat  noiseFormat = NoiseFormatAUTO,
KernelFunctionType  kernelFunctionType = KernelFunctionTypeNONE 
)

Load TORO/G2O style graph files

Parameters
filename
modeloptional noise model to use instead of one specified by file
maxIndexif non-zero cut out vertices >= maxIndex
addNoiseadd noise to the edges
smarttry to reduce complexity of covariance to cheapest model
noiseFormathow noise parameters are stored
kernelFunctionTypewhether to wrap the noise model in a robust kernel
Returns
graph and initial values

Definition at line 500 of file dataset.cpp.

GraphAndValues gtsam::load2D ( std::pair< std::string, SharedNoiseModel dataset,
size_t  maxIndex = 0,
bool  addNoise = false,
bool  smart = true,
NoiseFormat  noiseFormat = NoiseFormatAUTO,
KernelFunctionType  kernelFunctionType = KernelFunctionTypeNONE 
)

Load TORO 2D Graph

Parameters
dataset/modelpair as constructed by [dataset]
maxIndexif non-zero cut out vertices >= maxIndex
addNoiseadd noise to the edges
smarttry to reduce complexity of covariance to cheapest model

Definition at line 567 of file dataset.cpp.

GTSAM_EXPORT GraphAndValues gtsam::load2D_robust ( const std::string &  filename,
const noiseModel::Base::shared_ptr model,
size_t  maxIndex = 0 
)
Deprecated:
load2D now allows for arbitrary models and wrapping a robust kernel

Definition at line 575 of file dataset.cpp.

GraphAndValues gtsam::load2D_robust ( const std::string &  filename,
const noiseModel::Base::shared_ptr model,
size_t  maxIndex = 0 
)
Deprecated:
load2D now allows for arbitrary models and wrapping a robust kernel

Definition at line 575 of file dataset.cpp.

GTSAM_EXPORT GraphAndValues gtsam::load3D ( const std::string &  filename)

Load TORO 3D Graph.

Definition at line 924 of file dataset.cpp.

GraphAndValues gtsam::load3D ( const string &  filename)

Load TORO 3D Graph.

Definition at line 924 of file dataset.cpp.

template<class Class >
Vector gtsam::logmap_default ( const Class l0,
const Class lp 
)
inline

Log map centered at l0, s.t. exp(l0,log(l0,lp)) = lp

Definition at line 245 of file Lie.h.

static Symbol gtsam::make ( gtsam::Key  key)
static

Definition at line 63 of file Symbol.cpp.

static LabeledSymbol gtsam::make ( gtsam::Key  key)
static

Definition at line 110 of file LabeledSymbol.cpp.

template<typename T , typename... Args>
gtsam::enable_if_t<needs_eigen_aligned_allocator<T>::value, boost::shared_ptr<T> > gtsam::make_shared ( Args &&...  args)

Add our own make_shared as a layer of wrapping on boost::make_shared This solves the problem with the stock make_shared that custom alignment is not respected, causing SEGFAULTs at runtime, which is notoriously hard to debug.

Explanation

The template needs_eigen_aligned_allocator<T>::value will evaluate to std::true_type if the type alias _eigen_aligned_allocator_trait = void is present in a class, which is automatically added by the GTSAM_MAKE_ALIGNED_OPERATOR_NEW macro.

This function declaration will only be taken when the above condition is true, so if some object does not need to be aligned, gtsam::make_shared will fall back to the next definition, which is a simple wrapper for boost::make_shared.

Template Parameters
TThe type of object being constructed
ArgsType of the arguments of the constructor
Parameters
argsArguments of the constructor
Returns
The object created as a boost::shared_ptr<T>

Definition at line 57 of file make_shared.h.

template<typename T , typename... Args>
gtsam::enable_if_t<!needs_eigen_aligned_allocator<T>::value, boost::shared_ptr<T> > gtsam::make_shared ( Args &&...  args)

Fall back to the boost version if no need for alignment.

Definition at line 63 of file make_shared.h.

template<typename T , typename R , typename FUNC >
FunctorizedFactor<R, T> gtsam::MakeFunctorizedFactor ( Key  key,
const R z,
const SharedNoiseModel model,
const FUNC  func 
)

Helper function to create a functorized factor.

Uses function template deduction to identify return type and functor type, so template list only needs the functor argument type.

Definition at line 142 of file FunctorizedFactor.h.

template<typename T1 , typename T2 , typename R , typename FUNC >
FunctorizedFactor2<R, T1, T2> gtsam::MakeFunctorizedFactor2 ( Key  key1,
Key  key2,
const R z,
const SharedNoiseModel model,
const FUNC  func 
)

Helper function to create a functorized factor.

Uses function template deduction to identify return type and functor type, so template list only needs the functor argument type.

Definition at line 249 of file FunctorizedFactor.h.

const Eigen::IOFormat & gtsam::matlabFormat ( )

Definition at line 139 of file Matrix.cpp.

template<class PROBLEM >
Key gtsam::maxKey ( const PROBLEM &  problem)

Find the max key in a problem. Useful to determine unique keys for additional slack variables

Definition at line 192 of file ActiveSetSolver.h.

template<class CONTAINER >
Point3 gtsam::mean ( const CONTAINER &  points)

mean

Definition at line 66 of file Point3.h.

GTSAM_EXPORT Point3Pair gtsam::means ( const std::vector< Point3Pair > &  abPointPairs)

Calculate the two means of a set of Point3 pairs.

Definition at line 78 of file Point3.cpp.

std::pair< Pose2, bool > gtsam::moveWithBounce ( const Pose2 cur_pose,
double  step_size,
const std::vector< SimWall2D walls,
Sampler angle_drift,
Sampler reflect_noise,
const Rot2 bias = Rot2() 
)

Calculates the next pose in a trajectory constrained by walls, with noise on angular drift and reflection noise

Parameters
cur_poseis the pose of the robot
step_sizeis the size of the forward step the robot tries to take
wallsis a set of walls to use for bouncing
angle_driftis a sampler for angle drift (dim=1)
reflect_noiseis a sampler for scatter after hitting a wall (dim=3)
Returns
the next pose for the robot NOTE: samplers cannot be const

Definition at line 125 of file SimWall2D.cpp.

Key gtsam::mrsymbol ( unsigned char  c,
unsigned char  label,
size_t  j 
)
inline

Create a symbol key from a character, label and index, i.e. xA5.

Definition at line 126 of file LabeledSymbol.h.

unsigned char gtsam::mrsymbolChr ( Key  key)
inline

Return the character portion of a symbol key.

Definition at line 131 of file LabeledSymbol.h.

size_t gtsam::mrsymbolIndex ( Key  key)
inline

Return the index portion of a symbol key.

Definition at line 137 of file LabeledSymbol.h.

unsigned char gtsam::mrsymbolLabel ( Key  key)
inline

Return the label portion of a symbol key.

Definition at line 134 of file LabeledSymbol.h.

template<class S , class V >
boost::tuple<V, int> gtsam::nonlinearConjugateGradient ( const S &  system,
const V initial,
const NonlinearOptimizerParams params,
const bool  singleIteration,
const bool  gradientDescent = false 
)

Implement the nonlinear conjugate gradient method using the Polak-Ribiere formula suggested in http://en.wikipedia.org/wiki/Nonlinear_conjugate_gradient_method.

The S (system) class requires three member functions: error(state), gradient(state) and advance(state, step-size, direction). The V class denotes the state or the solution.

The last parameter is a switch between gradient-descent and conjugate gradient

Definition at line 148 of file NonlinearConjugateGradientOptimizer.h.

GTSAM_EXPORT double gtsam::norm2 ( const Point2 p,
OptionalJacobian< 1, 2 >  H 
)

Distance of the point from the origin, with Jacobian.

Definition at line 27 of file Point2.cpp.

GTSAM_EXPORT double gtsam::norm3 ( const Point3 p,
OptionalJacobian< 1, 3 >  H 
)

Distance of the point from the origin, with Jacobian.

Definition at line 40 of file Point3.cpp.

GTSAM_EXPORT Point3 gtsam::normalize ( const Point3 p,
OptionalJacobian< 3, 3 >  H 
)

normalize, with optional Jacobian

Definition at line 51 of file Point3.cpp.

static void gtsam::normalize ( Signature::Row row)
static

Definition at line 158 of file Signature.cpp.

template<size_t d>
static size_t gtsam::NrUnknowns ( const typename ShonanAveraging< d >::Measurements &  measurements)
static

Definition at line 102 of file ShonanAveraging.cpp.

template<class Y , class X , int N = traits<X>::dimension>
internal::FixedSizeMatrix<Y, X>::type gtsam::numericalDerivative11 ( boost::function< Y(const X &)>  h,
const X x,
double  delta = 1e-5 
)

New-style numerical derivatives using manifold_traits.

Computes numerical derivative in argument 1 of unary function

Parameters
hunary function yielding m-vector
xn-dimensional value at which to evaluate h
deltaincrement for numerical derivative Class Y is the output argument Class X is the input argument
Template Parameters
intN is the dimension of the X input value if variable dimension type but known at test time
Returns
m*n Jacobian computed via central differencing

Definition at line 118 of file numericalDerivative.h.

template<class Y , class X >
internal::FixedSizeMatrix<Y,X>::type gtsam::numericalDerivative11 ( Y(*)(const X &)  h,
const X x,
double  delta = 1e-5 
)

use a raw C++ function pointer

Definition at line 158 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , int N = traits<X1>::dimension>
internal::FixedSizeMatrix<Y,X1>::type gtsam::numericalDerivative21 ( const boost::function< Y(const X1 &, const X2 &)> &  h,
const X1 &  x1,
const X2 &  x2,
double  delta = 1e-5 
)

Compute numerical derivative in argument 1 of binary function

Parameters
hbinary function yielding m-vector
x1n-dimensional first argument value
x2second argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X1 input value if variable dimension type but known at test time

Definition at line 173 of file numericalDerivative.h.

template<class Y , class X1 , class X2 >
internal::FixedSizeMatrix<Y,X1>::type gtsam::numericalDerivative21 ( Y(*)(const X1 &, const X2 &)  h,
const X1 &  x1,
const X2 &  x2,
double  delta = 1e-5 
)

use a raw C++ function pointer

Definition at line 184 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , int N = traits<X2>::dimension>
internal::FixedSizeMatrix<Y,X2>::type gtsam::numericalDerivative22 ( boost::function< Y(const X1 &, const X2 &)>  h,
const X1 &  x1,
const X2 &  x2,
double  delta = 1e-5 
)

Compute numerical derivative in argument 2 of binary function

Parameters
hbinary function yielding m-vector
x1first argument value
x2n-dimensional second argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X2 input value if variable dimension type but known at test time

Definition at line 199 of file numericalDerivative.h.

template<class Y , class X1 , class X2 >
internal::FixedSizeMatrix<Y,X2>::type gtsam::numericalDerivative22 ( Y(*)(const X1 &, const X2 &)  h,
const X1 &  x1,
const X2 &  x2,
double  delta = 1e-5 
)

use a raw C++ function pointer

Definition at line 210 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , int N = traits<X1>::dimension>
internal::FixedSizeMatrix<Y,X1>::type gtsam::numericalDerivative31 ( boost::function< Y(const X1 &, const X2 &, const X3 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)

Compute numerical derivative in argument 1 of ternary function

Parameters
hternary function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing All classes Y,X1,X2,X3 need dim, expmap, logmap
Template Parameters
intN is the dimension of the X1 input value if variable dimension type but known at test time

Definition at line 227 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<Y,X1>::type gtsam::numericalDerivative31 ( Y(*)(const X1 &, const X2 &, const X3 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)

Definition at line 238 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , int N = traits<X2>::dimension>
internal::FixedSizeMatrix<Y,X2>::type gtsam::numericalDerivative32 ( boost::function< Y(const X1 &, const X2 &, const X3 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)

Compute numerical derivative in argument 2 of ternary function

Parameters
hternary function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing All classes Y,X1,X2,X3 need dim, expmap, logmap
Template Parameters
intN is the dimension of the X2 input value if variable dimension type but known at test time

Definition at line 256 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<Y,X2>::type gtsam::numericalDerivative32 ( Y(*)(const X1 &, const X2 &, const X3 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 267 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , int N = traits<X3>::dimension>
internal::FixedSizeMatrix<Y,X3>::type gtsam::numericalDerivative33 ( boost::function< Y(const X1 &, const X2 &, const X3 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)

Compute numerical derivative in argument 3 of ternary function

Parameters
hternary function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing All classes Y,X1,X2,X3 need dim, expmap, logmap
Template Parameters
intN is the dimension of the X3 input value if variable dimension type but known at test time

Definition at line 285 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<Y,X3>::type gtsam::numericalDerivative33 ( Y(*)(const X1 &, const X2 &, const X3 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 296 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , int N = traits<X1>::dimension>
internal::FixedSizeMatrix<Y,X1>::type gtsam::numericalDerivative41 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
double  delta = 1e-5 
)

Compute numerical derivative in argument 1 of 4-argument function

Parameters
hquartic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X1 input value if variable dimension type but known at test time

Definition at line 314 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 >
internal::FixedSizeMatrix<Y,X1>::type gtsam::numericalDerivative41 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
double  delta = 1e-5 
)
inline

Definition at line 325 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , int N = traits<X2>::dimension>
internal::FixedSizeMatrix<Y,X2>::type gtsam::numericalDerivative42 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
double  delta = 1e-5 
)

Compute numerical derivative in argument 2 of 4-argument function

Parameters
hquartic function yielding m-vector
x1first argument value
x2n-dimensional second argument value
x3third argument value
x4fourth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X2 input value if variable dimension type but known at test time

Definition at line 342 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 >
internal::FixedSizeMatrix<Y,X2>::type gtsam::numericalDerivative42 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
double  delta = 1e-5 
)
inline

Definition at line 353 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , int N = traits<X3>::dimension>
internal::FixedSizeMatrix<Y,X3>::type gtsam::numericalDerivative43 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
double  delta = 1e-5 
)

Compute numerical derivative in argument 3 of 4-argument function

Parameters
hquartic function yielding m-vector
x1first argument value
x2second argument value
x3n-dimensional third argument value
x4fourth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X3 input value if variable dimension type but known at test time

Definition at line 370 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 >
internal::FixedSizeMatrix<Y,X3>::type gtsam::numericalDerivative43 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
double  delta = 1e-5 
)
inline

Definition at line 381 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , int N = traits<X4>::dimension>
internal::FixedSizeMatrix<Y,X4>::type gtsam::numericalDerivative44 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
double  delta = 1e-5 
)

Compute numerical derivative in argument 4 of 4-argument function

Parameters
hquartic function yielding m-vector
x1first argument value
x2second argument value
x3third argument value
x4n-dimensional fourth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X4 input value if variable dimension type but known at test time

Definition at line 398 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 >
internal::FixedSizeMatrix<Y,X4>::type gtsam::numericalDerivative44 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
double  delta = 1e-5 
)
inline

Definition at line 409 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , int N = traits<X1>::dimension>
internal::FixedSizeMatrix<Y,X1>::type gtsam::numericalDerivative51 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
double  delta = 1e-5 
)

Compute numerical derivative in argument 1 of 5-argument function

Parameters
hquintic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
x5fifth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X1 input value if variable dimension type but known at test time

Definition at line 427 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 >
internal::FixedSizeMatrix<Y,X1>::type gtsam::numericalDerivative51 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
double  delta = 1e-5 
)
inline

Definition at line 438 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , int N = traits<X2>::dimension>
internal::FixedSizeMatrix<Y,X2>::type gtsam::numericalDerivative52 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
double  delta = 1e-5 
)

Compute numerical derivative in argument 2 of 5-argument function

Parameters
hquintic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
x5fifth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X2 input value if variable dimension type but known at test time

Definition at line 456 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 >
internal::FixedSizeMatrix<Y,X2>::type gtsam::numericalDerivative52 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
double  delta = 1e-5 
)
inline

Definition at line 467 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , int N = traits<X3>::dimension>
internal::FixedSizeMatrix<Y,X3>::type gtsam::numericalDerivative53 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
double  delta = 1e-5 
)

Compute numerical derivative in argument 3 of 5-argument function

Parameters
hquintic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
x5fifth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X3 input value if variable dimension type but known at test time

Definition at line 485 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 >
internal::FixedSizeMatrix<Y,X3>::type gtsam::numericalDerivative53 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
double  delta = 1e-5 
)
inline

Definition at line 496 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , int N = traits<X4>::dimension>
internal::FixedSizeMatrix<Y,X4>::type gtsam::numericalDerivative54 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
double  delta = 1e-5 
)

Compute numerical derivative in argument 4 of 5-argument function

Parameters
hquintic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
x5fifth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X4 input value if variable dimension type but known at test time

Definition at line 514 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 >
internal::FixedSizeMatrix<Y,X4>::type gtsam::numericalDerivative54 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
double  delta = 1e-5 
)
inline

Definition at line 525 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , int N = traits<X5>::dimension>
internal::FixedSizeMatrix<Y,X5>::type gtsam::numericalDerivative55 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
double  delta = 1e-5 
)

Compute numerical derivative in argument 5 of 5-argument function

Parameters
hquintic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
x5fifth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X5 input value if variable dimension type but known at test time

Definition at line 543 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 >
internal::FixedSizeMatrix<Y,X5>::type gtsam::numericalDerivative55 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
double  delta = 1e-5 
)
inline

Definition at line 554 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X1>::dimension>
internal::FixedSizeMatrix<Y,X1>::type gtsam::numericalDerivative61 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)

Compute numerical derivative in argument 1 of 6-argument function

Parameters
hquintic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
x5fifth argument value
x6sixth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X1 input value if variable dimension type but known at test time

Definition at line 573 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix<Y,X1>::type gtsam::numericalDerivative61 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)
inline

Definition at line 584 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X2>::dimension>
internal::FixedSizeMatrix<Y,X2>::type gtsam::numericalDerivative62 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)

Compute numerical derivative in argument 2 of 6-argument function

Parameters
hquintic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
x5fifth argument value
x6sixth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X2 input value if variable dimension type but known at test time

Definition at line 603 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix<Y,X2>::type gtsam::numericalDerivative62 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)
inline

Definition at line 614 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X3>::dimension>
internal::FixedSizeMatrix<Y,X3>::type gtsam::numericalDerivative63 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)

Compute numerical derivative in argument 3 of 6-argument function

Parameters
hquintic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
x5fifth argument value
x6sixth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X3 input value if variable dimension type but known at test time

Definition at line 633 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix<Y,X3>::type gtsam::numericalDerivative63 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)
inline

Definition at line 644 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X4>::dimension>
internal::FixedSizeMatrix<Y,X4>::type gtsam::numericalDerivative64 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)

Compute numerical derivative in argument 4 of 6-argument function

Parameters
hquintic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
x5fifth argument value
x6sixth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X4 input value if variable dimension type but known at test time

Definition at line 663 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix<Y,X4>::type gtsam::numericalDerivative64 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)
inline

Definition at line 674 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X5>::dimension>
internal::FixedSizeMatrix<Y,X5>::type gtsam::numericalDerivative65 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)

Compute numerical derivative in argument 5 of 6-argument function

Parameters
hquintic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
x5fifth argument value
x6sixth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X5 input value if variable dimension type but known at test time

Definition at line 693 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix<Y,X5>::type gtsam::numericalDerivative65 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)
inline

Definition at line 704 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 , int N = traits<X6>::dimension>
internal::FixedSizeMatrix<Y, X6>::type gtsam::numericalDerivative66 ( boost::function< Y(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)>  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)

Compute numerical derivative in argument 6 of 6-argument function

Parameters
hquintic function yielding m-vector
x1n-dimensional first argument value
x2second argument value
x3third argument value
x4fourth argument value
x5fifth argument value
x6sixth argument value
deltaincrement for numerical derivative
Returns
m*n Jacobian computed via central differencing
Template Parameters
intN is the dimension of the X6 input value if variable dimension type but known at test time

Definition at line 723 of file numericalDerivative.h.

template<class Y , class X1 , class X2 , class X3 , class X4 , class X5 , class X6 >
internal::FixedSizeMatrix<Y,X6>::type gtsam::numericalDerivative66 ( Y(*)(const X1 &, const X2 &, const X3 &, const X4 &, const X5 &, const X6 &)  h,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
const X4 &  x4,
const X5 &  x5,
const X6 &  x6,
double  delta = 1e-5 
)
inline

Definition at line 735 of file numericalDerivative.h.

template<class X , int N = traits<X>::dimension>
Eigen::Matrix<double, N, 1> gtsam::numericalGradient ( boost::function< double(const X &)>  h,
const X x,
double  delta = 1e-5 
)

Numerically compute gradient of scalar function.

Returns
n-dimensional gradient computed via central differencing Class X is the input argument The class X needs to have dim, expmap, logmap int N is the dimension of the X input value if variable dimension type but known at test time

Definition at line 78 of file numericalDerivative.h.

template<class X >
internal::FixedSizeMatrix<X,X>::type gtsam::numericalHessian ( boost::function< double(const X &)>  f,
const X x,
double  delta = 1e-5 
)
inline

Compute numerical Hessian matrix. Requires a single-argument Lie->scalar function. This is implemented simply as the derivative of the gradient.

Parameters
fA function taking a Lie object as input and returning a scalar
xThe center point for computing the Hessian
deltaThe numerical derivative step size
Returns
n*n Hessian matrix computed via central differencing

Definition at line 749 of file numericalDerivative.h.

template<class X >
internal::FixedSizeMatrix<X,X>::type gtsam::numericalHessian ( double(*)(const X &)  f,
const X x,
double  delta = 1e-5 
)
inline

Definition at line 762 of file numericalDerivative.h.

template<class X1 , class X2 >
internal::FixedSizeMatrix<X1,X1>::type gtsam::numericalHessian211 ( boost::function< double(const X1 &, const X2 &)>  f,
const X1 &  x1,
const X2 &  x2,
double  delta = 1e-5 
)
inline

Definition at line 806 of file numericalDerivative.h.

template<class X1 , class X2 >
internal::FixedSizeMatrix<X1,X1>::type gtsam::numericalHessian211 ( double(*)(const X1 &, const X2 &)  f,
const X1 &  x1,
const X2 &  x2,
double  delta = 1e-5 
)
inline

Definition at line 822 of file numericalDerivative.h.

template<class X1 , class X2 >
internal::FixedSizeMatrix<X1,X2>::type gtsam::numericalHessian212 ( boost::function< double(const X1 &, const X2 &)>  f,
const X1 &  x1,
const X2 &  x2,
double  delta = 1e-5 
)
inline

Definition at line 788 of file numericalDerivative.h.

template<class X1 , class X2 >
internal::FixedSizeMatrix<X1,X2>::type gtsam::numericalHessian212 ( double(*)(const X1 &, const X2 &)  f,
const X1 &  x1,
const X2 &  x2,
double  delta = 1e-5 
)
inline

Definition at line 799 of file numericalDerivative.h.

template<class X1 , class X2 >
internal::FixedSizeMatrix<X2,X2>::type gtsam::numericalHessian222 ( boost::function< double(const X1 &, const X2 &)>  f,
const X1 &  x1,
const X2 &  x2,
double  delta = 1e-5 
)
inline

Definition at line 829 of file numericalDerivative.h.

template<class X1 , class X2 >
internal::FixedSizeMatrix<X2,X2>::type gtsam::numericalHessian222 ( double(*)(const X1 &, const X2 &)  f,
const X1 &  x1,
const X2 &  x2,
double  delta = 1e-5 
)
inline

Definition at line 843 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X1,X1>::type gtsam::numericalHessian311 ( boost::function< double(const X1 &, const X2 &, const X3 &)>  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Numerical Hessian for tenary functions

Definition at line 854 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X1,X1>::type gtsam::numericalHessian311 ( double(*)(const X1 &, const X2 &, const X3 &)  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 868 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X1,X2>::type gtsam::numericalHessian312 ( boost::function< double(const X1 &, const X2 &, const X3 &)>  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 923 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X1,X2>::type gtsam::numericalHessian312 ( double(*)(const X1 &, const X2 &, const X3 &)  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 951 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X1,X3>::type gtsam::numericalHessian313 ( boost::function< double(const X1 &, const X2 &, const X3 &)>  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 932 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X1,X3>::type gtsam::numericalHessian313 ( double(*)(const X1 &, const X2 &, const X3 &)  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 959 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X2,X2>::type gtsam::numericalHessian322 ( boost::function< double(const X1 &, const X2 &, const X3 &)>  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 877 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X2,X2>::type gtsam::numericalHessian322 ( double(*)(const X1 &, const X2 &, const X3 &)  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 891 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X2,X3>::type gtsam::numericalHessian323 ( boost::function< double(const X1 &, const X2 &, const X3 &)>  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 941 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X2,X3>::type gtsam::numericalHessian323 ( double(*)(const X1 &, const X2 &, const X3 &)  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 967 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X3,X3>::type gtsam::numericalHessian333 ( boost::function< double(const X1 &, const X2 &, const X3 &)>  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 900 of file numericalDerivative.h.

template<class X1 , class X2 , class X3 >
internal::FixedSizeMatrix<X3,X3>::type gtsam::numericalHessian333 ( double(*)(const X1 &, const X2 &, const X3 &)  f,
const X1 &  x1,
const X2 &  x2,
const X3 &  x3,
double  delta = 1e-5 
)
inline

Definition at line 914 of file numericalDerivative.h.

GTSAM_EXPORT Pose3 gtsam::openGL2gtsam ( const Rot3 R,
double  tx,
double  ty,
double  tz 
)

This function converts an openGL camera pose to an GTSAM camera pose.

Parameters
Rrotation in openGL
txx component of the translation in openGL
tyy component of the translation in openGL
tzz component of the translation in openGL
Returns
Pose3 in GTSAM format

Definition at line 963 of file dataset.cpp.

Rot3 gtsam::openGLFixedRotation ( )

Definition at line 949 of file dataset.cpp.

bool gtsam::operator!= ( const Matrix A,
const Matrix B 
)
inline

inequality

Definition at line 110 of file base/Matrix.h.

GTSAM_EXPORT Signature gtsam::operator% ( const DiscreteKey key,
const std::string &  parent 
)

Helper function to create Signature objects example: Signature s(D % "99/1"); Uses string parser, which requires BOOST 1.42 or higher

Definition at line 213 of file Signature.cpp.

Signature gtsam::operator% ( const DiscreteKey key,
const std::string &  parent 
)

Helper function to create Signature objects example: Signature s(D % "99/1"); Uses string parser, which requires BOOST 1.42 or higher

Definition at line 213 of file Signature.cpp.

GTSAM_EXPORT Signature gtsam::operator% ( const DiscreteKey key,
const Signature::Table parent 
)

Helper function to create Signature objects, using table construction directly example: Signature s(D % table);

Definition at line 218 of file Signature.cpp.

GTSAM_EXPORT DiscreteKeys gtsam::operator& ( const DiscreteKey key1,
const DiscreteKey key2 
)

Create a list from two keys.

Definition at line 49 of file DiscreteKey.cpp.

Point2 gtsam::operator* ( double  s,
const Point2 p 
)
inline

multiply with scalar

Definition at line 45 of file Point2.h.

template<typename T >
Expression< T > gtsam::operator* ( const Expression< T > &  e1,
const Expression< T > &  e2 
)

Construct a product expression, assumes T::compose(T) -> T.

Construct a product expression, assumes T::compose(T) -> T Example: Expression<Point2> a(0), b(1), c = a*b;

Definition at line 247 of file Expression-inl.h.

template<typename T >
ScalarMultiplyExpression<T> gtsam::operator* ( double  s,
const Expression< T > &  e 
)

Construct an expression that executes the scalar multiplication with an input expression The type T must be a vector space Example: Expression<Point2> a(0), b = 12 * a;

Definition at line 262 of file Expression.h.

VectorValues gtsam::operator* ( const double  a,
const VectorValues v 
)

Element-wise scaling by a constant.

Definition at line 349 of file VectorValues.cpp.

template<typename T >
BinarySumExpression<T> gtsam::operator+ ( const Expression< T > &  e1,
const Expression< T > &  e2 
)

Construct an expression that sums two input expressions of the same type T The type T must be a vector space Example: Expression<Point2> a(0), b(1), c = a + b;

Definition at line 273 of file Expression.h.

template<typename T >
BinarySumExpression<T> gtsam::operator- ( const Expression< T > &  e1,
const Expression< T > &  e2 
)

Construct an expression that subtracts one expression from another.

Definition at line 279 of file Expression.h.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Cal3_S2Stereo cal 
)

Definition at line 25 of file Cal3_S2Stereo.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  stream,
const ImuMeasurement meas 
)

Definition at line 27 of file ImuMeasurement.h.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Cal3_S2 cal 
)

Definition at line 27 of file Cal3_S2.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Cal3DS2 cal 
)

Definition at line 28 of file Cal3DS2.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const StereoPoint2 p 
)

Definition at line 31 of file StereoPoint2.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Cal3DS2_Base cal 
)

Definition at line 35 of file Cal3DS2_Base.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Cal3Unified cal 
)

Definition at line 36 of file Cal3Unified.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const PreintegrationBase pim 
)

Definition at line 38 of file PreintegrationBase.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const PreconditionerParameters p 
)

Definition at line 38 of file Preconditioner.cpp.

GTSAM_EXPORT std::ostream& gtsam::operator<< ( std::ostream &  os,
const gtsam::Point3Pair p 
)
GTSAM_EXPORT std::ostream& gtsam::operator<< ( std::ostream &  os,
const gtsam::Point2Pair p 
)
std::ostream& gtsam::operator<< ( std::ostream &  os,
const Cal3Bundler cal 
)

Definition at line 45 of file Cal3Bundler.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Cal3 cal 
)

Definition at line 49 of file Cal3.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const IterativeOptimizationParameters p 
)

Definition at line 51 of file IterativeSolver.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Pose2 pose 
)

Definition at line 55 of file Pose2.cpp.

GTSAM_EXPORT std::ostream& gtsam::operator<< ( std::ostream &  os,
const Symbol symbol 
)

Definition at line 69 of file Symbol.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const NavState state 
)

Definition at line 90 of file NavState.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const gtsam::Point3Pair p 
)

Definition at line 91 of file Point3.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const key_formatter m 
)

Definition at line 108 of file Key.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const Signature::Row row 
)

Definition at line 108 of file Signature.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Dih6 m 
)

Definition at line 109 of file testGroup.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const Subgraph::Edge edge 
)

Definition at line 113 of file SubgraphBuilder.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const StreamedKey streamedKey 
)

Definition at line 115 of file Key.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const Signature::Table table 
)

Definition at line 115 of file Signature.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const EssentialMatrix E 
)

Definition at line 117 of file EssentialMatrix.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const gtsam::Point2Pair p 
)

Definition at line 117 of file Point2.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const Subgraph subgraph 
)

Definition at line 122 of file SubgraphBuilder.cpp.

GTSAM_EXPORT std::ostream& gtsam::operator<< ( std::ostream &  os,
const LabeledSymbol symbol 
)

Definition at line 126 of file LabeledSymbol.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const ImuFactor f 
)

Definition at line 126 of file ImuFactor.cpp.

GTSAM_EXPORT ostream& gtsam::operator<< ( ostream &  os,
const VectorValues v 
)

Definition at line 134 of file VectorValues.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Cal3Fisheye cal 
)

Definition at line 143 of file Cal3Fisheye.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const SubgraphBuilderParameters p 
)

Definition at line 144 of file SubgraphBuilder.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Unit3 pair 
)

Definition at line 150 of file Unit3.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const Signature s 
)

Definition at line 190 of file Signature.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const ImuFactor2 f 
)

Definition at line 221 of file ImuFactor.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const CombinedImuFactor f 
)

Definition at line 251 of file CombinedImuFactor.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Similarity3 p 
)

Definition at line 278 of file Similarity3.cpp.

ostream& gtsam::operator<< ( ostream &  os,
const Rot3 R 
)

Definition at line 318 of file Rot3.cpp.

std::ostream& gtsam::operator<< ( std::ostream &  os,
const Pose3 pose 
)

Definition at line 419 of file Pose3.cpp.

GTSAM_EXPORT bool gtsam::operator== ( const Matrix A,
const Matrix B 
)
inline

equality is just equal_with_abs_tol 1e-9

operator==()

Definition at line 103 of file base/Matrix.h.

bool gtsam::operator== ( const Vector vec1,
const Vector vec2 
)

operator==()

Definition at line 104 of file Vector.cpp.

istream& gtsam::operator>> ( istream &  is,
EssentialMatrix E 
)

Definition at line 126 of file EssentialMatrix.cpp.

GTSAM_EXPORT std::istream& gtsam::operator>> ( std::istream &  inputStream,
Matrix destinationMatrix 
)

Read a matrix from an input stream, such as a file. Entries can be either tab-, space-, or comma-separated, similar to the format read by the MATLAB dlmread command.

istream& gtsam::operator>> ( istream &  inputStream,
Matrix destinationMatrix 
)

Definition at line 173 of file Matrix.cpp.

istream& gtsam::operator>> ( istream &  is,
Quaternion q 
)

Definition at line 743 of file dataset.cpp.

istream& gtsam::operator>> ( istream &  is,
Rot3 R 
)

Definition at line 753 of file dataset.cpp.

istream& gtsam::operator>> ( istream &  is,
Matrix6 &  m 
)

Definition at line 805 of file dataset.cpp.

GTSAM_EXPORT Vector gtsam::operator^ ( const Matrix A,
const Vector v 
)

overload ^ for trans(A)*v We transpose the vectors for speed.

Definition at line 130 of file Matrix.cpp.

GTSAM_EXPORT Signature gtsam::operator| ( const DiscreteKey key,
const DiscreteKey parent 
)

Helper function to create Signature objects example: Signature s = D | E;

Definition at line 208 of file Signature.cpp.

GTSAM_EXPORT Point3 gtsam::optimize ( const NonlinearFactorGraph graph,
const Values values,
Key  landmarkKey 
)

Optimize for triangulation

Parameters
graphnonlinear factors for projection
valuesinitial values
landmarkKeyto refer to landmark
Returns
refined Point3

Definition at line 73 of file triangulation.cpp.

size_t gtsam::optimizeWildfire ( const ISAM2Clique::shared_ptr root,
double  threshold,
const KeySet replaced,
VectorValues delta 
)

Optimize the BayesTree, starting from the root.

Parameters
thresholdThe maximum change against the PREVIOUS delta for non-replaced variables that can be ignored, ie. the old delta entry is kept and recursive backsubstitution might eventually stop if none of the changed variables are contained in the subtree.
replacedNeeds to contain all variables that are contained in the top of the Bayes tree that has been redone.
Returns
The number of variables that were solved for.
Parameters
deltaThe current solution, an offset from the linearization point.

Definition at line 226 of file ISAM2Clique.cpp.

size_t gtsam::optimizeWildfireNonRecursive ( const ISAM2Clique::shared_ptr root,
double  threshold,
const KeySet keys,
VectorValues delta 
)

Definition at line 260 of file ISAM2Clique.cpp.

FastVector<VariableSlots::const_iterator> gtsam::orderedSlotsHelper ( const Ordering ordering,
const VariableSlots variableSlots 
)

Definition at line 304 of file JacobianFactor.cpp.

GTSAM_EXPORT BetweenFactorPose2s gtsam::parse2DFactors ( const std::string &  filename,
const noiseModel::Diagonal::shared_ptr model,
size_t  maxIndex 
)

Definition at line 1296 of file dataset.cpp.

GTSAM_EXPORT BetweenFactorPose3s gtsam::parse3DFactors ( const std::string &  filename,
const noiseModel::Diagonal::shared_ptr model,
size_t  maxIndex 
)

Definition at line 1302 of file dataset.cpp.

GTSAM_EXPORT boost::optional<IndexedEdge> gtsam::parseEdge ( std::istream &  is,
const std::string &  tag 
)

Parse TORO/G2O edge "id1 id2 x y yaw"

Parameters
isinput stream
tagstring parsed from input stream, will only parse if edge type
boost::optional<IndexedEdge> gtsam::parseEdge ( istream &  is,
const string &  tag 
)

Definition at line 294 of file dataset.cpp.

template<typename T >
GTSAM_EXPORT std::vector<typename BetweenFactor<T>::shared_ptr> gtsam::parseFactors ( const std::string &  filename,
const noiseModel::Diagonal::shared_ptr model = nullptr,
size_t  maxIndex = 0 
)

Parse BetweenFactors in a line-based text format (like g2o) into a vector of shared pointers. Instantiated in .cpp T equal to Pose2 and Pose3.

template<>
std::vector<BetweenFactor<Pose2>::shared_ptr> gtsam::parseFactors< Pose2 > ( const std::string &  filename,
const noiseModel::Diagonal::shared_ptr model,
size_t  maxIndex 
)

Definition at line 432 of file dataset.cpp.

template<>
std::vector<BetweenFactor<Pose3>::shared_ptr> gtsam::parseFactors< Pose3 > ( const std::string &  filename,
const noiseModel::Diagonal::shared_ptr model,
size_t  maxIndex 
)

Definition at line 916 of file dataset.cpp.

template<typename T >
static void gtsam::parseLines ( const string &  filename,
Parser< T parse 
)
static

Definition at line 125 of file dataset.cpp.

template<typename T >
GTSAM_EXPORT std::vector<BinaryMeasurement<T> > gtsam::parseMeasurements ( const std::string &  filename,
const noiseModel::Diagonal::shared_ptr model = nullptr,
size_t  maxIndex = 0 
)

Parse binary measurements in a line-based text format (like g2o) into a vector. Instantiated in .cpp for Pose2, Rot2, Pose3, and Rot3. The rotation versions parse poses and extract only the rotation part, using the marginal covariance as noise model.

Definition at line 390 of file dataset.cpp.

template<>
std::vector<BinaryMeasurement<Pose2> > gtsam::parseMeasurements ( const std::string &  filename,
const noiseModel::Diagonal::shared_ptr model = nullptr,
size_t  maxIndex = 0 
)

Parse binary measurements in a line-based text format (like g2o) into a vector. Instantiated in .cpp for Pose2, Rot2, Pose3, and Rot3. The rotation versions parse poses and extract only the rotation part, using the marginal covariance as noise model.

Definition at line 390 of file dataset.cpp.

template<>
std::vector<BinaryMeasurement<Rot2> > gtsam::parseMeasurements ( const std::string &  filename,
const noiseModel::Diagonal::shared_ptr model = nullptr,
size_t  maxIndex = 0 
)

Parse binary measurements in a line-based text format (like g2o) into a vector. Instantiated in .cpp for Pose2, Rot2, Pose3, and Rot3. The rotation versions parse poses and extract only the rotation part, using the marginal covariance as noise model.

Definition at line 417 of file dataset.cpp.

template<>
std::vector<BinaryMeasurement<Pose3> > gtsam::parseMeasurements ( const std::string &  filename,
const noiseModel::Diagonal::shared_ptr model = nullptr,
size_t  maxIndex = 0 
)

Parse binary measurements in a line-based text format (like g2o) into a vector. Instantiated in .cpp for Pose2, Rot2, Pose3, and Rot3. The rotation versions parse poses and extract only the rotation part, using the marginal covariance as noise model.

Definition at line 874 of file dataset.cpp.

template<>
std::vector<BinaryMeasurement<Rot3> > gtsam::parseMeasurements ( const std::string &  filename,
const noiseModel::Diagonal::shared_ptr model = nullptr,
size_t  maxIndex = 0 
)

Parse binary measurements in a line-based text format (like g2o) into a vector. Instantiated in .cpp for Pose2, Rot2, Pose3, and Rot3. The rotation versions parse poses and extract only the rotation part, using the marginal covariance as noise model.

Definition at line 901 of file dataset.cpp.

template<typename T >
map<size_t, T> gtsam::parseToMap ( const string &  filename,
Parser< pair< size_t, T >>  parse,
size_t  maxIndex 
)

Definition at line 139 of file dataset.cpp.

template<typename T >
static vector<T> gtsam::parseToVector ( const string &  filename,
Parser< T parse 
)
static

Definition at line 156 of file dataset.cpp.

template<typename T >
GTSAM_EXPORT std::map<size_t, T> gtsam::parseVariables ( const std::string &  filename,
size_t  maxIndex = 0 
)

Parse variables in a line-based text format (like g2o) into a map. Instantiated in .cpp Pose2, Point2, Pose3, and Point3. Note the map keys are integer indices, not gtsam::Keys. This is is different below where landmarks will use L(index) symbols.

template<>
std::map<size_t, Point2> gtsam::parseVariables< Point2 > ( const std::string &  filename,
size_t  maxIndex 
)

Definition at line 204 of file dataset.cpp.

template<>
std::map<size_t, Point3> gtsam::parseVariables< Point3 > ( const std::string &  filename,
size_t  maxIndex 
)

Definition at line 798 of file dataset.cpp.

template<>
std::map<size_t, Pose2> gtsam::parseVariables< Pose2 > ( const std::string &  filename,
size_t  maxIndex 
)

Definition at line 182 of file dataset.cpp.

template<>
std::map<size_t, Pose3> gtsam::parseVariables< Pose3 > ( const std::string &  filename,
size_t  maxIndex 
)

Definition at line 780 of file dataset.cpp.

GTSAM_EXPORT boost::optional<IndexedLandmark> gtsam::parseVertexLandmark ( std::istream &  is,
const std::string &  tag 
)

Parse G2O landmark vertex "id x y"

Parameters
isinput stream
tagstring parsed from input stream, will only parse if vertex type
boost::optional<IndexedLandmark> gtsam::parseVertexLandmark ( istream &  is,
const string &  tag 
)

Definition at line 188 of file dataset.cpp.

boost::optional<pair<size_t, Point3> > gtsam::parseVertexPoint3 ( istream &  is,
const string &  tag 
)

Definition at line 786 of file dataset.cpp.

GTSAM_EXPORT boost::optional<IndexedPose> gtsam::parseVertexPose ( std::istream &  is,
const std::string &  tag 
)

Parse TORO/G2O vertex "id x y yaw"

Parameters
isinput stream
tagstring parsed from input stream, will only parse if vertex type
boost::optional<IndexedPose> gtsam::parseVertexPose ( istream &  is,
const string &  tag 
)

Definition at line 168 of file dataset.cpp.

boost::optional<pair<size_t, Pose3> > gtsam::parseVertexPose3 ( istream &  is,
const string &  tag 
)

Definition at line 761 of file dataset.cpp.

static Vector gtsam::perturb ( const Vector initialVector)
static

Definition at line 505 of file ShonanAveraging.cpp.

Point3_ gtsam::position ( const NavState_ X)
inline

Definition at line 37 of file navigation/expressions.h.

static bool gtsam::PowerMinimumEigenValue ( const Sparse A,
const Matrix S,
double &  minEigenValue,
Vector minEigenVector = 0,
size_t numIterations = 0,
size_t  maxIterations = 1000,
double  minEigenvalueNonnegativityTolerance = 10e-4 
)
static

MINIMUM EIGENVALUE COMPUTATIONS.

Definition at line 528 of file ShonanAveraging.cpp.

template<class S , class V >
V gtsam::preconditionedConjugateGradient ( const S &  system,
const V initial,
const ConjugateGradientParameters parameters 
)

Definition at line 100 of file ConjugateGradientSolver.h.

template<class G , class V , class KEY >
boost::tuple< G, V, std::map< KEY, V > > gtsam::predecessorMap2Graph ( const PredecessorMap< KEY > &  p_map)

Build takes a predecessor map, and builds a directed graph corresponding to the tree. G = Graph type V = Vertex type

Definition at line 118 of file graph-inl.h.

template<class KEY >
std::list< KEY > gtsam::predecessorMap2Keys ( const PredecessorMap< KEY > &  p_map)

Generate a list of keys from a spanning tree represented by its predecessor map

Definition at line 50 of file graph-inl.h.

template<class CONTAINER >
void gtsam::Print ( const CONTAINER &  keys,
const string &  s,
const KeyFormatter keyFormatter 
)

Definition at line 59 of file Key.cpp.

GTSAM_EXPORT void gtsam::print ( const Errors a,
const std::string &  s = "Error" 
)

print with optional string

Definition at line 121 of file Errors.cpp.

void gtsam::print ( float  v,
const std::string &  s = "" 
)
inline

Definition at line 74 of file Testable.h.

void gtsam::print ( double  v,
const std::string &  s = "" 
)
inline

Definition at line 77 of file Testable.h.

void gtsam::print ( const Vector v,
const string &  s,
ostream &  stream 
)

Definition at line 80 of file Vector.cpp.

void gtsam::print ( const Matrix A,
const std::string &  s = "" 
)

print with optional string to cout

Definition at line 92 of file Vector.cpp.

GTSAM_EXPORT void gtsam::print ( const Vector v,
const std::string &  s,
std::ostream &  stream 
)

print without optional string, must specify cout yourself

GTSAM_EXPORT void gtsam::print ( const Vector v,
const std::string &  s = "" 
)

print with optional string to cout

Definition at line 161 of file Matrix.cpp.

void gtsam::print ( const Errors a,
const std::string &  s = "Error" 
)

print with optional string

Definition at line 121 of file Errors.cpp.

GTSAM_EXPORT void gtsam::print ( const Matrix A,
const std::string &  s,
std::ostream &  stream 
)

print without optional string, must specify cout yourself

void gtsam::print ( const Matrix A,
const string &  s,
ostream &  stream 
)

Definition at line 155 of file Matrix.cpp.

GTSAM_EXPORT void gtsam::print ( const Matrix A,
const std::string &  s = "" 
)

print with optional string to cout

Definition at line 161 of file Matrix.cpp.

void gtsam::print ( const Matrix A,
const std::string &  s = "" 
)

print with optional string to cout

Definition at line 161 of file Matrix.cpp.

void gtsam::PrintKey ( Key  key,
const string &  s,
const KeyFormatter keyFormatter 
)

Utility function to print one key with optional prefix.

Definition at line 40 of file Key.cpp.

GTSAM_EXPORT void gtsam::PrintKey ( Key  key,
const std::string &  s = "",
const KeyFormatter keyFormatter = DefaultKeyFormatter 
)

Utility function to print one key with optional prefix.

Definition at line 40 of file Key.cpp.

void gtsam::PrintKeyList ( const KeyList keys,
const string &  s,
const KeyFormatter keyFormatter 
)

Utility function to print sets of keys with optional prefix.

Definition at line 72 of file Key.cpp.

GTSAM_EXPORT void gtsam::PrintKeyList ( const KeyList keys,
const std::string &  s = "",
const KeyFormatter keyFormatter = DefaultKeyFormatter 
)

Utility function to print sets of keys with optional prefix.

Definition at line 72 of file Key.cpp.

void gtsam::PrintKeySet ( const KeySet keys,
const string &  s,
const KeyFormatter keyFormatter 
)

Utility function to print sets of keys with optional prefix.

Definition at line 82 of file Key.cpp.

GTSAM_EXPORT void gtsam::PrintKeySet ( const KeySet keys,
const std::string &  s = "",
const KeyFormatter keyFormatter = DefaultKeyFormatter 
)

Utility function to print sets of keys with optional prefix.

Definition at line 82 of file Key.cpp.

void gtsam::PrintKeyVector ( const KeyVector keys,
const string &  s,
const KeyFormatter keyFormatter 
)

Utility function to print sets of keys with optional prefix.

Definition at line 77 of file Key.cpp.

GTSAM_EXPORT void gtsam::PrintKeyVector ( const KeyVector keys,
const std::string &  s = "",
const KeyFormatter keyFormatter = DefaultKeyFormatter 
)

Utility function to print sets of keys with optional prefix.

Definition at line 77 of file Key.cpp.

template<class MATRIX >
MATRIX gtsam::prod ( const MATRIX &  A,
const MATRIX &  B 
)
inline

products using old-style format to improve compatibility

Definition at line 147 of file base/Matrix.h.

Point2_ gtsam::project ( const Point3_ p_cam)
inline

Expression version of PinholeBase::Project.

Definition at line 84 of file slam/expressions.h.

Point2_ gtsam::project ( const Unit3_ p_cam)
inline

Definition at line 89 of file slam/expressions.h.

template<class CAMERA , class POINT >
Point2_ gtsam::project2 ( const Expression< CAMERA > &  camera_,
const Expression< POINT > &  p_ 
)

Definition at line 104 of file slam/expressions.h.

template<class CALIBRATION , class POINT >
Point2_ gtsam::project3 ( const Pose3_ x,
const Expression< POINT > &  p,
const Expression< CALIBRATION > &  K 
)
inline

Definition at line 119 of file slam/expressions.h.

GTSAM_EXPORT std::pair< Matrix, Matrix > gtsam::qr ( const Matrix A)

Householder QR factorization, Golub & Van Loan p 224, explicit version

QR factorization, inefficient, best use imperative householder below m*n matrix -> m*m Q, m*n R

Parameters
Aa matrix
Returns
<Q,R> rotation matrix Q, upper triangular R

Definition at line 234 of file Matrix.cpp.

GTSAM_EXPORT bool gtsam::readBAL ( const std::string &  filename,
SfmData data 
)

This function parses a "Bundle Adjustment in the Large" (BAL) file and stores the data into a SfmData structure.

Parameters
filenameThe name of the BAL file
dataSfM structure where the data is stored
Returns
true if the parsing was successful, false otherwise

Definition at line 1073 of file dataset.cpp.

GTSAM_EXPORT SfmData gtsam::readBal ( const std::string &  filename)

This function parses a "Bundle Adjustment in the Large" (BAL) file and returns the data as a SfmData structure. Mainly used by wrapped code.

Parameters
filenameThe name of the BAL file.
Returns
SfM structure where the data is stored.

Definition at line 1133 of file dataset.cpp.

bool gtsam::readBAL ( const std::string &  filename,
SfmData data 
)

This function parses a "Bundle Adjustment in the Large" (BAL) file and stores the data into a SfmData structure.

Parameters
filenameThe name of the BAL file
dataSfM structure where the data is stored
Returns
true if the parsing was successful, false otherwise

Definition at line 1073 of file dataset.cpp.

SfmData gtsam::readBal ( const std::string &  filename)

This function parses a "Bundle Adjustment in the Large" (BAL) file and returns the data as a SfmData structure. Mainly used by wrapped code.

Parameters
filenameThe name of the BAL file.
Returns
SfM structure where the data is stored.

Definition at line 1133 of file dataset.cpp.

GTSAM_EXPORT bool gtsam::readBundler ( const std::string &  filename,
SfmData data 
)

This function parses a bundler output file and stores the data into a SfmData structure.

Parameters
filenameThe name of the bundler file
dataSfM structure where the data is stored
Returns
true if the parsing was successful, false otherwise

Definition at line 986 of file dataset.cpp.

bool gtsam::readBundler ( const std::string &  filename,
SfmData data 
)

This function parses a bundler output file and stores the data into a SfmData structure.

Parameters
filenameThe name of the bundler file
dataSfM structure where the data is stored
Returns
true if the parsing was successful, false otherwise

Definition at line 986 of file dataset.cpp.

GTSAM_EXPORT GraphAndValues gtsam::readG2o ( const std::string &  g2oFile,
const bool  is3D = false,
KernelFunctionType  kernelFunctionType = KernelFunctionTypeNONE 
)

This function parses a g2o file and stores the measurements into a NonlinearFactorGraph and the initial guess in a Values structure.

Parameters
filenameThe name of the g2o file\
is3Dindicates if the file describes a 2D or 3D problem
kernelFunctionTypewhether to wrap the noise model in a robust kernel
Returns
graph and initial values

Definition at line 615 of file dataset.cpp.

GraphAndValues gtsam::readG2o ( const std::string &  g2oFile,
const bool  is3D = false,
KernelFunctionType  kernelFunctionType = KernelFunctionTypeNONE 
)

This function parses a g2o file and stores the measurements into a NonlinearFactorGraph and the initial guess in a Values structure.

Parameters
filenameThe name of the g2o file\
is3Dindicates if the file describes a 2D or 3D problem
kernelFunctionTypewhether to wrap the noise model in a robust kernel
Returns
graph and initial values

Definition at line 615 of file dataset.cpp.

void gtsam::recursiveMarkAffectedKeys ( const Key key,
const ISAM2Clique::shared_ptr clique,
std::set< Key > &  additionalKeys 
)

Definition at line 28 of file IncrementalFixedLagSmoother.cpp.

template<int OutM, int OutN, int OutOptions, int InM, int InN, int InOptions>
Reshape<OutM, OutN, OutOptions, InM, InN, InOptions>::ReshapedType gtsam::reshape ( const Eigen::Matrix< double, InM, InN, InOptions > &  m)
inline

Definition at line 285 of file base/Matrix.h.

Point3_ gtsam::rotate ( const Rot3_ x,
const Point3_ p 
)
inline

Definition at line 62 of file slam/expressions.h.

Unit3_ gtsam::rotate ( const Rot3_ x,
const Unit3_ p 
)
inline

Definition at line 66 of file slam/expressions.h.

Rot3_ gtsam::rotation ( const Pose3_ pose)
inline

Definition at line 58 of file slam/expressions.h.

template<size_t d>
static Matrix gtsam::RoundSolutionS ( const Matrix S)
static

Definition at line 244 of file ShonanAveraging.cpp.

template<class MATRIX >
const MATRIX::ConstRowXpr gtsam::row ( const MATRIX &  A,
size_t  j 
)

Extracts a row view from a matrix that avoids a copy

Parameters
Amatrix to extract row from
jindex of the row
Returns
a const view of the matrix

Definition at line 225 of file base/Matrix.h.

GTSAM_EXPORT std::pair< Matrix3, Vector3 > gtsam::RQ ( const Matrix3 &  A,
OptionalJacobian< 3, 9 >  H = boost::none 
)

[RQ] receives a 3 by 3 matrix and returns an upper triangular matrix R and 3 rotation angles corresponding to the rotation matrix Q=Qz'*Qy'*Qx' such that A = R*Q = R*Qz'*Qy'*Qx'. When A is a rotation matrix, R will be the identity and Q is a yaw-pitch-roll decomposition of A. The implementation uses Givens rotations and is based on Hartley-Zisserman.

Parameters
A3 by 3 matrix A=RQ
Returns
an upper triangular matrix R
a vector [thetax, thetay, thetaz] in radians.

Definition at line 258 of file Rot3.cpp.

GTSAM_EXPORT Matrix gtsam::RtR ( const Matrix A)

Definition at line 529 of file Matrix.cpp.

void gtsam::save ( const Matrix A,
const std::string &  s,
const std::string &  filename 
)

save a matrix to file, which can be loaded by matlab

Definition at line 97 of file Vector.cpp.

GTSAM_EXPORT void gtsam::save ( const Vector A,
const std::string &  s,
const std::string &  filename 
)

save a vector to file, which can be loaded by matlab

save a matrix to file, which can be loaded by matlab

Definition at line 166 of file Matrix.cpp.

GTSAM_EXPORT void gtsam::save ( const Matrix A,
const std::string &  s,
const std::string &  filename 
)

save a matrix to file, which can be loaded by matlab

Definition at line 166 of file Matrix.cpp.

void gtsam::save ( const Matrix A,
const std::string &  s,
const std::string &  filename 
)

save a matrix to file, which can be loaded by matlab

Definition at line 166 of file Matrix.cpp.

GTSAM_EXPORT void gtsam::save2D ( const NonlinearFactorGraph graph,
const Values config,
const noiseModel::Diagonal::shared_ptr  model,
const std::string &  filename 
)

save 2d graph

Definition at line 582 of file dataset.cpp.

void gtsam::save2D ( const NonlinearFactorGraph graph,
const Values config,
const noiseModel::Diagonal::shared_ptr  model,
const std::string &  filename 
)

save 2d graph

Definition at line 582 of file dataset.cpp.

void gtsam::scal ( double  alpha,
Vector x 
)
inline

BLAS Level 1 scal: x <- alpha*x

Deprecated:
: use operators instead

Definition at line 210 of file Vector.h.

static Scatter gtsam::scatterFromValues ( const Values values)
static

Definition at line 372 of file NonlinearFactorGraph.cpp.

static Scatter gtsam::scatterFromValues ( const Values values,
const Ordering ordering 
)
static

Definition at line 387 of file NonlinearFactorGraph.cpp.

template<class Archive >
void gtsam::serialize ( Archive &  ar,
SO4 Q,
const unsigned  int 
)

Serialization function

Definition at line 83 of file SO4.h.

template<class T >
std::string gtsam::serialize ( const T input)

serializes to a string

Definition at line 100 of file base/serialization.h.

template<class Archive >
void gtsam::serialize ( Archive &  ar,
SO3 R,
const unsigned  int 
)

Serialization function

Definition at line 104 of file SO3.h.

template<class Archive >
void gtsam::serialize ( Archive &  ar,
SOn Q,
const unsigned int  file_version 
)

Serialization function

Definition at line 373 of file SOn.h.

template<class T >
std::string gtsam::serializeBinary ( const T input,
const std::string &  name = "data" 
)

serializes to a string in binary

Definition at line 246 of file base/serialization.h.

std::string gtsam::serializeGraph ( const NonlinearFactorGraph graph)

Definition at line 211 of file serialization.cpp.

bool gtsam::serializeGraphToFile ( const NonlinearFactorGraph graph,
const std::string &  fname 
)

Definition at line 261 of file serialization.cpp.

bool gtsam::serializeGraphToXMLFile ( const NonlinearFactorGraph graph,
const std::string &  fname,
const std::string &  name = "graph" 
)

Definition at line 266 of file serialization.cpp.

std::string gtsam::serializeGraphXML ( const NonlinearFactorGraph graph,
const std::string &  name = "graph" 
)

Definition at line 223 of file serialization.cpp.

template<class T >
bool gtsam::serializeToBinaryFile ( const T input,
const std::string &  filename,
const std::string &  name = "data" 
)

serializes to a binary file

Definition at line 224 of file base/serialization.h.

template<class T >
void gtsam::serializeToBinaryStream ( const T input,
std::ostream &  out_archive_stream,
const std::string &  name = "data" 
)

serializes to a stream in binary

Definition at line 191 of file base/serialization.h.

template<class T >
std::string gtsam::serializeToBinaryString ( const T input,
const std::string &  name = "data" 
)

serializes to a string in binary

Definition at line 207 of file base/serialization.h.

template<class T >
bool gtsam::serializeToFile ( const T input,
const std::string &  filename 
)

serializes to a file

Definition at line 80 of file base/serialization.h.

template<class T >
void gtsam::serializeToStream ( const T input,
std::ostream &  out_archive_stream 
)

serializes to a stream

Definition at line 51 of file base/serialization.h.

template<class T >
std::string gtsam::serializeToString ( const T input)

serializes to a string

Definition at line 65 of file base/serialization.h.

template<class T >
bool gtsam::serializeToXMLFile ( const T input,
const std::string &  filename,
const std::string &  name = "data" 
)

serializes to an XML file

Definition at line 150 of file base/serialization.h.

template<class T >
void gtsam::serializeToXMLStream ( const T input,
std::ostream &  out_archive_stream,
const std::string &  name = "data" 
)

serializes to a stream in XML

Definition at line 117 of file base/serialization.h.

template<class T >
std::string gtsam::serializeToXMLString ( const T input,
const std::string &  name = "data" 
)

serializes to a string in XML

Definition at line 133 of file base/serialization.h.

std::string gtsam::serializeValues ( const Values values)

Definition at line 236 of file serialization.cpp.

bool gtsam::serializeValuesToFile ( const Values values,
const std::string &  fname 
)

Definition at line 272 of file serialization.cpp.

bool gtsam::serializeValuesToXMLFile ( const Values values,
const std::string &  fname,
const std::string &  name = "values" 
)

Definition at line 277 of file serialization.cpp.

std::string gtsam::serializeValuesXML ( const Values values,
const std::string &  name = "values" 
)

Definition at line 248 of file serialization.cpp.

template<class T >
std::string gtsam::serializeXML ( const T input,
const std::string &  name = "data" 
)

serializes to a string in XML

Definition at line 172 of file base/serialization.h.

static void gtsam::setSubvector ( const Vector src,
const KeyInfo keyInfo,
const KeyVector keys,
Vector dst 
)
static

Definition at line 66 of file SubgraphPreconditioner.cpp.

Matrix3 gtsam::skewSymmetric ( double  wx,
double  wy,
double  wz 
)
inline

skew symmetric matrix returns this: 0 -wz wy wz 0 -wx -wy wx 0

Parameters
wx3 dimensional vector
wy
wz
Returns
a 3*3 skew symmetric matrix

Definition at line 404 of file base/Matrix.h.

template<class Derived >
Matrix3 gtsam::skewSymmetric ( const Eigen::MatrixBase< Derived > &  w)
inline

Definition at line 409 of file base/Matrix.h.

template<typename Container >
static vector<size_t> gtsam::sort_idx ( const Container &  src)
static

Definition at line 56 of file SubgraphBuilder.cpp.

SparseEigen gtsam::sparseJacobianEigen ( const GaussianFactorGraph gfg,
const Ordering ordering 
)

Constructs an Eigen-format SparseMatrix of a GaussianFactorGraph.

Definition at line 38 of file SparseEigen.h.

SparseEigen gtsam::sparseJacobianEigen ( const GaussianFactorGraph gfg)

Definition at line 58 of file SparseEigen.h.

static bool gtsam::SparseMinimumEigenValue ( const Sparse A,
const Matrix S,
double *  minEigenValue,
Vector minEigenVector = 0,
size_t numIterations = 0,
size_t  maxIterations = 1000,
double  minEigenvalueNonnegativityTolerance = 10e-4,
Eigen::Index  numLanczosVectors = 20 
)
static

Function to compute the minimum eigenvalue of A using Lanczos in Spectra. This does 2 things:

(1) Quick (coarse) eigenvalue computation to estimate the largest-magnitude eigenvalue (2) A second eigenvalue computation applied to A-sigma*I, where sigma is chosen to make the minimum eigenvalue of A the extremal eigenvalue of A-sigma*I

Upon completion, this returns a boolean value indicating whether the minimum eigenvalue was computed to the required precision – if so, its sets the values of minEigenValue and minEigenVector appropriately Note that in the following function signature, S is supposed to be the block-row-matrix that is a critical point for the optimization algorithm; either S (Stiefel manifold) or R (block rotations). We use this to construct a starting vector v for the Lanczos process that will be close to the minimum eigenvector we're looking for whenever the relaxation is exact – this is a key feature that helps to make this method fast. Note that instead of passing in all of S, it would be enough to pass in one of S's rows, if that's more convenient.

Definition at line 631 of file ShonanAveraging.cpp.

template<class G , class KEY , class FACTOR2 >
void gtsam::split ( const G g,
const PredecessorMap< KEY > &  tree,
G Ab1,
G Ab2 
)

Split the graph into two parts: one corresponds to the given spanning tree, and the other corresponds to the rest of the factors

Definition at line 255 of file graph-inl.h.

std::pair< boost::shared_ptr< GaussianFactorGraph >, boost::shared_ptr< GaussianFactorGraph > > gtsam::splitFactorGraph ( const GaussianFactorGraph factorGraph,
const Subgraph subgraph 
)

Split the graph into a subgraph and the remaining edges. Note that the remaining factorgraph has null factors.

Definition at line 463 of file SubgraphBuilder.cpp.

GTSAM_EXPORT Matrix gtsam::stack ( size_t  nrMatrices,
  ... 
)

create a matrix by stacking other matrices Given a set of matrices: A1, A2, A3...

Parameters
...pointers to matrices to be stacked
Returns
combined matrix [A1; A2; A3]

Definition at line 396 of file Matrix.cpp.

GTSAM_EXPORT Matrix gtsam::stack ( const std::vector< Matrix > &  blocks)

Definition at line 423 of file Matrix.cpp.

Vector gtsam::steepestDescent ( const System Ab,
const Vector x,
const ConjugateGradientParameters parameters 
)

Definition at line 40 of file iterative.cpp.

GTSAM_EXPORT Vector gtsam::steepestDescent ( const Matrix A,
const Vector b,
const Vector x,
const ConjugateGradientParameters parameters 
)

convenience calls using matrices, will create System class internally: Method of steepest gradients, Matrix version

Definition at line 51 of file iterative.cpp.

GTSAM_EXPORT VectorValues gtsam::steepestDescent ( const GaussianFactorGraph fg,
const VectorValues x,
const ConjugateGradientParameters parameters 
)

Method of steepest gradients, Gaussian Factor Graph version

Definition at line 64 of file iterative.cpp.

GTSAM_EXPORT Vector gtsam::steepestDescent ( const System Ab,
const Vector x,
const IterativeOptimizationParameters parameters 
)

Method of steepest gradients, System version

GTSAM_EXPORT Matrix43 gtsam::stiefel ( const SO4 Q,
OptionalJacobian< 12, 6 >  H = boost::none 
)

Project to Stiefel manifold of 4*3 orthonormal 3-frames in R^4, i.e., pi(Q) -> S St(3,4).

Definition at line 220 of file SO4.cpp.

template<class MATRIX >
Eigen::Block<const MATRIX> gtsam::sub ( const MATRIX &  A,
size_t  i1,
size_t  i2,
size_t  j1,
size_t  j2 
)

extract submatrix, slice semantics, i.e. range = [i1,i2[ excluding i2

Parameters
Amatrix
i1first row index
i2last row index + 1
j1first col index
j2last col index + 1
Returns
submatrix A(i1:i2-1,j1:j2-1)

Definition at line 184 of file base/Matrix.h.

GTSAM_EXPORT void gtsam::svd ( const Matrix A,
Matrix U,
Vector S,
Matrix V 
)

SVD computes economy SVD A=U*S*V'

Parameters
Aan m*n matrix
Uoutput argument: rotation matrix
Soutput argument: sorted vector of singular values
Voutput argument: rotation matrix if m > n then U*S*V' = (m*n)*(n*n)*(n*n) if m < n then U*S*V' = (m*m)*(m*m)*(m*n) Careful! The dimensions above reflect V', not V, which is n*m if m<n. U is a basis in R^m, V is a basis in R^n You can just pass empty matrices U,V, and vector S, they will be re-allocated.

Definition at line 559 of file Matrix.cpp.

Key gtsam::symbol ( unsigned char  c,
std::uint64_t  j 
)
inline

Create a symbol key from a character and index, i.e. x5.

Definition at line 134 of file inference/Symbol.h.

unsigned char gtsam::symbolChr ( Key  key)
inline

Return the character portion of a symbol key.

Definition at line 137 of file inference/Symbol.h.

std::uint64_t gtsam::symbolIndex ( Key  key)
inline

Return the index portion of a symbol key.

Definition at line 140 of file inference/Symbol.h.

void GTSAM_UNSTABLE_EXPORT gtsam::synchronize ( ConcurrentFilter filter,
ConcurrentSmoother smoother 
)

Definition at line 28 of file ConcurrentFilteringAndSmoothing.cpp.

gtsam::TEST ( LPInitSolver  ,
InfiniteLoopSingleVar   
)

Definition at line 64 of file testLPSolver.cpp.

gtsam::TEST ( LPInitSolver  ,
InfiniteLoopMultiVar   
)

Definition at line 82 of file testLPSolver.cpp.

gtsam::TEST ( LPInitSolver  ,
Initialization   
)

Definition at line 112 of file testLPSolver.cpp.

template<typename G >
void gtsam::testChartDerivatives ( TestResult result_,
const std::string &  name_,
const G t1,
const G t2 
)

Definition at line 60 of file testLie.h.

template<typename T >
void gtsam::testDefaultChart ( TestResult result_,
const std::string &  name_,
const T value 
)

Definition at line 31 of file chartTesting.h.

template<typename G >
void gtsam::testLieGroupDerivatives ( TestResult result_,
const std::string &  name_,
const G t1,
const G t2 
)

Definition at line 32 of file testLie.h.

void gtsam::tictoc_finishedIteration_ ( )
inline

Definition at line 249 of file timing.h.

void gtsam::tictoc_print2_ ( )
inline

Definition at line 257 of file timing.h.

void gtsam::tictoc_print_ ( )
inline

Definition at line 253 of file timing.h.

void gtsam::tictoc_reset_ ( )
inline

Definition at line 267 of file timing.h.

template<class G , class F , class KEY >
SDGraph< KEY > gtsam::toBoostGraph ( const G graph)

Convert the factor graph to an SDGraph G = Graph type F = Factor type Key = Key type

Definition at line 68 of file graph-inl.h.

GTSAM_EXPORT Matrix3 gtsam::topLeft ( const SO4 Q,
OptionalJacobian< 9, 6 >  H = boost::none 
)

Project to top-left 3*3 matrix. Note this is not in general SO(3).

Definition at line 206 of file SO4.cpp.

Matrix gtsam::trans ( const Matrix A)
inline

static transpose function, just calls Eigen transpose member function

Definition at line 245 of file base/Matrix.h.

template<class T , class P >
P gtsam::transform_point ( const T trans,
const P global,
boost::optional< Matrix & >  Dtrans,
boost::optional< Matrix & >  Dglobal 
)

Transform function that must be specialized specific domains

Template Parameters
Tis a Transform type
Pis a point type

Definition at line 30 of file ReferenceFrameFactor.h.

Point3_ gtsam::transformFrom ( const Pose3_ x,
const Point3_ p 
)
inline

Definition at line 41 of file slam/expressions.h.

Point2_ gtsam::transformTo ( const Pose2_ x,
const Point2_ p 
)
inline

Definition at line 25 of file slam/expressions.h.

Point3_ gtsam::transformTo ( const Pose3_ x,
const Point3_ p 
)
inline

Definition at line 37 of file slam/expressions.h.

Line3_ gtsam::transformTo ( const Pose3_ wTc,
const Line3_ wL 
)
inline

Definition at line 45 of file slam/expressions.h.

Line3 gtsam::transformTo ( const Pose3 wTc,
const Line3 wL,
OptionalJacobian< 4, 6 >  Dpose = boost::none,
OptionalJacobian< 4, 4 >  Dline = boost::none 
)

Transform a line from world to camera frame

Parameters
wTc- Pose3 of camera in world frame
wL- Line3 in world frame
Dpose- OptionalJacobian of transformed line with respect to p
Dline- OptionalJacobian of transformed line with respect to l
Returns
Transformed line in camera frame

Definition at line 94 of file Line3.cpp.

GTSAM_EXPORT Point3 gtsam::triangulateDLT ( const std::vector< Matrix34, Eigen::aligned_allocator< Matrix34 >> &  projection_matrices,
const Point2Vector measurements,
double  rank_tol = 1e-9 
)

DLT triangulation: See Hartley and Zisserman, 2nd Ed., page 312

Parameters
projection_matricesProjection matrices (K*P^-1)
measurements2D measurements
rank_tolSVD rank tolerance
Returns
Triangulated Point3

Definition at line 56 of file triangulation.cpp.

GTSAM_EXPORT Vector4 gtsam::triangulateHomogeneousDLT ( const std::vector< Matrix34, Eigen::aligned_allocator< Matrix34 >> &  projection_matrices,
const Point2Vector measurements,
double  rank_tol = 1e-9 
)

DLT triangulation: See Hartley and Zisserman, 2nd Ed., page 312

Parameters
projection_matricesProjection matrices (K*P^-1)
measurements2D measurements
rank_tolSVD rank tolerance
Returns
Triangulated point, in homogeneous coordinates

Definition at line 26 of file triangulation.cpp.

template<class CALIBRATION >
Point3 gtsam::triangulateNonlinear ( const std::vector< Pose3 > &  poses,
boost::shared_ptr< CALIBRATION >  sharedCal,
const Point2Vector measurements,
const Point3 initialEstimate 
)

Given an initial estimate , refine a point using measurements in several cameras

Parameters
posesCamera poses
sharedCalshared pointer to single calibration object
measurements2D measurements
initialEstimate
Returns
refined Point3

Definition at line 147 of file triangulation.h.

template<class CAMERA >
Point3 gtsam::triangulateNonlinear ( const CameraSet< CAMERA > &  cameras,
const typename CAMERA::MeasurementVector &  measurements,
const Point3 initialEstimate 
)

Given an initial estimate , refine a point using measurements in several cameras

Parameters
cameraspinhole cameras (monocular or stereo)
measurements2D measurements
initialEstimate
Returns
refined Point3

Definition at line 168 of file triangulation.h.

template<class CALIBRATION >
Point3 gtsam::triangulatePoint3 ( const std::vector< Pose3 > &  poses,
boost::shared_ptr< CALIBRATION >  sharedCal,
const Point2Vector measurements,
double  rank_tol = 1e-9,
bool  optimize = false 
)

Function to triangulate 3D landmark point from an arbitrary number of poses (at least 2) using the DLT. The function checks that the resulting point lies in front of all cameras, but has no other checks to verify the quality of the triangulation.

Parameters
posesA vector of camera poses
sharedCalshared pointer to single calibration object
measurementsA vector of camera measurements
rank_tolrank tolerance, default 1e-9
optimizeFlag to turn on nonlinear refinement of triangulation
Returns
Returns a Point3

Definition at line 215 of file triangulation.h.

template<class CAMERA >
Point3 gtsam::triangulatePoint3 ( const CameraSet< CAMERA > &  cameras,
const typename CAMERA::MeasurementVector &  measurements,
double  rank_tol = 1e-9,
bool  optimize = false 
)

Function to triangulate 3D landmark point from an arbitrary number of poses (at least 2) using the DLT. This function is similar to the one above, except that each camera has its own calibration. The function checks that the resulting point lies in front of all cameras, but has no other checks to verify the quality of the triangulation.

Parameters
cameraspinhole cameras
measurementsA vector of camera measurements
rank_tolrank tolerance, default 1e-9
optimizeFlag to turn on nonlinear refinement of triangulation
Returns
Returns a Point3

Definition at line 263 of file triangulation.h.

template<class CALIBRATION >
Point3 gtsam::triangulatePoint3 ( const CameraSet< PinholeCamera< CALIBRATION > > &  cameras,
const Point2Vector measurements,
double  rank_tol = 1e-9,
bool  optimize = false 
)

Pinhole-specific version.

Definition at line 300 of file triangulation.h.

template<class CAMERA >
TriangulationResult gtsam::triangulateSafe ( const CameraSet< CAMERA > &  cameras,
const typename CAMERA::MeasurementVector &  measured,
const TriangulationParameters params 
)

triangulateSafe: extensive checking of the outcome

Definition at line 442 of file triangulation.h.

template<class CALIBRATION >
std::pair<NonlinearFactorGraph, Values> gtsam::triangulationGraph ( const std::vector< Pose3 > &  poses,
boost::shared_ptr< CALIBRATION >  sharedCal,
const Point2Vector measurements,
Key  landmarkKey,
const Point3 initialEstimate 
)

Create a factor graph with projection factors from poses and one calibration

Parameters
posesCamera poses
sharedCalshared pointer to single calibration object (monocular only!)
measurements2D measurements
landmarkKeyto refer to landmark
initialEstimate
Returns
graph and initial values

Definition at line 82 of file triangulation.h.

template<class CAMERA >
std::pair<NonlinearFactorGraph, Values> gtsam::triangulationGraph ( const CameraSet< CAMERA > &  cameras,
const typename CAMERA::MeasurementVector &  measurements,
Key  landmarkKey,
const Point3 initialEstimate 
)

Create a factor graph with projection factors from pinhole cameras (each camera has a pose and calibration)

Parameters
cameraspinhole cameras (monocular or stereo)
measurements2D measurements
landmarkKeyto refer to landmark
initialEstimate
Returns
graph and initial values

Definition at line 111 of file triangulation.h.

template<class CALIBRATION >
Point2_ gtsam::uncalibrate ( const Expression< CALIBRATION > &  K,
const Point2_ xy_hat 
)

Definition at line 125 of file slam/expressions.h.

Point3_ gtsam::unrotate ( const Rot3_ x,
const Point3_ p 
)
inline

Definition at line 70 of file slam/expressions.h.

Unit3_ gtsam::unrotate ( const Rot3_ x,
const Unit3_ p 
)
inline

Definition at line 74 of file slam/expressions.h.

static Vector9 gtsam::vec3 ( const Matrix3 &  R)
static

Definition at line 307 of file SO3.cpp.

static SO4::VectorN2 gtsam::vec4 ( const Matrix4 &  Q)
static

Definition at line 140 of file SO4.cpp.

GTSAM_EXPORT Matrix gtsam::vector_scale ( const Vector v,
const Matrix A,
bool  inf_mask 
)

Definition at line 497 of file Matrix.cpp.

Matrix gtsam::vector_scale ( const Matrix A,
const Vector v,
bool  inf_mask 
)

Definition at line 505 of file Matrix.cpp.

GTSAM_EXPORT void gtsam::vector_scale_inplace ( const Vector v,
Matrix A,
bool  inf_mask = false 
)

scales a matrix row or column by the values in a vector Arguments (Matrix, Vector) scales the columns, (Vector, Matrix) scales the rows

Parameters
inf_maskwhen true, will not scale with a NaN or inf value.

Definition at line 481 of file Matrix.cpp.

Velocity3_ gtsam::velocity ( const NavState_ X)
inline

Definition at line 40 of file navigation/expressions.h.

template<class T >
Matrix gtsam::wedge ( const Vector x)

Declaration of wedge (see Murray94book) used to convert from n exponential coordinates to n*n element of the Lie algebra

template<>
Matrix gtsam::wedge< Pose2 > ( const Vector xi)
inline

specialization for pose2 wedge function (generic template in Lie.h)

Definition at line 313 of file Pose2.h.

template<>
Matrix gtsam::wedge< Pose3 > ( const Vector xi)
inline

wedge for Pose3:

Parameters
xi6-dim twist (omega,v) where omega = 3D angular velocity v = 3D velocity
Returns
xihat, 4*4 element of Lie algebra that can be exponentiated

Definition at line 386 of file Pose3.h.

template<>
Matrix gtsam::wedge< Similarity3 > ( const Vector xi)
inline

Definition at line 226 of file Similarity3.h.

GTSAM_EXPORT std::list< boost::tuple< Vector, double, double > > gtsam::weighted_eliminate ( Matrix A,
Vector b,
const Vector sigmas 
)

Imperative algorithm for in-place full elimination with weights and constraint handling

Parameters
Ais a matrix to eliminate
bis the rhs
sigmasis a vector of the measurement standard deviation
Returns
list of r vectors, d and sigma

Definition at line 272 of file Matrix.cpp.

GTSAM_EXPORT double gtsam::weightedPseudoinverse ( const Vector a,
const Vector weights,
Vector pseudo 
)

Definition at line 246 of file Vector.cpp.

GTSAM_EXPORT std::pair< Vector, double > gtsam::weightedPseudoinverse ( const Vector v,
const Vector weights 
)

Weighted Householder solution vector, a.k.a., the pseudoinverse of the column NOTE: if any sigmas are zero (indicating a constraint) the pseudoinverse will be a selection vector, and the variance will be zero

Parameters
vis the first column of the matrix to solve
weightsis a vector of weights/precisions where w=1/(s*s)
Returns
a pair of the pseudoinverse of v and the associated precision/weight

Definition at line 292 of file Vector.cpp.

GTSAM_EXPORT bool gtsam::writeBAL ( const std::string &  filename,
SfmData data 
)

This function writes a "Bundle Adjustment in the Large" (BAL) file from a SfmData structure.

Parameters
filenameThe name of the BAL file to write
dataSfM structure where the data is stored
Returns
true if the parsing was successful, false otherwise

Definition at line 1140 of file dataset.cpp.

bool gtsam::writeBAL ( const std::string &  filename,
SfmData data 
)

This function writes a "Bundle Adjustment in the Large" (BAL) file from a SfmData structure.

Parameters
filenameThe name of the BAL file to write
dataSfM structure where the data is stored
Returns
true if the parsing was successful, false otherwise

Definition at line 1140 of file dataset.cpp.

GTSAM_EXPORT bool gtsam::writeBALfromValues ( const std::string &  filename,
const SfmData data,
Values values 
)

This function writes a "Bundle Adjustment in the Large" (BAL) file from a SfmData structure and a value structure (measurements are the same as the SfM input data, while camera poses and values are read from Values)

Parameters
filenameThe name of the BAL file to write
dataSfM structure where the data is stored
valuesstructure where the graph values are stored (values can be either Pose3 or PinholeCamera<Cal3Bundler> for the cameras, and should be Point3 for the 3D points). Note that the current version assumes that the keys are "x1" for pose 1 (or "c1" for camera 1) and "l1" for landmark 1
Returns
true if the parsing was successful, false otherwise

Definition at line 1216 of file dataset.cpp.

bool gtsam::writeBALfromValues ( const std::string &  filename,
const SfmData data,
Values values 
)

This function writes a "Bundle Adjustment in the Large" (BAL) file from a SfmData structure and a value structure (measurements are the same as the SfM input data, while camera poses and values are read from Values)

Parameters
filenameThe name of the BAL file to write
dataSfM structure where the data is stored
valuesstructure where the graph values are stored (values can be either Pose3 or PinholeCamera<Cal3Bundler> for the cameras, and should be Point3 for the 3D points). Note that the current version assumes that the keys are "x1" for pose 1 (or "c1" for camera 1) and "l1" for landmark 1
Returns
true if the parsing was successful, false otherwise

Definition at line 1216 of file dataset.cpp.

GTSAM_EXPORT void gtsam::writeG2o ( const NonlinearFactorGraph graph,
const Values estimate,
const std::string &  filename 
)

This function writes a g2o file from NonlinearFactorGraph and a Values structure.

Parameters
filenameThe name of the g2o file to write
graphNonlinearFactor graph storing the measurements
estimateValues

Note:behavior change in PR #471: to be consistent with load2D and load3D, we write the indices to file and not the full Keys. This change really only affects landmarks, which get read as indices but stored in values with the symbol L(index).

Definition at line 630 of file dataset.cpp.

void gtsam::writeG2o ( const NonlinearFactorGraph graph,
const Values estimate,
const std::string &  filename 
)

This function writes a g2o file from NonlinearFactorGraph and a Values structure.

Parameters
filenameThe name of the g2o file to write
graphNonlinearFactor graph storing the measurements
estimateValues

Note:behavior change in PR #471: to be consistent with load2D and load3D, we write the indices to file and not the full Keys. This change really only affects landmarks, which get read as indices but stored in values with the symbol L(index).

Definition at line 630 of file dataset.cpp.

template<class MATRIX >
void gtsam::zeroBelowDiagonal ( MATRIX &  A,
size_t  cols = 0 
)

Zeros all of the elements below the diagonal of a matrix, in place

Parameters
Ais a matrix, to be modified in place
colsis the number of columns to zero, use zero for all columns

Definition at line 235 of file base/Matrix.h.

Variable Documentation

const T & gtsam::b

Definition at line 83 of file Group.h.

const size_t gtsam::chrBits = sizeof(unsigned char) * 8
static

Definition at line 31 of file Symbol.cpp.

const Key gtsam::chrMask = Key(UCHAR_MAX) << indexBits
static

Definition at line 33 of file Symbol.cpp.

GTSAM_EXTERN_EXPORT FastMap< std::string, ValueWithDefault< bool, false > > gtsam::debugFlags

Definition at line 28 of file debug.cpp.

const KeyFormatter gtsam::DefaultKeyFormatter = &_defaultKeyFormatter
static

The default KeyFormatter, which is used if no KeyFormatter is passed to a nonlinear 'print' function. Automatically detects plain integer keys and Symbol keys.

Definition at line 43 of file Key.h.

size_t gtsam::gDummyCount = 0
static

Definition at line 25 of file Dummy.cpp.

const size_t gtsam::indexBits = keyBits - chrBits
static

Definition at line 32 of file Symbol.cpp.

const Key gtsam::indexMask = ~chrMask
static

Definition at line 34 of file Symbol.cpp.

double gtsam::intNoiseVar = 0.0000001
static

Definition at line 29 of file ScenarioRunner.cpp.

const size_t gtsam::keyBits = sizeof(Key) * 8
static

Definition at line 30 of file Symbol.cpp.

const Vector gtsam::kGravity = Vector::Unit(3,2)*9.81
static

Definition at line 14 of file PoseRTV.cpp.

const size_t gtsam::kHeightIndex = 5
static

Definition at line 21 of file DynamicsPriors.h.

const Matrix3 gtsam::kIntegrationErrorCovariance = intNoiseVar * I_3x3
static

Definition at line 30 of file ScenarioRunner.cpp.

const size_t gtsam::kPitchIndex = 1
static

Definition at line 20 of file DynamicsPriors.h.

const size_t gtsam::kRollIndex = 0
static

Definition at line 19 of file DynamicsPriors.h.

const std::vector<size_t> gtsam::kVelocityIndices = { 6, 7, 8 }
static

Definition at line 23 of file DynamicsPriors.h.

const size_t gtsam::kVelocityZIndex = 8
static

Definition at line 22 of file DynamicsPriors.h.

const double gtsam::logSqrt2PI = log(std::sqrt(2.0 * M_PI))

constant needed below

Definition at line 26 of file WhiteNoiseFactor.h.

const size_t gtsam::max_it = 100000

Definition at line 15 of file SimPolygon2D.cpp.

const gtsam::KeyFormatter gtsam::MultiRobotKeyFormatter
static
Initial value:
=
string _multirobotKeyFormatter(Key key)
Definition: Key.cpp:45

A KeyFormatter that will check for LabeledSymbol keys, as well as Symbol and plain integer keys. This keyformatter will need to be passed in to override the default formatter in print functions.

Checks for LabeledSymbol, Symbol and then plain keys, in order.

Definition at line 54 of file Key.h.

const double gtsam::negativePivotThreshold = -1e-1
static

Definition at line 30 of file base/cholesky.cpp.

const Matrix93 gtsam::P3
static
Initial value:
=
(Matrix93() << vec3(G3[0]), vec3(G3[1]), vec3(G3[2])).finished()
Eigen::Matrix< double, 9, 3 > Matrix93
static std::vector< Matrix3 > G3({SO3::Hat(Vector3::Unit(0)), SO3::Hat(Vector3::Unit(1)), SO3::Hat(Vector3::Unit(2))})
static Vector9 vec3(const Matrix3 &R)
Definition: SO3.cpp:307

Definition at line 317 of file SO3.cpp.

const Eigen::Matrix<double, 16, 6> gtsam::P4
static
Initial value:
=
vec4(G4[3]), vec4(G4[4]), vec4(G4[5]))
.finished()
static SO4::VectorN2 vec4(const Matrix4 &Q)
Definition: SO4.cpp:140
static std::vector< Matrix4, Eigen::aligned_allocator< Matrix4 > > G4({SO4::Hat(Vector6::Unit(0)), SO4::Hat(Vector6::Unit(1)), SO4::Hat(Vector6::Unit(2)), SO4::Hat(Vector6::Unit(3)), SO4::Hat(Vector6::Unit(4)), SO4::Hat(Vector6::Unit(5))})
The matrix class, also used for vectors and row-vectors.

Definition at line 151 of file SO4.cpp.

const Rot2 gtsam::R_PI_2(Rot2::fromCosSin(0., 1.))
static
const T double gtsam::tol

Definition at line 83 of file Group.h.

const int gtsam::underconstrainedExponentDifference = 12
static

Definition at line 33 of file base/cholesky.cpp.

const double gtsam::underconstrainedPrior = 1e-5
static

Definition at line 32 of file base/cholesky.cpp.

const Eigen::MatrixBase<Vector2>::ConstantReturnType gtsam::Z_2x1 = Vector2::Zero()
static

Definition at line 45 of file Vector.h.

const Eigen::MatrixBase<Vector3>::ConstantReturnType gtsam::Z_3x1 = Vector3::Zero()
static

Definition at line 46 of file Vector.h.

const double gtsam::zeroPivotThreshold = 1e-6
static

Definition at line 31 of file base/cholesky.cpp.



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