~siretart/ubuntu/utopic/blender/libav10

« back to all changes in this revision

Viewing changes to extern/libmv/third_party/ceres/internal/ceres/levenberg_marquardt_strategy.cc

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2014-02-19 11:24:23 UTC
  • mfrom: (14.2.23 sid)
  • Revision ID: package-import@ubuntu.com-20140219112423-rkmaz2m7ha06d4tk
Tags: 2.69-3ubuntu1
* Merge with Debian; remaining changes:
  - Configure without OpenImageIO on armhf, as it is not available on
    Ubuntu.

Show diffs side-by-side

added added

removed removed

Lines of Context:
34
34
#include "Eigen/Core"
35
35
#include "ceres/array_utils.h"
36
36
#include "ceres/internal/eigen.h"
 
37
#include "ceres/linear_least_squares_problems.h"
37
38
#include "ceres/linear_solver.h"
38
39
#include "ceres/sparse_matrix.h"
39
40
#include "ceres/trust_region_strategy.h"
48
49
    : linear_solver_(options.linear_solver),
49
50
      radius_(options.initial_radius),
50
51
      max_radius_(options.max_radius),
51
 
      min_diagonal_(options.lm_min_diagonal),
52
 
      max_diagonal_(options.lm_max_diagonal),
 
52
      min_diagonal_(options.min_lm_diagonal),
 
53
      max_diagonal_(options.max_lm_diagonal),
53
54
      decrease_factor_(2.0),
54
55
      reuse_diagonal_(false) {
55
56
  CHECK_NOTNULL(linear_solver_);
111
112
  } else {
112
113
    VectorRef(step, num_parameters) *= -1.0;
113
114
  }
114
 
 
115
115
  reuse_diagonal_ = true;
116
116
 
 
117
  if (per_solve_options.dump_format_type == CONSOLE ||
 
118
      (per_solve_options.dump_format_type != CONSOLE &&
 
119
       !per_solve_options.dump_filename_base.empty())) {
 
120
    if (!DumpLinearLeastSquaresProblem(per_solve_options.dump_filename_base,
 
121
                                       per_solve_options.dump_format_type,
 
122
                                       jacobian,
 
123
                                       solve_options.D,
 
124
                                       residuals,
 
125
                                       step,
 
126
                                       0)) {
 
127
      LOG(ERROR) << "Unable to dump trust region problem."
 
128
                 << " Filename base: " << per_solve_options.dump_filename_base;
 
129
    }
 
130
  }
 
131
 
 
132
 
117
133
  TrustRegionStrategy::Summary summary;
118
134
  summary.residual_norm = linear_solver_summary.residual_norm;
119
135
  summary.num_iterations = linear_solver_summary.num_iterations;