IpTSymScalingMethod.hpp
Go to the documentation of this file.
1 // Copyright (C) 2004, 2006 International Business Machines and others.
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // $Id: IpTSymScalingMethod.hpp 1861 2010-12-21 21:34:47Z andreasw $
6 //
7 // Authors: Carl Laird, Andreas Waechter IBM 2004-03-17
8 
9 #ifndef __IPTSYMSCALINGMETHOD_HPP__
10 #define __IPTSYMSCALINGMETHOD_HPP__
11 
12 #include "IpUtils.hpp"
13 #include "IpAlgStrategy.hpp"
14 
15 namespace Ipopt
16 {
17 
18  DECLARE_STD_EXCEPTION(ERROR_IN_LINEAR_SCALING_METHOD);
19 
24  {
25  public:
29  {}
30 
32  {}
34 
36  virtual bool InitializeImpl(const OptionsList& options,
37  const std::string& prefix) = 0;
38 
41  virtual bool ComputeSymTScalingFactors(Index n,
42  Index nnz,
43  const Index* airn,
44  const Index* ajcn,
45  const double* a,
46  double* scaling_factors) = 0;
47  private:
56 
58  void operator=(const TSymScalingMethod&);
59  };
60 
61 } // namespace Ipopt
62 
63 #endif