--- trunk/OOPSE/libmdtools/SimInfo.hpp 2003/06/25 21:12:14 567 +++ trunk/OOPSE/libmdtools/SimInfo.hpp 2003/06/30 22:04:01 568 @@ -56,7 +56,27 @@ class SimInfo{ (public) double lrPot; // the potential energy from the long range calculations. - double box_x, box_y, box_z; // the periodic boundry conditions + double Hmat[9]; // the periodic boundry conditions. The Hmat is the + // column vectors of the x, y, and z box vectors. + // + // h1 h2 h3 + // [ Xx Yx Zx ] + // [ Xy Yy Zy ] + // [ Xz Yz Zz ] + // + // to preserve compatibility with Fortran the + // ordering in the array is as follows: + // + // [ 0 3 6 ] + // [ 1 4 7 ] + // [ 2 5 8 ] + + double HmatI[9]; // the inverted Hmat; + double boxLx, boxLy, boxLz; // the box Lengths + double boxVol; + + + double rList, rCut; // variables for the neighborlist int usePBC; // whether we use periodic boundry conditions. @@ -109,10 +129,16 @@ class SimInfo{ (public) int getNDFraw(); void setBox( double newBox[3] ); - void getBox( double theBox[3] ); + void setBoxM( double newBox[9] ); + void getBoxM( double theBox[9] ); + void wrapVector( double thePos[3] ); + private: + void calcHmatI( void ); + void calcBoxL(); + // private function to initialize the fortran side of the simulation void (*setFsimulation) setFortranSimList;