Ipopt
3.11.8
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
contrib
CGPenalty
IpCGSearchDirCalc.hpp
Go to the documentation of this file.
1
// Copyright (C) 2005, 2008 International Business Machines and others.
2
// All Rights Reserved.
3
// This code is published under the Eclipse Public License.
4
//
5
// $Id: IpCGSearchDirCalc.hpp 1861 2010-12-21 21:34:47Z andreasw $
6
//
7
// Authors: Andreas Waechter IBM 2005-10-13
8
//
9
// Lifeng Chen/Zaiwen Wen Columbia Univ
10
11
#ifndef __IPCGSEARCHDIRCALC_HPP__
12
#define __IPCGSEARCHDIRCALC_HPP__
13
14
#include "
IpSearchDirCalculator.hpp
"
15
#include "
IpPDSystemSolver.hpp
"
16
#include "
IpCGPenaltyCq.hpp
"
17
18
namespace
Ipopt
19
{
20
25
class
CGSearchDirCalculator
:
public
SearchDirectionCalculator
26
{
27
public
:
31
CGSearchDirCalculator
(
const
SmartPtr<PDSystemSolver>
& pd_solver);
32
34
virtual
~CGSearchDirCalculator
();
36
38
virtual
bool
InitializeImpl
(
const
OptionsList
& options,
39
const
std::string& prefix);
40
44
virtual
bool
ComputeSearchDirection
();
45
48
static
void
RegisterOptions
(
SmartPtr<RegisteredOptions>
roptions);
50
51
private
:
61
CGSearchDirCalculator
();
62
64
CGSearchDirCalculator
(
const
CGSearchDirCalculator
&);
65
67
void
operator=
(
const
CGSearchDirCalculator
&);
69
71
CGPenaltyData
&
CGPenData
()
72
{
73
CGPenaltyData
& cg_pen_data =
74
static_cast<
CGPenaltyData
&
>
(
IpData
().
AdditionalData
());
75
DBG_ASSERT
(dynamic_cast<CGPenaltyData*>(&
IpData
().AdditionalData()));
76
return
cg_pen_data;
77
}
78
80
CGPenaltyCq
&
CGPenCq
()
81
{
82
CGPenaltyCq
& cg_pen_cq =
83
static_cast<
CGPenaltyCq
&
>
(
IpCq
().
AdditionalCq
());
84
DBG_ASSERT
(dynamic_cast<CGPenaltyCq*>(&
IpCq
().AdditionalCq()));
85
return
cg_pen_cq;
86
}
87
94
Number
penalty_init_min_
;
96
Number
penalty_init_max_
;
98
Number
penalty_max_
;
99
100
101
104
Number
pen_des_fact_
;
105
107
bool
penalty_backward_
;
108
111
Number
kappa_x_dis_
;
112
Number
kappa_y_dis_
;
113
Number
vartheta_
;
114
Number
delta_y_max_
;
115
Number
fast_des_fact_
;
116
Number
pen_init_fac_
;
117
120
bool
never_use_fact_cgpen_direction_
;
121
123
Index
nonmonotone_pen_update_counter_
;
125
128
SmartPtr<PDSystemSolver>
pd_solver_
;
130
};
131
132
}
// namespace Ipopt
133
134
#endif
Generated by
1.8.3.1