Go to the documentation of this file.
17 const std::string &src) {
31 if (
s ==
"TERMINATION")
70 const std::shared_ptr<IterativeOptimizationParameters>
params) {
78 std::cout <<
str <<
"\n";
81 std::cout <<
" total error threshold: " <<
errorTol <<
"\n";
82 std::cout <<
" maximum iterations: " <<
maxIterations <<
"\n";
89 std::cout <<
" linear solver type: MULTIFRONTAL CHOLESKY\n";
92 std::cout <<
" linear solver type: MULTIFRONTAL QR\n";
95 std::cout <<
" linear solver type: SEQUENTIAL CHOLESKY\n";
98 std::cout <<
" linear solver type: SEQUENTIAL QR\n";
101 std::cout <<
" linear solver type: CHOLMOD\n";
104 std::cout <<
" linear solver type: ITERATIVE\n";
107 std::cout <<
" linear solver type: (invalid)\n";
113 std::cout <<
" ordering: COLAMD\n";
116 std::cout <<
" ordering: METIS\n";
119 std::cout <<
" ordering: custom\n";
153 return "MULTIFRONTAL_CHOLESKY";
155 return "MULTIFRONTAL_QR";
157 return "SEQUENTIAL_CHOLESKY";
159 return "SEQUENTIAL_QR";
165 throw std::invalid_argument(
166 "Unknown linear solver type in SuccessiveLinearizationOptimizer");
172 const std::string& linearSolverType)
const {
185 throw std::invalid_argument(
186 "Unknown linear solver type in SuccessiveLinearizationOptimizer");
201 throw std::invalid_argument(
202 "Invalid ordering type: You must provide an ordering for a custom ordering type. See setOrdering");
208 const std::string&
type)
const {
211 if (
type ==
"COLAMD")
213 throw std::invalid_argument(
214 "Invalid ordering type: You must provide an ordering for a custom ordering type. See setOrdering");
double absoluteErrorTol
The maximum absolute error decrease to stop iterating (default 1e-5)
IterativeOptimizationParameters::shared_ptr iterativeParams
The container for iterativeOptimization parameters. used in CG Solvers.
Verbosity verbosity
The printing verbosity during optimization (default SILENT)
static const SmartProjectionParams params
Ordering::OrderingType orderingType
The method of ordering use during variable elimination (default COLAMD)
std::string orderingTypeTranslator(Ordering::OrderingType type) const
bool equals(const NonlinearOptimizerParams &other, double tol=1e-9) const
EIGEN_DONT_INLINE void transform(const Transformation &t, Data &data)
OrderingType
Type of ordering to use.
virtual void print(const std::string &str="") const
static Verbosity verbosityTranslator(const std::string &s)
double relativeErrorTol
The maximum relative error decrease to stop iterating (default 1e-5)
size_t maxIterations
The maximum iterations to stop iterating (default 100)
double errorTol
The maximum total error to stop iterating (default 0.0)
std::optional< Ordering > ordering
The optional variable elimination ordering, or empty to use COLAMD (default: empty)
Parameters for nonlinear optimization.
std::string linearSolverTranslator(LinearSolverType linearSolverType) const
void setIterativeParams(const std::shared_ptr< IterativeOptimizationParameters > params)
LinearSolverType linearSolverType
The type of linear solver to use in the nonlinear optimizer.
gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:12:24