Ipopt  3.12.13
IpInexactTSymScalingMethod.hpp
Go to the documentation of this file.
1 // Copyright (C) 2009 International Business Machines and others.
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // $Id$
6 //
7 // Authors: Andreas Waechter, Frank E. Curtis IBM 2009-06-12
8 // (based on IpMc19TSymScalingMethod.hpp rev 699)
9 
10 #ifndef __IPINEXACTTSYMSCALINGMETHOD_HPP__
11 #define __IPINEXACTTSYMSCALINGMETHOD_HPP__
12 
13 #include "IpUtils.hpp"
14 #include "IpTSymScalingMethod.hpp"
15 #include "IpInexactCq.hpp"
16 
17 namespace Ipopt
18 {
19 
25  {
26  public:
30  {}
31 
33  {}
35 
37  virtual bool InitializeImpl(const OptionsList& options,
38  const std::string& prefix);
39 
42  virtual bool ComputeSymTScalingFactors(Index n,
43  Index nnz,
44  const ipfint* airn,
45  const ipfint* ajcn,
46  const double* a,
47  double* scaling_factors);
48  private:
57 
60 
63  {
64  InexactCq& inexact_cq =
65  static_cast<InexactCq&>(IpCq().AdditionalCq());
66  DBG_ASSERT(dynamic_cast<InexactCq*>(&IpCq().AdditionalCq()));
67  return inexact_cq;
68  }
69 
70  };
71 
72 
73 } // namespace Ipopt
74 
75 #endif
IpUtils.hpp
Ipopt::InexactTSymScalingMethod
Class for the method for computing scaling factors for symmetric matrices in triplet format,...
Definition: IpInexactTSymScalingMethod.hpp:24
Ipopt::AlgorithmStrategyObject::IpCq
IpoptCalculatedQuantities & IpCq() const
Definition: IpAlgStrategy.hpp:137
IpInexactCq.hpp
IpTSymScalingMethod.hpp
Ipopt
Definition: matlabjournal.hpp:14
Ipopt::InexactTSymScalingMethod::operator=
void operator=(const InexactTSymScalingMethod &)
Overloaded Equals Operator.
Ipopt::InexactTSymScalingMethod::ComputeSymTScalingFactors
virtual bool ComputeSymTScalingFactors(Index n, Index nnz, const ipfint *airn, const ipfint *ajcn, const double *a, double *scaling_factors)
Method for computing the symmetric scaling factors, given the symmtric matrix in triplet (MA27) forma...
Ipopt::InexactTSymScalingMethod::InexCq
InexactCq & InexCq()
Method to easily access Inexact calculated quantities.
Definition: IpInexactTSymScalingMethod.hpp:62
Ipopt::Index
int Index
Type of all indices of vectors, matrices etc.
Definition: IpTypes.hpp:19
ipfint
FORTRAN_INTEGER_TYPE ipfint
Definition: IpTypes.hpp:26
Ipopt::InexactTSymScalingMethod::InitializeImpl
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)
overloaded from AlgorithmStrategyObject
Ipopt::InexactTSymScalingMethod::~InexactTSymScalingMethod
virtual ~InexactTSymScalingMethod()
Definition: IpInexactTSymScalingMethod.hpp:32
Ipopt::TSymScalingMethod
Base class for the method for computing scaling factors for symmetric matrices in triplet format.
Definition: IpTSymScalingMethod.hpp:23
DBG_ASSERT
#define DBG_ASSERT(test)
Definition: IpDebug.hpp:38
Ipopt::OptionsList
This class stores a list of user set options.
Definition: IpOptionsList.hpp:32
Ipopt::InexactTSymScalingMethod::InexactTSymScalingMethod
InexactTSymScalingMethod()
Definition: IpInexactTSymScalingMethod.hpp:29
Ipopt::InexactCq
Class for all Chen-Goldfarb penalty method specific calculated quantities.
Definition: IpInexactCq.hpp:22