Ipopt
3.11.8
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Interfaces
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
27
class
SolveStatistics
:
public
ReferencedObject
28
{
29
public
:
36
SolveStatistics
(
const
SmartPtr<IpoptNLP>
& ip_nlp,
37
const
SmartPtr<IpoptData>
& ip_data,
38
const
SmartPtr<IpoptCalculatedQuantities>
& ip_cq);
39
41
virtual
~SolveStatistics
()
42
{}
44
49
virtual
Index
IterationCount
()
const
;
51
virtual
Number
TotalCpuTime
()
const
;
54
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
:
94
SolveStatistics
();
95
97
SolveStatistics
(
const
SolveStatistics
&);
98
100
void
operator=
(
const
SolveStatistics
&);
102
106
Index
num_iters_
;
107
/* Total CPU time */
108
Number
total_cpu_time_
;
109
/* Total system time */
110
Number
total_sys_time_
;
111
/* Total wall clock time */
112
Number
total_wallclock_time_
;
114
Index
num_obj_evals_
;
117
Index
num_constr_evals_
;
119
Index
num_obj_grad_evals_
;
121
Index
num_constr_jac_evals_
;
123
Index
num_hess_evals_
;
124
126
Number
scaled_obj_val_
;
128
Number
obj_val_
;
130
Number
scaled_dual_inf_
;
132
Number
dual_inf_
;
134
Number
scaled_constr_viol_
;
136
Number
constr_viol_
;
138
Number
scaled_compl_
;
140
Number
compl_
;
142
Number
scaled_kkt_error_
;
144
Number
kkt_error_
;
146
};
147
148
}
// namespace Ipopt
149
150
#endif
Generated by
1.8.3.1