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 auto JacobianView(const optimization_iteration_t &iteration) const¶
Get a view of the Jacobian at a particular iteration
The lifetime of the result is tied to the lifetime of the OptimizationStats object
-
inline void Reset(const size_t num_iterations)¶
Reset the optimization stats
Does not cause reallocation, except for things in debug stats
Public Members
-
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 Optimizer created with debug_stats = true and include_jacobians = true, otherwise default constructed.
If using a dense linearization, only the shape field will be filled.
-
Eigen::VectorXi linear_solver_ordering = {}¶
The permutation used by the linear solver
Only filled if using an Optimizer created with debug_stats = true and a linear solver that exposes Permutation() (such as the default SparseCholeskySolver). Otherwise, will be default constructed.
-
sparse_matrix_structure_t cholesky_factor_sparsity = {}¶
The sparsity pattern of the cholesky factor L
Only filled if using an Optimizer created with debug_stats = true and a linear solver that exposes L() (such as the default SparseCholeskySolver). Otherwise, will be default constructed.
-
inline optimization_stats_t GetLcmType() const¶
-
template<typename Scalar>