/home/coin/SVN-release/CoinAll-1.1.0/Ipopt/src/Algorithm/IpOptErrorConvCheck.hpp

Go to the documentation of this file.
00001 // Copyright (C) 2004, 2006 International Business Machines and others.
00002 // All Rights Reserved.
00003 // This code is published under the Common Public License.
00004 //
00005 // $Id: IpOptErrorConvCheck.hpp 1210 2008-04-05 03:01:56Z andreasw $
00006 //
00007 // Authors:  Carl Laird, Andreas Waechter     IBM    2004-08-13
00008 
00009 #ifndef __IPOPTERRORCONVCHECK_HPP__
00010 #define __IPOPTERRORCONVCHECK_HPP__
00011 
00012 #include "IpConvCheck.hpp"
00013 
00014 namespace Ipopt
00015 {
00016 
00020   class OptimalityErrorConvergenceCheck : public ConvergenceCheck
00021   {
00022   public:
00026     OptimalityErrorConvergenceCheck();
00027 
00029     virtual ~OptimalityErrorConvergenceCheck();
00031 
00033     virtual bool InitializeImpl(const OptionsList& options,
00034                                 const std::string& prefix);
00035 
00037     virtual ConvergenceStatus
00038     CheckConvergence(bool call_intermediate_callback = true);
00039 
00042     virtual bool CurrentIsAcceptable();
00043 
00046     static void RegisterOptions(SmartPtr<RegisteredOptions> roptions);
00048 
00049   protected:
00053     Index max_iterations_;
00055     Number dual_inf_tol_;
00057     Number constr_viol_tol_;
00059     Number compl_inf_tol_;
00063     Index acceptable_iter_;
00066     Number acceptable_tol_;
00068     Number acceptable_dual_inf_tol_;
00070     Number acceptable_constr_viol_tol_;
00072     Number acceptable_compl_inf_tol_;
00075     Number acceptable_obj_change_tol_;
00077     Number diverging_iterates_tol_;
00079 
00080   private:
00088     OptimalityErrorConvergenceCheck(const OptimalityErrorConvergenceCheck&);
00089 
00091     void operator=(const OptimalityErrorConvergenceCheck&);
00093 
00096     Index acceptable_counter_;
00097 
00100     Number last_obj_val_;
00101   };
00102 
00103 } // namespace Ipopt
00104 
00105 #endif

Generated on Sun Nov 14 14:06:34 2010 for Coin-All by  doxygen 1.4.7