Main Page
Namespaces
Classes
Files
File List
File Members
build
buildd
coinor-ipopt-3.10.2
Ipopt
examples
ScalableProblems
LuksanVlcek2.hpp
Go to the documentation of this file.
1
// Copyright (C) 2005, 2006 International Business Machines and others.
2
// All Rights Reserved.
3
// This code is published under the Eclipse Public License.
4
//
5
// $Id: LuksanVlcek2.hpp 1861 2010-12-21 21:34:47Z andreasw $
6
//
7
// Authors: Andreas Waechter IBM 2005-10-127
8
9
#ifndef __LUKSANVLCEK2_HPP__
10
#define __LUKSANVLCEK2_HPP__
11
12
#include "
RegisteredTNLP.hpp
"
13
14
using namespace
Ipopt;
15
19
class
LuksanVlcek2
:
public
RegisteredTNLP
20
{
21
public
:
26
LuksanVlcek2
(
Number
g_l,
Number
g_u);
27
29
virtual
~
LuksanVlcek2
()
30
{}
31
;
32
34
virtual
bool
InitializeProblem(
Index
N);
35
39
virtual
bool
get_nlp_info(
Index
& n,
Index
&
m
,
Index
& nnz_jac_g,
40
Index
& nnz_h_lag, IndexStyleEnum&
index_style
);
41
43
virtual
bool
get_bounds_info(
Index
n,
Number
* x_l,
Number
* x_u,
44
Index
m
,
Number
* g_l,
Number
* g_u);
45
47
virtual
bool
get_starting_point(
Index
n,
bool
init_x,
Number
*
x
,
48
bool
init_z,
Number
* z_L,
Number
* z_U,
49
Index
m
,
bool
init_lambda,
50
Number
* lambda);
51
53
virtual
bool
eval_f
(
Index
n,
const
Number
*
x
,
bool
new_x,
Number
& obj_value);
54
56
virtual
bool
eval_grad_f
(
Index
n,
const
Number
*
x
,
bool
new_x,
Number
* grad_f);
57
59
virtual
bool
eval_g
(
Index
n,
const
Number
*
x
,
bool
new_x,
Index
m
,
Number
*
g
);
60
65
virtual
bool
eval_jac_g
(
Index
n,
const
Number
*
x
,
bool
new_x,
66
Index
m
,
Index
nele_jac
,
Index
* iRow,
Index
*jCol,
67
Number
* values);
68
73
virtual
bool
eval_h
(
Index
n,
const
Number
*
x
,
bool
new_x,
74
Number
obj_factor,
Index
m
,
const
Number
* lambda,
75
bool
new_lambda,
Index
nele_hess
,
Index
* iRow,
76
Index
* jCol,
Number
* values);
77
79
83
virtual
void
finalize_solution(
SolverReturn
status,
84
Index
n,
const
Number
*
x
,
const
Number
* z_L,
const
Number
* z_U,
85
Index
m
,
const
Number
*
g
,
const
Number
* lambda,
86
Number
obj_value,
87
const
IpoptData
* ip_data,
88
IpoptCalculatedQuantities
* ip_cq);
90
91
private
:
103
LuksanVlcek2
();
104
LuksanVlcek2
(
const
LuksanVlcek2
&);
105
LuksanVlcek2
& operator=(
const
LuksanVlcek2
&);
107
109
Index
N_
;
110
112
Number
g_l_
;
114
Number
g_u_
;
115
};
116
117
#endif
Generated on Fri Jun 29 2012 06:35:12 by
1.8.1.1