Go to the documentation of this file.
39 SILENT, TERMINATION, ERROR,
VALUES, DELTA, LINEAR
42 size_t maxIterations = 100;
43 double relativeErrorTol = 1
e-5;
44 double absoluteErrorTol = 1
e-5;
45 double errorTol = 0.0;
53 std::string
getVerbosity()
const {
return verbosityTranslator(verbosity); }
60 verbosity = verbosityTranslator(src);
63 static Verbosity verbosityTranslator(
const std::string &
s) ;
64 static std::string verbosityTranslator(Verbosity
value) ;
68 using IterationHook = std::function<
69 void(
size_t ,
double,
double)>;
115 virtual void print(
const std::string&
str =
"")
const;
120 return (linearSolverType == MULTIFRONTAL_CHOLESKY)
121 || (linearSolverType == MULTIFRONTAL_QR);
125 return (linearSolverType == SEQUENTIAL_CHOLESKY)
126 || (linearSolverType == SEQUENTIAL_QR);
130 return (linearSolverType == CHOLMOD);
134 return (linearSolverType == Iterative);
138 switch (linearSolverType) {
139 case MULTIFRONTAL_CHOLESKY:
140 case SEQUENTIAL_CHOLESKY:
143 case MULTIFRONTAL_QR:
148 throw std::runtime_error(
149 "Nonlinear optimization parameter \"factorization\" is invalid");
154 return linearSolverTranslator(linearSolverType);
158 linearSolverType = linearSolverTranslator(
solver);
161 void setIterativeParams(
const std::shared_ptr<IterativeOptimizationParameters>
params);
169 return orderingTypeTranslator(orderingType);
174 orderingType = orderingTypeTranslator(
ordering);
178 std::string linearSolverTranslator(LinearSolverType linearSolverType)
const;
179 LinearSolverType linearSolverTranslator(
const std::string& linearSolverType)
const;
bool isSequential() const
Linear Factor Graph where all factors are Gaussians.
std::shared_ptr< IterativeOptimizationParameters > shared_ptr
Subgraph Solver from IROS 2010.
Array< double, 1, 3 > e(1./3., 0.5, 2.)
void setVerbosity(const std::string &src)
IterativeOptimizationParameters::shared_ptr iterativeParams
The container for iterativeOptimization parameters. used in CG Solvers.
void setRelativeErrorTol(double value)
void setLinearSolverType(const std::string &solver)
void setOrderingType(const std::string &ordering)
static const SmartProjectionParams params
void setOrdering(const Ordering &ordering)
IterationHook iterationHook
BiCGSTAB< SparseMatrix< double > > solver
std::string getVerbosity() const
std::pair< std::shared_ptr< GaussianConditional >, std::shared_ptr< GaussianFactor > > EliminatePreferCholesky(const GaussianFactorGraph &factors, const Ordering &keys)
size_t getMaxIterations() const
void print(const Matrix &A, const string &s, ostream &stream)
std::function< void(size_t, double, double)> IterationHook
std::string getLinearSolverType() const
void setErrorTol(double value)
static enum @1096 ordering
std::string getOrderingType() const
OrderingType
Type of ordering to use.
virtual ~NonlinearOptimizerParams()
double getRelativeErrorTol() const
bool isMultifrontal() const
double getAbsoluteErrorTol() const
std::function< EliminationResult(const FactorGraphType &, const Ordering &)> Eliminate
The function type that does a single dense elimination step on a subgraph.
void setMaxIterations(int value)
void setAbsoluteErrorTol(double value)
std::optional< Ordering > ordering
The optional variable elimination ordering, or empty to use COLAMD (default: empty)
double getErrorTol() const
GaussianFactorGraph::Eliminate getEliminationFunction() const
NonlinearOptimizerParams SuccessiveLinearizationParams
std::pair< GaussianConditional::shared_ptr, JacobianFactor::shared_ptr > EliminateQR(const GaussianFactorGraph &factors, const Ordering &keys)
gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:12:24