9 #ifndef __IPGRADIENTSCALING_HPP__
10 #define __IPGRADIENTSCALING_HPP__
46 const std::string& prefix);
bool InitializeImpl(const OptionsList &options, const std::string &prefix)
Initialize the object from the options.
virtual ~GradientScaling()
Default destructor.
double Number
Type of all numbers.
Number scaling_constr_target_gradient_
target size of norm for constraint gradients
This is a base class for many standard scaling techniques.
GradientScaling(const SmartPtr< NLP > &nlp)
virtual void DetermineScalingParametersImpl(const SmartPtr< const VectorSpace > x_space, const SmartPtr< const VectorSpace > c_space, const SmartPtr< const VectorSpace > d_space, const SmartPtr< const MatrixSpace > jac_c_space, const SmartPtr< const MatrixSpace > jac_d_space, const SmartPtr< const SymMatrixSpace > h_space, const Matrix &Px_L, const Vector &x_L, const Matrix &Px_U, const Vector &x_U, Number &df, SmartPtr< Vector > &dx, SmartPtr< Vector > &dc, SmartPtr< Vector > &dd)
This is the method that has to be overloaded by a particular scaling method that somehow computes the...
Template class for Smart Pointers.
This class stores a list of user set options.
This class does problem scaling by setting the scaling parameters based on the maximum of the gradien...
Number * x_L
Lower bounds on variables.
void operator=(const GradientScaling &)
Overloaded Equals Operator.
Number Number * x_U
Upper bounds on variables.
static void RegisterOptions(const SmartPtr< RegisteredOptions > &roptions)
Methods for IpoptType.
SmartPtr< NLP > nlp_
pointer to the NLP to get scaling parameters
Number scaling_obj_target_gradient_
target size of norm for objective gradient
Number scaling_max_gradient_
maximum allowed gradient before scaling is performed
Number scaling_min_value_
minimum value of a scaling parameter