AugmentedForm.h

00001 
00015 #ifndef _AugmentedForm_h
00016 #define _AugmentedForm_h
00017 
00018 // SYSTEM INCLUDES
00019 //
00020 //#include <iostream>
00021 
00022 // PROJECT INCLUDES
00023 //
00024 //#include <newmat/newmat.h>
00025 //#include <wx/txtstrm.h>
00026 
00027 
00028 // LOCAL INCLUDES
00029 //
00030 #include "LinearProblem.h"
00031 #include "util.h"
00032 
00033 // FORWARD REFERENCES
00034 //
00035 
00036 
00037 class AugmentedForm
00038 {
00039 public:
00040 // LIFECYCLE
00041 
00044     AugmentedForm(void);
00045 
00053     AugmentedForm(const Matrix&          A,
00054                   const ColumnVector&    b,
00055                   const ColumnVector&    c,
00056                   const int              actualVariables);
00057 
00058 
00063     AugmentedForm(const LinearProblem& problem);
00064 
00065 
00070     AugmentedForm(const AugmentedForm& from);
00071 
00072 
00075     ~AugmentedForm(void);
00076 
00077 
00078 // OPERATORS
00079 
00080 
00087     AugmentedForm&              operator=(const AugmentedForm& from);
00088 
00091     bool                        operator==(const AugmentedForm& right) const;
00092 
00095     friend wxTextOutputStream&  operator<<(wxTextOutputStream&      os,
00096                                            const AugmentedForm&  augmentedForm);
00097 
00098 
00099 // OPERATIONS
00100 // ACCESS
00103     const Matrix&           A() const;
00104 
00107     const ColumnVector&     b() const;
00108 
00111     const ColumnVector&     c() const;
00112 
00115     int                     ActualVariables() const;
00116 
00119     int                     m() const;
00120 
00123     int                     n() const;
00124 // INQUIRY
00125 
00126 protected:
00127 private:
00128     Matrix          mA; //< Wsp. funkcji ograniczeń [m x n].
00129     ColumnVector    mb; //< Ograniczenia [m].
00130     ColumnVector    mc; //< Koszty [n].
00131     int             mActualVariables; //< Liczba znaczących zmiennych.
00132 };
00133 
00134 // INLINE METHODS
00135 //
00136 
00137 // EXTERNAL REFERENCES
00138 //
00139 
00140 #endif  // _AugmentedForm_h

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