Lines Matching refs:summary
60 LineSearch::Summary DoLineSearch(const Minimizer::Options& options,
93 LineSearch::Summary summary;
96 line_search->Search(1.0, cost, gradient.dot(delta), &summary);
97 if (!summary.success) {
101 line_search->Search(1.0, cost, -gradient.squaredNorm(), &summary);
103 return summary;
126 Solver::Summary* summary) {
146 summary->termination_type = NO_CONVERGENCE;
147 summary->num_successful_steps = 0;
148 summary->num_unsuccessful_steps = 0;
184 summary->message =
186 summary->termination_type = FAILURE;
187 LOG_IF(WARNING, is_not_silent) << "Terminating: " << summary->message;
203 summary->message = "Residual and Jacobian evaluation failed.";
204 summary->termination_type = FAILURE;
205 LOG_IF(WARNING, is_not_silent) << "Terminating: " << summary->message;
213 summary->message = "Unable to compute gradient step.";
214 summary->termination_type = FAILURE;
215 LOG(ERROR) << "Terminating: " << summary->message;
219 summary->initial_cost = cost + summary->fixed_cost;
220 iteration_summary.cost = cost + summary->fixed_cost;
226 summary->message = StringPrintf("Gradient tolerance reached. "
230 summary->termination_type = CONVERGENCE;
231 VLOG_IF(1, is_not_silent) << "Terminating: " << summary->message;
246 + summary->preprocessor_time_in_seconds;
247 summary->iterations.push_back(iteration_summary);
259 if (!RunCallbacks(options, iteration_summary, summary)) {
265 summary->message = "Maximum number of iterations reached.";
266 summary->termination_type = NO_CONVERGENCE;
267 VLOG_IF(1, is_not_silent) << "Terminating: " << summary->message;
272 summary->preprocessor_time_in_seconds;
274 summary->message = "Maximum solver time reached.";
275 summary->termination_type = NO_CONVERGENCE;
276 VLOG_IF(1, is_not_silent) << "Terminating: " << summary->message;
298 TrustRegionStrategy::Summary strategy_summary =
305 summary->message =
308 summary->termination_type = FAILURE;
309 LOG_IF(WARNING, is_not_silent) << "Terminating: " << summary->message;
314 iteration_summary.iteration = summary->iterations.back().iteration + 1;
352 summary->message = StringPrintf(
356 summary->termination_type = FAILURE;
357 LOG_IF(WARNING, is_not_silent) << "Terminating: " << summary->message;
364 // still executed, we are going to fill the iteration summary
366 iteration_summary.cost = cost + summary->fixed_cost;
369 summary->iterations.back().gradient_max_norm;
371 summary->iterations.back().gradient_norm;
388 const LineSearch::Summary line_search_summary =
414 ++summary->num_inner_iteration_steps;
418 Solver::Summary inner_iteration_summary;
450 summary->inner_iteration_time_in_seconds +=
461 summary->message =
467 summary->termination_type = CONVERGENCE;
468 VLOG_IF(1, is_not_silent) << "Terminating: " << summary->message;
476 summary->message =
481 summary->termination_type = CONVERGENCE;
482 VLOG_IF(1, is_not_silent) << "Terminating: " << summary->message;
567 ++summary->num_successful_steps;
580 summary->message = "Residual and Jacobian evaluation failed.";
581 summary->termination_type = FAILURE;
582 LOG_IF(WARNING, is_not_silent) << "Terminating: " << summary->message;
590 summary->message =
592 summary->termination_type = FAILURE;
593 LOG(ERROR) << "Terminating: " << summary->message;
602 summary->message = StringPrintf("Gradient tolerance reached. "
606 summary->termination_type = CONVERGENCE;
607 VLOG_IF(1, is_not_silent) << "Terminating: " << summary->message;
658 ++summary->num_unsuccessful_steps;
666 iteration_summary.cost = cost + summary->fixed_cost;
670 summary->message = "Termination. Minimum trust region radius reached.";
671 summary->termination_type = CONVERGENCE;
672 VLOG_IF(1, is_not_silent) << summary->message;
680 + summary->preprocessor_time_in_seconds;
681 summary->iterations.push_back(iteration_summary);