/home/coin/SVN-release/Ipopt-3.3.2/Ipopt/src/contrib/CGPenalty/IpCGPenaltyCq.hpp

Go to the documentation of this file.
00001 // Copyright (C) 2007 International Business Machines and others.
00002 // All Rights Reserved.
00003 // This code is published under the Common Public License.
00004 //
00005 // $Id: IpIpoptCalculatedQuantities.hpp 988 2007-06-01 21:57:27Z andreasw $
00006 //
00007 // Authors:  Andreas Waechter           IBM    2007-06-04
00008 //               derived from IpIpoptCalculatedQuantities.hpp
00009 
00010 #ifndef __IPCGPENALTYCQ_HPP__
00011 #define __IPCGPENALTYCQ_HPP__
00012 
00013 #include "IpIpoptCalculatedQuantities.hpp"
00014 
00015 namespace Ipopt
00016 {
00017 
00021   class CGPenaltyCq : public ReferencedObject
00022   {
00023   public:
00024 
00028     CGPenaltyCq(IpoptNLP* ip_nlp,
00029                 IpoptData* ip_data,
00030                 IpoptCalculatedQuantities* ip_cg);
00031 
00033     virtual ~CGPenaltyCq();
00035 
00039     bool Initialize(const Journalist& jnlst,
00040                     const OptionsList& options,
00041                     const std::string& prefix);
00042 
00046     Number curr_penalty_function();
00048     Number trial_penalty_function();
00051     Number curr_direct_deriv_penalty_function();
00054     Number curr_fast_direct_deriv_penalty_function();
00058     Number curr_cg_pert_fact();
00060 
00063     static void RegisterOptions(const SmartPtr<RegisteredOptions>& roptions);
00065 
00066   private:
00076     CGPenaltyCq();
00077 
00079     CGPenaltyCq(const CGPenaltyCq&);
00080 
00082     void operator=(const CGPenaltyCq&);
00084 
00089     IpoptNLP* ip_nlp_;
00090     IpoptData* ip_data_;
00091     IpoptCalculatedQuantities* ip_cq_;
00093 
00097     CachedResults<Number> curr_penalty_function_cache_;
00099     CachedResults<Number> trial_penalty_function_cache_;
00102     CachedResults<Number> curr_direct_deriv_penalty_function_cache_;
00105     CachedResults<Number> curr_fast_direct_deriv_penalty_function_cache_;
00107     CachedResults<Number> curr_cg_pert_fact_cache_;
00109 
00112     bool initialize_called_;
00113   };
00114 
00115 } // namespace Ipopt
00116 
00117 #endif

Generated on Thu May 15 22:27:52 2008 by  doxygen 1.4.7