/build/buildd/coinor-ipopt-3.10.1/Ipopt/contrib/sIPOPT/src/SensSimpleBacksolver.hpp
Go to the documentation of this file.
00001 // Copyright 2009, 2011 Hans Pirnay
00002 // All Rights Reserved.
00003 // This code is published under the Eclipse Public License.
00004 //
00005 // Date    : 2009-04-06
00006 //
00007 // Purpose : This is the same as IpSensitivityCalculator.hpp
00008 //           It implements the SensBacksolver Interface.
00009 
00010 #ifndef __ASSIMPLEBACKSOLVER_HPP__
00011 #define __ASSIMPLEBACKSOLVER_HPP__
00012 
00013 
00014 #include "IpPDSystemSolver.hpp"
00015 #include "SensBacksolver.hpp"
00016 
00017 namespace Ipopt {
00018   class SimpleBacksolver : public SensBacksolver
00019   {
00020   public:
00021 
00022     SimpleBacksolver(SmartPtr<PDSystemSolver> pd_solver);
00023 
00024     ~SimpleBacksolver()
00025     {}
00026 
00027     bool InitializeImpl(const OptionsList& options,
00028                         const std::string& prefix);
00029 
00030     bool Solve(SmartPtr<IteratesVector> delta_lhs, SmartPtr<const IteratesVector> delta_rhs);
00031 
00032 
00033   private:
00034 
00035     SimpleBacksolver();
00036 
00037     SmartPtr<PDSystemSolver> pd_solver_;
00038     bool allow_inexact_;
00039   };
00040 }
00041 
00042 #endif