NewtonModified.h

00001 
00078 #ifndef _NewtonModified_h
00079 #define _NewtonModified_h
00080 
00081 // SYSTEM INCLUDES
00082 //
00083 
00084 // PROJECT INCLUDES
00085 //
00086 
00087 // LOCAL INCLUDES
00088 //
00089 #include "../DoubleParameter.h"
00090 #include "../FunctionBase.h"
00091 #include "../MethodWithLineSearch.h"
00092 #include "../ui/MethodWithLineSearchPanel.h"
00093 
00094 // FORWARD REFERENCES
00095 //
00096 
00097 class NewtonModified
00098     : public MethodWithLineSearch
00099 {
00100 public:
00101 
00102     friend class MethodWithLineSearchPanel<NewtonModified>;
00103 
00104 // LIFECYCLE
00105 
00108     ~NewtonModified(void);
00109 
00110 // OPERATORS
00111 
00112 // OPERATIONS
00113 
00116     virtual std::auto_ptr<Method>   Clone() const;
00117 
00118 // ACCESS
00119 
00122     virtual const wxString&         Name() const;
00123 
00126     virtual MethodIdType            Id() const;
00127 
00130     static MethodIdType             ClassId();
00131 
00132 // INQUIRY
00133 
00136     virtual bool                    CanHandle(const ProblemBase* pProblem)
00137                                                                         const;
00138     virtual StopConditions          AllowedStopConditions() const;
00139 
00140 protected:
00141 
00144     NewtonModified(void);
00145 
00150     NewtonModified(const NewtonModified& from);
00151 
00152     virtual wxString&               rName();
00153 private:
00154 
00155     virtual std::auto_ptr<Result> Optimize(const ProblemBase& problem) const
00156         throw(OptimizationError);
00157 
00158     static wxString  mName;   
00159     static NewtonModified          mNewtonModified; 
00160 
00161 };
00162 
00163 // INLINE METHODS
00164 //
00165 
00166 // EXTERNAL REFERENCES
00167 //
00168 
00169 #endif  // _NewtonModified_h

Wygenerowano Fri Sep 29 21:04:47 2006 dla EduOptim2 programem  doxygen 1.4.6