Ipopt Documentation  
IpPDSystemSolver.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-08-13
6 
7 #ifndef __IPPDSYSTEMSOLVER_HPP__
8 #define __IPPDSYSTEMSOLVER_HPP__
9 
10 #include "IpUtils.hpp"
11 #include "IpSymMatrix.hpp"
12 #include "IpAlgStrategy.hpp"
13 #include "IpIteratesVector.hpp"
14 
15 namespace Ipopt
16 {
17 
75 {
76 public:
79 
81  { }
82 
84  virtual ~PDSystemSolver()
85  { }
87 
89  virtual bool InitializeImpl(
90  const OptionsList& options,
91  const std::string& prefix
92  ) = 0;
93 
108  virtual bool Solve(
109  Number alpha,
110  Number beta,
111  const IteratesVector& rhs,
112  IteratesVector& res,
113  bool allow_inexact = false,
114  bool improve_solution = false
115  ) = 0;
116 
117 private:
128 
130  const PDSystemSolver&
131  );
133 };
134 
135 } // namespace Ipopt
136 
137 #endif
This is the base class for all algorithm strategy objects.
Specialized CompoundVector class specifically for the algorithm iterates.
This class stores a list of user set options.
Pure Primal Dual System Solver Base Class.
virtual bool Solve(Number alpha, Number beta, const IteratesVector &rhs, IteratesVector &res, bool allow_inexact=false, bool improve_solution=false)=0
Solve the primal dual system, given one right hand side.
PDSystemSolver()
Default Constructor.
PDSystemSolver & operator=(const PDSystemSolver &)
Default Assignment Operator.
virtual ~PDSystemSolver()
Destructor.
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)=0
overloaded from AlgorithmStrategyObject
#define IPOPTLIB_EXPORT
Definition: config.h:94
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