Ipopt Documentation  
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 // Authors: Carl Laird, Andreas Waechter IBM 2004-03-17
6 
7 #ifndef __IPTSYMSCALINGMETHOD_HPP__
8 #define __IPTSYMSCALINGMETHOD_HPP__
9 
10 #include "IpUtils.hpp"
11 #include "IpAlgStrategy.hpp"
12 
13 namespace Ipopt
14 {
15 
16 DECLARE_STD_EXCEPTION(ERROR_IN_LINEAR_SCALING_METHOD);
17 
22 {
23 public:
27  { }
28 
30  { }
32 
33  virtual bool InitializeImpl(
34  const OptionsList& options,
35  const std::string& prefix
36  ) = 0;
37 
42  Index n,
43  Index nnz,
44  const Index* airn,
45  const Index* ajcn,
46  const double* a,
47  double* scaling_factors
48  ) = 0;
49 
50 private:
59  const TSymScalingMethod&
60  );
61 
63  void operator=(
64  const TSymScalingMethod&
65  );
66 };
67 
68 } // namespace Ipopt
69 
70 #endif
This is the base class for all algorithm strategy objects.
This class stores a list of user set options.
Base class for the method for computing scaling factors for symmetric matrices in triplet format.
void operator=(const TSymScalingMethod &)
Default Assignment Operator.
TSymScalingMethod(const TSymScalingMethod &)
Copy Constructor.
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)=0
Implementation of the initialization method that has to be overloaded by for each derived class.
virtual bool ComputeSymTScalingFactors(Index n, Index nnz, const Index *airn, const Index *ajcn, const double *a, double *scaling_factors)=0
Method for computing the symmetric scaling factors, given the symmetric matrix in triplet (MA27) form...
This file contains a base class for all exceptions and a set of macros to help with exceptions.
DECLARE_STD_EXCEPTION(FATAL_ERROR_IN_LINEAR_SOLVER)
int Index
Type of all indices of vectors, matrices etc.
Definition: IpTypes.hpp:17