7 #ifndef __IPNLPSCALING_HPP__ 8 #define __IPNLPSCALING_HPP__ 22 class ScaledMatrixSpace;
23 class SymScaledMatrixSpace;
46 const std::string& prefix
50 return InitializeImpl(options, prefix);
56 virtual Number apply_obj_scaling(
61 virtual Number unapply_obj_scaling(
67 apply_vector_scaling_x_NonConst(
73 apply_vector_scaling_x(
79 unapply_vector_scaling_x_NonConst(
85 unapply_vector_scaling_x(
91 apply_vector_scaling_c(
97 unapply_vector_scaling_c(
103 apply_vector_scaling_c_NonConst(
109 unapply_vector_scaling_c_NonConst(
115 apply_vector_scaling_d(
121 unapply_vector_scaling_d(
127 apply_vector_scaling_d_NonConst(
133 unapply_vector_scaling_d_NonConst(
163 apply_hessian_scaling(
219 apply_grad_obj_scaling_NonConst(
225 apply_grad_obj_scaling(
232 unapply_grad_obj_scaling_NonConst(
239 unapply_grad_obj_scaling(
247 virtual bool have_x_scaling() = 0;
249 virtual bool have_c_scaling() = 0;
251 virtual bool have_d_scaling() = 0;
257 virtual void DetermineScaling(
275 virtual bool InitializeImpl(
277 const std::string& prefix
327 virtual Number apply_obj_scaling(
332 virtual Number unapply_obj_scaling(
337 apply_vector_scaling_x_NonConst(
342 apply_vector_scaling_x(
347 unapply_vector_scaling_x_NonConst(
352 unapply_vector_scaling_x(
357 apply_vector_scaling_c(
362 unapply_vector_scaling_c(
367 apply_vector_scaling_c_NonConst(
372 unapply_vector_scaling_c_NonConst(
377 apply_vector_scaling_d(
382 unapply_vector_scaling_d(
387 apply_vector_scaling_d_NonConst(
392 unapply_vector_scaling_d_NonConst(
407 apply_hessian_scaling(
412 virtual bool have_x_scaling();
414 virtual bool have_c_scaling();
415 virtual bool have_d_scaling();
421 virtual void DetermineScaling(
437 static void RegisterOptions(
442 virtual bool InitializeImpl(
444 const std::string& prefix
454 virtual void DetermineScalingParametersImpl(
540 virtual void DetermineScalingParametersImpl(
const Journalist & Jnlst() const
Accessor method for the journalist.
This is the abstract base class for problem scaling.
Number obj_scaling_factor_
Additional scaling value for the objective function.
Class implementing the scaling object that doesn't to any scaling.
SmartPtr< SymScaledMatrixSpace > scaled_h_space_
Scaled Hessian of Lagrangian spacea.
SmartPtr< ScaledMatrixSpace > scaled_jac_d_space_
Scaled Jacobian of d space.
This is a base class for many standard scaling techniques.
virtual ~NoNLPScalingObject()
Destructor.
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.
VectorSpace base class, corresponding to the Vector base class.
SmartPtr< const Journalist > jnlst_
SmartPtr< ScaledMatrixSpace > scaled_jac_c_space_
Scaled Matrix Spaces.
ipnumber Number
Type of all numbers.
bool Initialize(const Journalist &jnlst, const OptionsList &options, const std::string &prefix)
Method to initialize the options.
Class responsible for all message output.
Number df_
Scaling parameters - we only need to keep copies of the objective scaling and the x scaling - the oth...
SmartPtr< Vector > dx_
x scaling