g2o
Loading...
Searching...
No Matches
g2o::OptimizationAlgorithmGaussNewton Class Reference

Implementation of the Gauss Newton Algorithm. More...

#include <optimization_algorithm_gauss_newton.h>

Inheritance diagram for g2o::OptimizationAlgorithmGaussNewton:
Collaboration diagram for g2o::OptimizationAlgorithmGaussNewton:

Public Member Functions

 OptimizationAlgorithmGaussNewton (std::unique_ptr< Solver > solver)
virtual ~OptimizationAlgorithmGaussNewton ()
virtual SolverResult solve (int iteration, bool online=false)
virtual void printVerbose (std::ostream &os) const
Public Member Functions inherited from g2o::OptimizationAlgorithmWithHessian
 OptimizationAlgorithmWithHessian (Solver &solver)
virtual ~OptimizationAlgorithmWithHessian ()
virtual bool init (bool online=false)
virtual bool computeMarginals (SparseBlockMatrix< MatrixX > &spinv, const std::vector< std::pair< int, int > > &blockIndices)
virtual bool buildLinearStructure ()
virtual void updateLinearSystem ()
virtual bool updateStructure (const std::vector< HyperGraph::Vertex * > &vset, const HyperGraph::EdgeSet &edges)
Solver & solver ()
 return the underlying solver used to solve the linear system
virtual void setWriteDebug (bool writeDebug)
virtual bool writeDebug () const
Public Member Functions inherited from g2o::OptimizationAlgorithm
 OptimizationAlgorithm ()
virtual ~OptimizationAlgorithm ()
const SparseOptimizer * optimizer () const
 return the optimizer operating on
SparseOptimizer * optimizer ()
void setOptimizer (SparseOptimizer *optimizer)
const PropertyMap & properties () const
 return the properties of the solver
bool updatePropertiesFromString (const std::string &propString)
void printProperties (std::ostream &os) const

Private Attributes

std::unique_ptr< Solver > m_solver

Additional Inherited Members

Protected Attributes inherited from g2o::OptimizationAlgorithmWithHessian
Solver & _solver
Property< bool > * _writeDebug
Protected Attributes inherited from g2o::OptimizationAlgorithm
SparseOptimizer * _optimizer
 the optimizer the solver is working on
PropertyMap _properties

Detailed Description

Implementation of the Gauss Newton Algorithm.

Definition at line 40 of file optimization_algorithm_gauss_newton.h.

Constructor & Destructor Documentation

◆ OptimizationAlgorithmGaussNewton()

g2o::OptimizationAlgorithmGaussNewton::OptimizationAlgorithmGaussNewton ( std::unique_ptr< Solver > solver)
explicit

construct the Gauss Newton algorithm, which use the given Solver for solving the linearized system.

Definition at line 43 of file optimization_algorithm_gauss_newton.cpp.

References m_solver, g2o::OptimizationAlgorithmWithHessian::OptimizationAlgorithmWithHessian(), and g2o::OptimizationAlgorithmWithHessian::solver().

Referenced by g2o::SolverSLAM2DLinear::SolverSLAM2DLinear().

◆ ~OptimizationAlgorithmGaussNewton()

g2o::OptimizationAlgorithmGaussNewton::~OptimizationAlgorithmGaussNewton ( )
virtual

Definition at line 48 of file optimization_algorithm_gauss_newton.cpp.

Member Function Documentation

◆ printVerbose()

void g2o::OptimizationAlgorithmGaussNewton::printVerbose ( std::ostream & os) const
virtual

called by the optimizer if verbose. re-implement, if you want to print something

Reimplemented from g2o::OptimizationAlgorithm.

Definition at line 97 of file optimization_algorithm_gauss_newton.cpp.

References g2o::OptimizationAlgorithmWithHessian::_solver.

◆ solve()

OptimizationAlgorithm::SolverResult g2o::OptimizationAlgorithmGaussNewton::solve ( int iteration,
bool online = false )
virtual

Member Data Documentation

◆ m_solver

std::unique_ptr<Solver> g2o::OptimizationAlgorithmGaussNewton::m_solver
private

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