diff options
author | pants <jaron@kent-dobias.com> | 2016-12-07 13:29:51 -0500 |
---|---|---|
committer | pants <jaron@kent-dobias.com> | 2016-12-07 13:29:51 -0500 |
commit | 5ba4109f0021e7b2c9c66821461742a339e07355 (patch) | |
tree | 484ff12ba10a58a21bc3048c07757bb3f4fb6f3e /src/spheres_poly/event.h | |
parent | cdb18338d3ae54785f311608d303420d5b47d698 (diff) | |
download | fuse_networks-5ba4109f0021e7b2c9c66821461742a339e07355.tar.gz fuse_networks-5ba4109f0021e7b2c9c66821461742a339e07355.tar.bz2 fuse_networks-5ba4109f0021e7b2c9c66821461742a339e07355.zip |
added support for hyperuniform lattices using existing hard-sphere jamming routine
Diffstat (limited to 'src/spheres_poly/event.h')
-rw-r--r-- | src/spheres_poly/event.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/src/spheres_poly/event.h b/src/spheres_poly/event.h new file mode 100644 index 0000000..55dd1fc --- /dev/null +++ b/src/spheres_poly/event.h @@ -0,0 +1,58 @@ +#ifndef EVENT_H +#define EVENT_H + +#include "vector.h" +#define INF 100000000 +#define dblINF 100000000. + +class event { + + public: + + // constructor and destructor + event(double time_i, int i_i, int j_i, vector<DIM,int> v_i); + event(double time_i, int i_i, int j_i); + event(const event& e); + event(); + + ~event(); + + bool operator<(const event&) const; + bool operator>(const event&) const; + void erase(); + + //variables + + + double time; // time of next collision + int i; // collision partner with lower number + int j; // collision partner with higher number + vector<DIM,int> v; // virtual image + + /* 0<=j<=N binary collision between i and j + j=N+DIM+1+x transfer where x=-(k+1) for left wall + and x=k+1 for right wall + j=INF both check after event that did not altered motion of i and check after event that altered motion of i, i.e rescaling of velocities. I currently don't see need t o separate the two + + j=-1 check after collision + + Virtual identifiers as scalars...I think bad idea, but here's my work + there will be easily fixed problems if DIM>=10 + -x<=v<=x x=k+1, image in k direction + v=xy x,y + =-xy -x,y + =-yx x,-y + =yx -x,-y + v=xyz x,y,z + =-xyz -x,y,z + =-yxz x,-y,z + =-zxy x,y,-z + =zyx -x,-y,z + =xzy x,-y,-z + =yzx -x,y,-z + =-zyx -x,-y,-z + */ + +}; + +#endif |