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: IpLoqoMuOracle.hpp 735 2006-06-04 06:10:05Z andreasw $ 00006 // 00007 // Authors: Carl Laird, Andreas Waechter IBM 2004-08-13 00008 00009 #ifndef __IPLOQOMUORACLE_HPP__ 00010 #define __IPLOQOMUORACLE_HPP__ 00011 00012 #include "IpMuOracle.hpp" 00013 00014 namespace Ipopt 00015 { 00016 00020 class LoqoMuOracle : public MuOracle 00021 { 00022 public: 00026 LoqoMuOracle(); 00028 virtual ~LoqoMuOracle(); 00030 00032 virtual bool InitializeImpl(const OptionsList& options, 00033 const std::string& prefix); 00034 00038 virtual bool CalculateMu(Number mu_min, Number mu_max, Number& new_mu); 00039 00040 private: 00049 00051 LoqoMuOracle(const LoqoMuOracle&); 00052 00054 void operator=(const LoqoMuOracle&); 00056 00057 }; 00058 00059 } // namespace Ipopt 00060 00061 #endif