switched executable flag in cluster_expansion.cpp
[cluster_expansion.git] / Lattice.h
blob2d3f0e32f49e93edffcd71a9bd43554f3d8208ad
1 #ifndef _LATTICE_H
2 #define _LATTICE_H
4 #include <blitz/array.h>
5 using namespace blitz;
7 #include "Interactions.h"
9 enum Occupation {
10 empty = 0,
11 CO,
15 typedef Array<Occupation, 2> LatticeType;
17 class Lattice {
18 public:
19 Lattice();
20 Lattice(int, int, int, int);
22 LatticeType adsorbates;
23 LatticeType surface;
24 int Latitude, Longitude;
25 int UnitCellSizeX, UnitCellSizeY;
27 void extendUnitCell(void);
28 Interactions checkInteractions(void);
29 double getEnergy(void);
31 private:
32 void extendUnitCell(LatticeType, int, int);
33 Interactions checkInteractions(LatticeType, Interactions, int, int);
34 Interactions checkInteractions(LatticeType, Interactions);
35 double getEnergy(LatticeType);
39 #endif