ls1-MarDyn
ls1-MarDyn molecular dynamics code
Cell.h
1#ifndef CELL_H_
2#define CELL_H_
3
4class Cell {
5public:
6 Cell() : _cellIndex(0) {}
7
8 virtual ~~Cell() {}
9
10 virtual void assignCellToHaloRegion() = 0;
11 virtual void assignCellToBoundaryRegion() = 0;
12 virtual void assignCellToInnerRegion() = 0;
13 virtual void assignCellToInnerMostAndInnerRegion() = 0;
14
15 virtual void skipCellFromHaloRegion() = 0;
16 virtual void skipCellFromBoundaryRegion() = 0;
17 virtual void skipCellFromInnerRegion() = 0;
18 virtual void skipCellFromInnerMostRegion() = 0;
19
20 virtual bool isHaloCell() const = 0;
21 virtual bool isBoundaryCell() const = 0;
22 virtual bool isInnerCell() const = 0;
23 virtual bool isInnerMostCell() const = 0;
24
25 virtual double getBoxMin(int d) const = 0;
26 virtual double getBoxMax(int d) const = 0;
27 virtual void setBoxMin(const double b[3]) = 0;
28 virtual void setBoxMax(const double b[3]) = 0;
29
30 unsigned long getCellIndex() const { return _cellIndex; }
31 void setCellIndex(unsigned long cellIndex) { _cellIndex = cellIndex; }
32
33protected:
35 unsigned long _cellIndex;
36};
37
38#endif /* CELL_H_ */
Definition: Cell.h:4
unsigned long _cellIndex
the index of a cell. On one process every index must be unique.
Definition: Cell.h:35