Ipopt Documentation  
 
Loading...
Searching...
No Matches
IpUserScaling.hpp
Go to the documentation of this file.
1// Copyright (C) 2005, 2007 International Business Machines and others.
2// All Rights Reserved.
3// This code is published under the Eclipse Public License.
4//
5// Authors: Carl Laird, Andreas Waechter IBM 2005-06-25
6
7#ifndef __IPUSERSCALING_HPP__
8#define __IPUSERSCALING_HPP__
9
10#include "IpNLPScaling.hpp"
11#include "IpNLP.hpp"
12
13namespace Ipopt
14{
19{
20public:
24 const SmartPtr<const NLP>& nlp)
26 nlp_(nlp)
27 { }
28
30 virtual ~UserScaling()
31 { }
33
34protected:
36 const SmartPtr<const VectorSpace> x_space,
37 const SmartPtr<const VectorSpace> c_space,
38 const SmartPtr<const VectorSpace> d_space,
39 const SmartPtr<const MatrixSpace> jac_c_space,
40 const SmartPtr<const MatrixSpace> jac_d_space,
42 const Matrix& Px_L,
43 const Vector& x_L,
44 const Matrix& Px_U,
45 const Vector& x_U,
46 Number& df,
50 );
51
52private:
53
64
66 const UserScaling&
67 );
68
71 const UserScaling&
72 );
74
77};
78} // namespace Ipopt
79#endif
Matrix Base Class.
Definition IpMatrix.hpp:28
Template class for Smart Pointers.
This is a base class for many standard scaling techniques.
This class does problem scaling by getting scaling parameters from the user (through the NLP interfac...
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...
SmartPtr< const NLP > nlp_
pointer to the NLP to get scaling parameters
virtual ~UserScaling()
Destructor.
UserScaling(const SmartPtr< const NLP > &nlp)
UserScaling(const UserScaling &)
Copy Constructor.
void operator=(const UserScaling &)
Default Assignment Operator.
Vector Base Class.
Definition IpVector.hpp:48
This file contains a base class for all exceptions and a set of macros to help with exceptions.
ipnumber Number
Type of all numbers.
Definition IpTypes.hpp:17