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

src/ell/Basin.hh

Go to the documentation of this file.
00001 #ifndef BASIN_HH_
00002 #define BASIN_HH_
00003 
00004 #include "ell/State.hh"
00005 #include "ell/StateCollector.hh" 
00006 
00007 namespace ell
00008 {
00009 
00010 
00016     class Basin {
00017     protected:
00019         const double maxE;
00021         const double deltaE;
00024         const size_t maxToStore;
00025         
00026     public:
00027         
00029         class QueueVal {
00030         public:
00031         
00033             CSequence minNeigh;
00035             double minNeighE;
00038             size_t minNeighGWE;
00039             
00040             QueueVal();
00041             ~QueueVal();
00042         };
00043 
00044         
00045     public:
00046         
00054         Basin(  const double maxE, 
00055                 const double deltaE, 
00056                 const size_t maxToStore 
00057                 );
00058         
00070         double flood(   const State* const localMin,
00071                         StateCollector* scBasin,
00072                         StateCollector* scSurface = NULL);
00073         
00074         
00098         static double basin(    const State* const localMin, 
00099                                 StateCollector* scBasin,
00100                                 const double maxE, 
00101                                 const double deltaE, 
00102                                 const size_t maxToStore, 
00103                                 StateCollector* scSurface = NULL
00104                             );
00105     };
00106     
00107 
00108 }
00109 
00110 #endif /*BASIN_HH_*/