Ipopt  3.12.9
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
IpSolveStatistics.hpp
Go to the documentation of this file.
1 // Copyright (C) 2005, 2009 International Business Machines and others.
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // $Id: IpSolveStatistics.hpp 1861 2010-12-21 21:34:47Z andreasw $
6 //
7 // Authors: Carl Laird, Andreas Waechter IBM 2005-08-15
8 
9 #ifndef __IPSOLVESTATISTICS_HPP__
10 #define __IPSOLVESTATISTICS_HPP__
11 
12 #include "IpReferenced.hpp"
13 #include "IpSmartPtr.hpp"
14 
15 namespace Ipopt
16 {
17  // forward declaration (to avoid inclusion of too many header files)
18  class IpoptNLP;
19  class IpoptData;
20  class IpoptCalculatedQuantities;
21 
28  {
29  public:
36  SolveStatistics(const SmartPtr<IpoptNLP>& ip_nlp,
37  const SmartPtr<IpoptData>& ip_data,
39 
41  virtual ~SolveStatistics()
42  {}
44 
49  virtual Index IterationCount() const;
51  virtual Number TotalCpuTime() const;
55  {
56  return TotalCpuTime();
57  }
59  virtual Number TotalSysTime() const;
61  virtual Number TotalWallclockTime() const;
63  virtual void NumberOfEvaluations(Index& num_obj_evals,
64  Index& num_constr_evals,
65  Index& num_obj_grad_evals,
66  Index& num_constr_jac_evals,
67  Index& num_hess_evals) const;
69  virtual void Infeasibilities(Number& dual_inf,
70  Number& constr_viol,
71  Number& complementarity,
72  Number& kkt_error) const;
74  virtual void ScaledInfeasibilities(Number& scaled_dual_inf,
75  Number& scaled_constr_viol,
76  Number& scaled_complementarity,
77  Number& scaled_kkt_error) const;
79  virtual Number FinalObjective() const;
81  virtual Number FinalScaledObjective() const;
83 
84  private:
95 
98 
100  void operator=(const SolveStatistics&);
102 
107  /* Total CPU time */
109  /* Total system time */
111  /* Total wall clock time */
124 
146  };
147 
148 } // namespace Ipopt
149 
150 #endif
virtual Number TotalCpuTime() const
Total CPU time, including function evaluations.
Number dual_inf_
Final unscaled dual infeasibility (max-norm)
Number constr_viol_
Final unscaled constraint violation (max-norm)
Number compl_
Final unscaled complementarity error (max-norm)
void operator=(const SolveStatistics &)
Overloaded Equals Operator.
Index num_obj_evals_
Number of objective function evaluations.
Number scaled_constr_viol_
Final scaled constraint violation (max-norm)
virtual void Infeasibilities(Number &dual_inf, Number &constr_viol, Number &complementarity, Number &kkt_error) const
Unscaled solution infeasibilities.
double Number
Type of all numbers.
Definition: IpTypes.hpp:17
virtual Number TotalWallclockTime() const
Total wall clock time, including function evaluations.
virtual ~SolveStatistics()
Default destructor.
Template class for Smart Pointers.
Definition: IpSmartPtr.hpp:172
ReferencedObject class.
Number TotalCPUTime() const
Total CPU time, including function evaluations.
virtual void NumberOfEvaluations(Index &num_obj_evals, Index &num_constr_evals, Index &num_obj_grad_evals, Index &num_constr_jac_evals, Index &num_hess_evals) const
Number of NLP function evaluations.
virtual Number FinalScaledObjective() const
Final scaled value of objective function.
Number scaled_obj_val_
Final scaled value of objective function.
Index num_obj_grad_evals_
Number of objective gradient evaluations.
Number obj_val_
Final unscaled value of objective function.
Index num_hess_evals_
Number of Lagrangian Hessian evaluations.
int Index
Type of all indices of vectors, matrices etc.
Definition: IpTypes.hpp:19
Index num_constr_evals_
Number of constraints evaluations (max of equality and inequality)
virtual void ScaledInfeasibilities(Number &scaled_dual_inf, Number &scaled_constr_viol, Number &scaled_complementarity, Number &scaled_kkt_error) const
Scaled solution infeasibilities.
Index num_constr_jac_evals_
Number of constraint Jacobian evaluations.
Number kkt_error_
Final overall unscaled KKT error (max-norm)
virtual Number FinalObjective() const
Final value of objective function.
Number scaled_dual_inf_
Final scaled dual infeasibility (max-norm)
Number scaled_kkt_error_
Final overall scaled KKT error (max-norm)
This class collects statistics about an optimziation run, such as iteration count, final infeasibilities etc.
Number scaled_compl_
Final scaled complementarity error (max-norm)
SolveStatistics()
Default Constructor.
Index num_iters_
Number of iterations.
virtual Index IterationCount() const
Iteration counts.
virtual Number TotalSysTime() const
Total System time, including function evaluations.