7 #ifndef __IPEQUILIBRATIONSCALING_HPP__ 8 #define __IPEQUILIBRATIONSCALING_HPP__ 51 const std::string& prefix
121 const Vector& reference_point,
122 Number random_pert_radius,
void operator=(const PointPerturber &)
Default Assignment Operator.
PointPerturber(const Vector &reference_point, Number random_pert_radius, const Matrix &Px_L, const Vector &x_L, const Matrix &Px_U, const Vector &x_U)
bool InitializeImpl(const OptionsList &options, const std::string &prefix)
Initialize the object from the options.
This is a base class for many standard scaling techniques.
SmartPtr< NLP > nlp_
pointer to the NLP to get scaling parameters
Number point_perturbation_radius_
maximal radius for the random perturbation of the initial point
This file contains a base class for all exceptions and a set of macros to help with exceptions...
Template class for Smart Pointers.
Storing the reference count of all the smart pointers that currently reference it.
This class stores a list of user set options.
This class is a simple object for generating randomly perturbed points that are within the NLP bounds...
SmartPtr< Vector > pert_dir_
pointer to the perturbation vector
SmartPtr< Vector > ref_point_
pointer to the midpoint of the perturbation
static void RegisterOptions(const SmartPtr< RegisteredOptions > &roptions)
Methods for IpoptType.
ipnumber Number
Type of all numbers.
#define IPOPT_DECL_MC19A(x)
SmartPtr< Vector > MakeNewPerturbedPoint() const
Return a new perturbed point.
virtual ~PointPerturber()
Destructor.
This class does problem scaling by setting the scaling parameters based on the maximum of the gradien...
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...
virtual ~EquilibrationScaling()
Destructor.
EquilibrationScaling(const SmartPtr< NLP > &nlp, SmartPtr< LibraryLoader > hslloader_)
void operator=(const EquilibrationScaling &)
Default Assignment Operator.
SmartPtr< LibraryLoader > hslloader