source: molecuilder/src/linkedcell.hpp@ 0e2190

Last change on this file since 0e2190 was 0e2190, checked in by Frederik Heber <heber@…>, 16 years ago

Merge branch 'ConcaveHull' of ssh://heber@192.168.194.2/home/metzler/workspace/espack into ConcaveHull

Conflicts:

molecuilder/src/atom.cpp
molecuilder/src/boundary.cpp
molecuilder/src/boundary.hpp
molecuilder/src/linkedcell.cpp
molecuilder/src/linkedcell.hpp
molecuilder/src/molecules.hpp
molecuilder/src/vector.hpp

  • added Saskia Metzler's code that finds whether a point is in- or outside.
  • The code is not yet incorporated, but I rather want to continue with merging TesselationRefactoring first.
  • Property mode set to 100644
File size: 1.0 KB
Line 
1#ifndef LINKEDCELL_HPP_
2#define LINKEDCELL_HPP_
3
4// include config.h
5#ifdef HAVE_CONFIG_H
6#include <config.h>
7#endif
8
9#include "molecules.hpp"
10
11#define LinkedAtoms list <atom *>
12
13class LinkedCell{
14 public:
15 Vector max; // upper boundary
16 Vector min; // lower boundary
17 LinkedAtoms *LC; // linked cell list
18 double RADIUS; // cell edge length
19 int N[NDIM]; // number of cells per axis
20 int n[NDIM]; // temporary variable for current cell per axis
21 int index; // temporary index variable , access by index = n[0] * N[1] * N[2] + n[1] * N[2] + n[2];
22
23 LinkedCell();
24 LinkedCell(molecule *mol, double RADIUS);
25 ~LinkedCell();
26 LinkedAtoms* GetCurrentCell();
27 bool SetIndexToAtom(const atom &Walker);
28 bool SetIndexToVector(const Vector *x);
29 bool CheckBounds();
30 void GetNeighbourBounds(int lower[NDIM], int upper[NDIM]);
31
32 // not implemented yet
33 bool AddAtom(atom *Walker);
34 bool DeleteAtom(atom *Walker);
35 bool MoveAtom(atom *Walker);
36};
37
38#endif /*LINKEDCELL_HPP_*/
Note: See TracBrowser for help on using the repository browser.