11 #ifndef __IPCGSEARCHDIRCALC_HPP__
12 #define __IPCGSEARCHDIRCALC_HPP__
39 const std::string& prefix);
IpoptData & IpData() const
IpoptCalculatedQuantities & IpCq() const
Class for all Chen-Goldfarb penalty method specific calculated quantities.
Class to organize all the additional data required by the Chen-Goldfarb penalty function algorithm.
Implementation of the search direction calculator that computes the Chen-Goldfarb step for the curren...
CGPenaltyData & CGPenData()
Method to easily access CGPenalty data.
Number pen_des_fact_
parameters used in computation of line search penalty parameter and KKT perturbation parameters
static void RegisterOptions(SmartPtr< RegisteredOptions > roptions)
Methods for IpoptType.
Number penalty_init_min_
safeguard factor for bound multipliers.
CGPenaltyCq & CGPenCq()
Method to easily access CGPenalty calculated quantities.
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)
overloaded from AlgorithmStrategyObject
void operator=(const CGSearchDirCalculator &)
Overloaded Equals Operator.
CGSearchDirCalculator(const CGSearchDirCalculator &)
Copy Constructor.
bool penalty_backward_
Algorithm type.
Index nonmonotone_pen_update_counter_
Counter for how many times the pen para is updated nonmonotonically.
bool never_use_fact_cgpen_direction_
Flag indicating whether the fast Chen-Goldfarb direction should never be used.
SmartPtr< PDSystemSolver > pd_solver_
CGSearchDirCalculator(const SmartPtr< PDSystemSolver > &pd_solver)
Constructor.
CGSearchDirCalculator()
Default Constructor.
Number penalty_init_max_
Maximal value for initial penalty parameter.
virtual bool ComputeSearchDirection()
Method for computing the search direction.
Number penalty_max_
Maximal value for penalty parameters.
Number kappa_x_dis_
parameters used to check if the fast direction can be used as the line search direction
virtual ~CGSearchDirCalculator()
Default destructor.
IpoptAdditionalCq & AdditionalCq()
IpoptAdditionalData & AdditionalData()
Get access to additional data object.
This class stores a list of user set options.
Base class for computing the search direction for the line search.
Template class for Smart Pointers.
int Index
Type of all indices of vectors, matrices etc.
double Number
Type of all numbers.