DFPIteration.h

00001 
00006 #ifndef _DFPIteration_h
00007 #define _DFPIteration_h
00008 
00009 // SYSTEM INCLUDES
00010 //
00011 
00012 // PROJECT INCLUDES
00013 //
00014 
00015 // LOCAL INCLUDES
00016 //
00017 #include "../GradientMethodIteration.h"
00018 
00019 // FORWARD REFERENCES
00020 //
00021 
00022 
00023 class DFPIteration
00024     : public GradientMethodIteration
00025 {
00026 public:
00027 // LIFECYCLE
00028 
00031     DFPIteration(void);
00032 
00042     DFPIteration(const ColumnVector&    staringPoint,
00043                  const ColumnVector&    gradient,
00044                  const ColumnVector&    direction,
00045                  const SquareMatrix&    D);
00046 
00049     ~DFPIteration(void);
00050 
00051 // OPERATORS
00052 
00053 // OPERATIONS
00054 
00055 // ACCESS
00056 
00057     virtual vector<IterationDataIdType> ClassIds() const;
00058 
00059     static IterationDataIdType          ClassId();
00060 
00061     const SquareMatrix&         D() const;
00062     SquareMatrix&               rD();
00063 
00064     const ColumnVector&         GradientInEndPoint() const;
00065     ColumnVector&               rGradientInEndPoint();
00066 
00067     const ColumnVector&         PointDifference() const;
00068     ColumnVector&               rPointDifference();
00069 
00070     const ColumnVector&         GradientDifference() const;
00071     ColumnVector&               rGradientDifference();
00072 
00073     const SquareMatrix&         NewD() const;
00074     SquareMatrix&               rNewD();
00075 
00076     const ColumnVector&         NewDirection() const;
00077     ColumnVector&               rNewDirection();
00078 
00079 // INQUIRY
00080     bool                BackToIdentityMatrix() const;
00081 
00082 protected:
00083 private:
00084     SquareMatrix    mD;                     
00085 
00086 
00087     ColumnVector    mGradientInEndPoint;    
00088 
00089 
00090     ColumnVector    mPointDifference;       
00091 
00092 
00093 
00094     ColumnVector    mGradientDifference;    
00095 
00096 
00097 
00098 
00099     SquareMatrix    mNewD;                  
00100 
00101     ColumnVector    mNewDirection;          
00102 
00103 };
00104 
00105 // INLINE METHODS
00106 //
00107 
00108 // EXTERNAL REFERENCES
00109 //
00110 
00111 #endif  // _DFPIteration_h

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