mcpele  1.0.0
The Monte Carlo Python Energy Landscape Explorer
mcpele/record_displacement_per_particle_timeseries.h
00001 #ifndef _MCPELE_RECORD_DISPLACEMENT_PER_PARTICLE_TIMESERIES_H__
00002 #define _MCPELE_RECORD_DISPLACEMENT_PER_PARTICLE_TIMESERIES_H__
00003 
00004 #include "record_scalar_timeseries.h"
00005 #include "rsm_displacement.h"
00006 
00007 namespace mcpele {
00008 
00014 class RecordDisplacementPerParticleTimeseries : public RecordScalarTimeseries{
00015 private:
00016     GetDisplacementPerParticle m_rsm_displacement;
00017 public:
00018     RecordDisplacementPerParticleTimeseries(const size_t niter,
00019             const size_t record_every, pele::Array<double> initial_coords,
00020             const size_t boxdimension)
00021         : RecordScalarTimeseries(niter, record_every),
00022           m_rsm_displacement(initial_coords, boxdimension)
00023     {}
00024     virtual ~RecordDisplacementPerParticleTimeseries(){}
00025     virtual double get_recorded_scalar(pele::Array<double> &coords,
00026             const double energy, const bool accepted, MC* mc)
00027             { return m_rsm_displacement.compute_mean_particle_displacement(coords); }
00028 };
00029 
00030 } // namespace mcpele
00031 
00032 #endif // #ifndef _MCPELE_RECORD_DISPLACEMENT_PER_PARTICLE_TIMESERIES_H__
 All Classes Namespaces Functions Variables Typedefs