44 std::unique_ptr<Solver>
solver)
51 int iteration,
bool online) {
53 "underlying linear solver operates on different graph");
70 return OptimizationAlgorithm::Fail;
98 os <<
"\t schur= " <<
_solver.schur();
std::unique_ptr< Solver > m_solver
OptimizationAlgorithmGaussNewton(std::unique_ptr< Solver > solver)
virtual SolverResult solve(int iteration, bool online=false)
virtual ~OptimizationAlgorithmGaussNewton()
virtual void printVerbose(std::ostream &os) const
Solver & solver()
return the underlying solver used to solve the linear system
OptimizationAlgorithmWithHessian(Solver &solver)
SparseOptimizer * _optimizer
the optimizer the solver is working on
#define __PRETTY_FUNCTION__
double get_monotonic_time()
statistics about the optimization
double timeLinearSolution
double timeResiduals
residuals
static G2OBatchStatistics * globalStats()
double timeUpdate
time to apply the update
double timeQuadraticForm
construct the quadratic form in the graph
utility functions for handling time related stuff