41 OptimizationAlgorithmGaussNewton::OptimizationAlgorithmGaussNewton(
Solver* solver) :
64 if (iteration == 0 && !online) {
68 return OptimizationAlgorithm::Fail;
double get_monotonic_time()
virtual bool schur()=0
should the solver perform the schur complement or not
statistics about the optimization
#define __PRETTY_FUNCTION__
virtual ~OptimizationAlgorithmGaussNewton()
double timeResiduals
residuals
void computeActiveErrors()
Base for solvers operating on the approximated Hessian, e.g., Gauss-Newton, Levenberg.
utility functions for handling time related stuff
Generic interface for a sparse solver operating on a graph which solves one iteration of the lineariz...
SparseOptimizer * _optimizer
the optimizer the solver is working on
static G2OBatchStatistics * globalStats()
SparseOptimizer * optimizer() const
the optimizer (graph) on which the solver works
virtual void printVerbose(std::ostream &os) const
double * x()
return x, the solution vector
double timeUpdate
time to apply the update
virtual SolverResult solve(int iteration, bool online=false)
virtual bool buildSystem()=0
double timeQuadraticForm
construct the quadratic form in the graph
double timeLinearSolution
total time for solving Ax=b (including detup for schur)
virtual bool buildStructure(bool zeroBlocks=false)=0