mirror of
https://github.com/ceres-solver/ceres-solver.git
synced 2026-08-29 16:40:38 +08:00
4bf3868beca9c17615f72ec03730cddb3676acaa
The schur eliminator treats rows with e blocks and row with no e blocks separately. The template specialization logic only applies to the rows with e blocks. So, in cases where the rows with e-blocks have a fixed size f-block but the rows without e-blocks have f-blocks of varying sizes, DetectStructure will return a static f-block size, but we need to be careful that we do not blindly use that static f-block size everywhere. This patch fixes a bug where such care was not being taken, where it was assumed that the static f-block size could be assumed for all f-block sizes. A new test is added, which triggers an exception in debug mode. In release mode this error does not present itself, due to a peculiarity of the way Eigen works. Thanks to Werner Trobin for reporting this bug. Change-Id: I8ae7aabf8eed8c3f9cf74b6c74d632ba44f82581
Ceres Solver - A non-linear least squares minimizer
Please see ceres-solver.org for more information.
WARNING - Do not make GitHub pull requests!
Ceres development happens on Gerrit, including both repository hosting and code reviews. The GitHub Repository is a continuously updated mirror which is primarily meant for issue tracking. Please see our Contributing to Ceres Guide for more details.
The upstream Gerrit repository is
https://ceres-solver.googlesource.com/ceres-solver
Description
Languages
C++
94.4%
CMake
3.8%
Python
0.8%
C
0.5%
Starlark
0.4%