Generated on Mon Jun 23 17:17:53 2008 for ell-2.3.0 by doxygen 1.5.1

src/ell/LT_MinimaSet.hh

Go to the documentation of this file.
00001 #ifndef MINIMANET_
00002 #define MINIMANET_
00003 
00004 #include "ell/LandscapeTopology.hh"
00005 #include "ell/State.hh"
00006 
00007 #include <vector>
00008 #include <fstream>
00009 #include <iostream>
00010 #include <string>
00011 
00012 namespace ell {
00013          
00014     class LT_MinimaSet: public LandscapeTopology {
00015         
00016     protected:
00018         std::vector<const State*>   vMinima;
00020         size_t mfeIndex;
00022         bool sorted;
00023     
00024     public:
00025         
00028         static const std::string LT_ID;
00029         
00031         LT_MinimaSet();
00033         virtual 
00034         ~LT_MinimaSet();
00035         
00037         
00043         virtual 
00044         bool 
00045         addSaddle(const size_t i, const size_t j, const State* const s);
00046         
00052         virtual 
00053         bool 
00054         addSaddle(const State* const m_i, const State* const m_j, const State* const s);
00055         
00062         virtual 
00063         const size_t 
00064         addMin(const State* const m);
00065         
00070         virtual 
00071         const size_t 
00072         getMinIndex(const State* const m) const;
00073         
00076         virtual 
00077         const size_t 
00078         getMinCount() const;
00079         
00083         virtual 
00084         const State* const 
00085         getMin(size_t i) const;
00086         
00089         virtual 
00090         const std::vector<const State*> & 
00091         getAllMin() const;
00092         
00097         virtual 
00098         const State* const 
00099         getMFEState() const;
00100     
00104         virtual 
00105         double 
00106         getRMSD(const LandscapeTopology* const lt) const;
00107         
00110         virtual 
00111         void 
00112         sort();
00113 
00117         virtual 
00118         bool 
00119         isSorted() const;
00120 
00123         virtual 
00124         void 
00125         clear();
00126 
00131         virtual 
00132         void
00133         write( std::ostream & out, const std::string & StateDescription ) const;
00134 
00147         virtual 
00148         std::pair<int,std::string>
00149         read(   std::istream & in, 
00150                 const State * const templateState, 
00151                 const std::string & StateDescription );
00152         
00153         
00154     };
00155 
00156 }//ell
00157 
00158 
00159 
00160 #endif /*MINIMANET_*/