* Sat Feb 04 2023 Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Update to version 2.1.0.
* New Features:
+ Support for CUDA based dense solvers - DENSE_QR,
DENSE_NORMAL_CHOLESKY & DENSE_SCHUR (Joydeep Biswas,
Sameer Agarwal)
+ Manifold is the new LocalParameterization. Version 2.1 is
the transition release where users can use both
LocalParameterization as well as Manifold objects as they
transition from the former to the latter.
LocalParameterization will be removed in version 2.2.
There should be no numerical change to the results as a
result of this change. (Sameer Agarwal, Johannes Beck,
Sergiu Deitsch)
+ A number of changes to Jet s (Sergiu Deitsch):
- Jet gained support for, copysign, fma (fused multiply-add),
midpoint (C++20 and above), lerp (C++20 and above),
3-argument hypot (C++17 and above), log10, log1p, exp1m,
norm (squared norm).
- Quiet floating-point comparison: isless, isgreater,
islessgreater, islessequal, isgreaterequal, isunordered,
signbit, fdim
- Categorization and comparison operations are applied
exclusively and consistently to the scalar part of a
Jet now: isnan, isinf, isnormal, isfinite, fpclassify
(new), fmin, fmax
- It is now possible to safely compare a Jet against a
scalar (or literal) without constructing a Jet first
(even if it’s nested)
This enables interaction with various arithmetic functions
that expect a scalar like instance, such as
boost::math::pow<-N> for reciprocal computation.
+ Add NumericDiffFirstOrderFunction (Sameer Agarwal)
* Backward Incompatible API Changes:
+ LocalParameterization is deprecated. It will be removed
in version 2.2. Use Manifold instead.
+ Classification functions like IsFinite are deprecated.
Use the C++11 functions (isfinite, isnan etc) going
forward. However to maintain consistent behaviour with
comparison operators, these functions only inspect the
scalar part of the Jet.
* Many Bug Fixes & Minor Changes, for details, see
http://ceres-solver.org/version_history.html
- Drop upstream fix-tbb-2021.1-detection.patch
- Use memory-constrains to avoid occasional OOM build failures
* Mon Feb 21 2022 Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Fix build with TBB >= 2021.1, add
fix-tbb-2021.1-detection.patch
- Correct License tags.
- Cleanup spec file, remove obsolete CMake options.
- Add _constraints to avoid occasional build failures.
* Sat Jan 16 2021 andy great <andythe_great@pm.me>
- Update to version 2.0.0.
* C++ threading based multi-threading support.
* Problem::AddResidualBlock(), SizedFunction, AutoDiffCostFunction,
NumericDiffCostFunction support an arbitrary number of parameter
blocks using variadic templates
* Significantly faster AutoDiff
* Mixed precision solves when using SPARSE_NORMAL_CHOLESKY.
* LocalParameterization objects can have a zero sized tangent
size, which effectively makes the parameter block constant.
In particular, this allows for a SubsetParameterization that
holds all the coordinates of a parameter block constant.
* Visibility based preconditioning now works with Eigen and CXSparse.
* Added Problem::EvaluateResidualBlock() and
Problem::EvaluateResidualBlockAssumingParametersUnchanged().
* GradientChecker now uses RIDDERS method for more accurate
numerical derivatives.
* Covariance computation uses a faster SVD algorithm
* A new local parameterization for lines
* A new (SUBSET) preconditioner for problems with general sparsity.
* Faster Schur elimination using faster custom BLAS routines for
small matrices.
* Automatic differentiation for FirstOrderFunction in the form of
AutoDiffFirstOrderFunction.
* TinySolverAutoDiffFunction now supports dynamic number of
residuals just like AutoDiffCostFunction.
* Backward Incompatible API Changes
* EvaluationCallback has been moved from Solver::Options to
Problem::Options for a more correct API.
* Removed Android.mk based build.
* Solver::Options::num_linear_solver_threads is no more.
* Several other moinor fixes and changes
* Thu Sep 17 2020 Dirk Stoecker <opensuse@dstoecker.de>
- libceres-devel requires glog-devel
- cleanup spec-file format