CellStepper.h 715 Bytes
Newer Older
1
2
3
4
5
////////////////////////////////////////////////////////////////////////////////
//
// CellStepper.h:
//
////////////////////////////////////////////////////////////////////////////////
6
// $Id: CellStepper.h,v 1.2 2007-03-17 01:14:00 fgygi Exp $
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

#ifndef CELLSTEPPER_H
#define CELLSTEPPER_H

#include "Sample.h"
#include <valarray>

class CellStepper
{
  protected:
  
  Sample& s_;
  AtomSet& atoms_;
  double ekin_;
  UnitCell cellp;

  public:
  
  CellStepper (Sample& s) : s_(s), atoms_(s.atoms), ekin_(0.0) {}
  
27
  virtual void compute_new_cell(const std::valarray<double>& sigma) = 0;
28
29
30
31
32
33
  virtual void update_cell(void) = 0;
  
  double ekin(void) const { return ekin_; }
  virtual ~CellStepper() {}
};
#endif