diff --git a/internal/ceres/cxsparse.h b/internal/ceres/cxsparse.h index 14b1e01f9..2311f4a77 100644 --- a/internal/ceres/cxsparse.h +++ b/internal/ceres/cxsparse.h @@ -133,6 +133,7 @@ class CXSparse { int scratch_size_; }; +// Sparse cholesky factorization using CXSparse. class CXSparseCholesky : public SparseCholesky { public: // Factory diff --git a/internal/ceres/linear_solver.h b/internal/ceres/linear_solver.h index abd630fae..5f996a140 100644 --- a/internal/ceres/linear_solver.h +++ b/internal/ceres/linear_solver.h @@ -69,9 +69,15 @@ enum LinearSolverTerminationType { LINEAR_SOLVER_FATAL_ERROR }; +// This enum controls the fill-reducing ordering a sparse linear +// algebra library should use before computing a sparse factorization +// (usually Cholesky). enum OrderingType { - NATURAL, - AMD + NATURAL, // Do not re-order the matrix. This is useful when the + // matrix has been ordered using a fill-reducing ordering + // already. + AMD // Use the Approximate Minimum Degree algorithm to re-order + // the matrix. }; class LinearOperator; diff --git a/internal/ceres/sparse_cholesky.h b/internal/ceres/sparse_cholesky.h index 7c2ba9dbe..07d328d27 100644 --- a/internal/ceres/sparse_cholesky.h +++ b/internal/ceres/sparse_cholesky.h @@ -40,8 +40,8 @@ namespace ceres { namespace internal { -// An interface abstracts away the internal details of various sparse -// linear algebra libraries and offers a simple API for solving +// An interface that abstracts away the internal details of various +// sparse linear algebra libraries and offers a simple API for solving // symmetric positive definite linear systems using a sparse Cholesky // factorization. //