• Main Page
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

/build/buildd/coinor-ipopt-3.8.3/Ipopt/src/Algorithm/IpConvCheck.hpp

Go to the documentation of this file.
00001 // Copyright (C) 2004, 2009 International Business Machines and others.
00002 // All Rights Reserved.
00003 // This code is published under the Common Public License.
00004 //
00005 // $Id: IpConvCheck.hpp 1430 2009-04-20 20:58:25Z andreasw $
00006 //
00007 // Authors:  Carl Laird, Andreas Waechter     IBM    2004-08-13
00008 
00009 #ifndef __IPCONVCHECK_HPP__
00010 #define __IPCONVCHECK_HPP__
00011 
00012 #include "IpAlgStrategy.hpp"
00013 
00014 namespace Ipopt
00015 {
00016 
00020   class ConvergenceCheck : public AlgorithmStrategyObject
00021   {
00022   public:
00026     ConvergenceCheck()
00027     {}
00028 
00030     virtual ~ConvergenceCheck()
00031     {}
00033 
00035     enum ConvergenceStatus {
00036       CONTINUE,
00037       CONVERGED,
00038       CONVERGED_TO_ACCEPTABLE_POINT,
00039       MAXITER_EXCEEDED,
00040       CPUTIME_EXCEEDED,
00041       DIVERGING,
00042       USER_STOP,
00043       FAILED
00044     };
00045 
00047     virtual bool InitializeImpl(const OptionsList& options,
00048                                 const std::string& prefix) = 0;
00049 
00054     virtual ConvergenceStatus
00055     CheckConvergence(bool call_intermediate_callback = true) = 0;
00056 
00062     virtual bool CurrentIsAcceptable()=0;
00063 
00064   private:
00074     //    ConvergenceCheck();
00075 
00077     ConvergenceCheck(const ConvergenceCheck&);
00078 
00080     void operator=(const ConvergenceCheck&);
00082 
00083   };
00084 
00085 } // namespace Ipopt
00086 
00087 #endif

Generated on Sat Oct 16 2010 02:54:50 by  doxygen 1.7.1