14#ifndef PDLP_TERMINATION_H_
15#define PDLP_TERMINATION_H_
17#include "absl/types/optional.h"
18#include "ortools/pdlp/solve_log.pb.h"
19#include "ortools/pdlp/solvers.pb.h"
52 const TerminationCriteria& criteria,
const IterationStats& stats,
54 bool force_numerical_termination =
false);
59 const QuadraticProgramStats& stats);
88 double eps_optimal_absolute,
double eps_optimal_relative,
90 const ConvergenceInformation& stats);
absl::optional< TerminationReasonAndPointType > CheckTerminationCriteria(const TerminationCriteria &criteria, const IterationStats &stats, const QuadraticProgramBoundNorms &bound_norms, const bool force_numerical_termination)
RelativeConvergenceInformation ComputeRelativeResiduals(const double eps_optimal_absolute, const double eps_optimal_relative, const QuadraticProgramBoundNorms &norms, const ConvergenceInformation &stats)
QuadraticProgramBoundNorms BoundNormsFromProblemStats(const QuadraticProgramStats &stats)
double l_inf_norm_constraint_bounds
double l2_norm_primal_linear_objective
double l_inf_norm_primal_linear_objective
double l2_norm_constraint_bounds