A variety of small updates
1. Add answers to a number of FAQs.
2. Add a note to the documentation for NumericDiffCostFunction that
NumericDiffOptions needs to be documented and mentioned.
3. Update the docs for Solver::Options::numeric_derivative_relative_step_size
to indicate that this setting only applies to the gradient checker.
4. Remove deprecated constructors from NumericDiffCostFunction and
DynamicNumericDiffCostFunction.
Change-Id: If8fc011b2a5996dbc2c51268aa477550ed014a1c
diff --git a/include/ceres/dynamic_numeric_diff_cost_function.h b/include/ceres/dynamic_numeric_diff_cost_function.h
index c852d57..7f0a951 100644
--- a/include/ceres/dynamic_numeric_diff_cost_function.h
+++ b/include/ceres/dynamic_numeric_diff_cost_function.h
@@ -85,22 +85,6 @@
options_(options) {
}
- // Deprecated. New users should avoid using this constructor. Instead, use the
- // constructor with NumericDiffOptions.
- DynamicNumericDiffCostFunction(
- const CostFunctor* functor,
- Ownership ownership,
- double relative_step_size)
- : functor_(functor),
- ownership_(ownership),
- options_() {
- LOG(WARNING) << "This constructor is deprecated and will be removed in "
- "a future version. Please use the NumericDiffOptions "
- "constructor instead.";
-
- options_.relative_step_size = relative_step_size;
- }
-
virtual ~DynamicNumericDiffCostFunction() {
if (ownership_ != TAKE_OWNERSHIP) {
functor_.release();
diff --git a/include/ceres/numeric_diff_cost_function.h b/include/ceres/numeric_diff_cost_function.h
index fa96078..5dfaeab 100644
--- a/include/ceres/numeric_diff_cost_function.h
+++ b/include/ceres/numeric_diff_cost_function.h
@@ -206,29 +206,6 @@
}
}
- // Deprecated. New users should avoid using this constructor. Instead, use the
- // constructor with NumericDiffOptions.
- NumericDiffCostFunction(CostFunctor* functor,
- Ownership ownership,
- int num_residuals,
- const double relative_step_size)
- :functor_(functor),
- ownership_(ownership),
- options_() {
- LOG(WARNING) << "This constructor is deprecated and will be removed in "
- "a future version. Please use the NumericDiffOptions "
- "constructor instead.";
-
- if (kNumResiduals == DYNAMIC) {
- SizedCostFunction<kNumResiduals,
- N0, N1, N2, N3, N4,
- N5, N6, N7, N8, N9>
- ::set_num_residuals(num_residuals);
- }
-
- options_.relative_step_size = relative_step_size;
- }
-
~NumericDiffCostFunction() {
if (ownership_ != TAKE_OWNERSHIP) {
functor_.release();
diff --git a/include/ceres/solver.h b/include/ceres/solver.h
index 318cf48..f53760e 100644
--- a/include/ceres/solver.h
+++ b/include/ceres/solver.h
@@ -701,10 +701,20 @@
// this number, then the jacobian for that cost term is dumped.
double gradient_check_relative_precision;
- // Relative shift used for taking numeric derivatives. For finite
- // differencing, each dimension is evaluated at slightly shifted
- // values; for the case of central difference, this is what gets
- // evaluated:
+ // WARNING: This option only applies to the to the numeric
+ // differentiation used for checking the user provided derivatives
+ // when when Solver::Options::check_gradients is true. If you are
+ // using NumericDiffCostFunction and are interested in changing
+ // the step size for numeric differentiation in your cost
+ // function, please have a look at
+ // include/ceres/numeric_diff_options.h.
+ //
+ // Relative shift used for taking numeric derivatives when
+ // Solver::Options::check_gradients is true.
+ //
+ // For finite differencing, each dimension is evaluated at
+ // slightly shifted values; for the case of central difference,
+ // this is what gets evaluated:
//
// delta = numeric_derivative_relative_step_size;
// f_initial = f(x)