File optimization_stats.h#

namespace sym

Typedefs

template<typename Scalar>
using SparseOptimizationStats = OptimizationStats<Eigen::SparseMatrix<Scalar>>#
template<typename Scalar>
using DenseOptimizationStats = OptimizationStats<MatrixX<Scalar>>#
using OptimizationStatsd = SparseOptimizationStats<double>#
using OptimizationStatsf = SparseOptimizationStats<float>#
template<typename MatrixType>
struct OptimizationStats#
#include <optimization_stats.h>

Debug stats for a full optimization run

Public Functions

inline optimization_stats_t GetLcmType() const#
inline void Reset(const size_t num_iterations)#

Reset the optimization stats

Does not cause reallocation, except for things in debug stats

Public Members

std::vector<optimization_iteration_t> iterations#
int32_t best_index = {0}#

Index into iterations of the best iteration (containing the optimal Values)

optimization_status_t status = {}#

What was the result of the optimization?

int32_t failure_reason = {}#

If status == FAILED, why? This should be cast to the Optimizer::FailureReason enum for the nonlinear solver you used.

optional<Linearization<MatrixType>> best_linearization = {}#

The linearization at best_index (at optimized_values), filled out if populate_best_linearization=true

sparse_matrix_structure_t jacobian_sparsity#

The sparsity pattern of the problem jacobian

Only filled if using sparse linear solver and Optimizer created with debug_stats = true. If not filled, row_indices field of sparse_matrix_structure_t and linear_solver_ordering will have size() = 0.

Eigen::VectorXi linear_solver_ordering#

The permutation used by the linear solver

Only filled if using sparse linear solver and Optimizer created with debug_stats = true. If not filled, row_indices field of sparse_matrix_structure_t and linear_solver_ordering will have size() = 0.

sparse_matrix_structure_t cholesky_factor_sparsity#

The sparsity pattern of the cholesky factor

Only filled if using sparse linear solver and Optimizer created with debug_stats = true. If not filled, row_indices field of sparse_matrix_structure_t and linear_solver_ordering will have size() = 0.