# | Line 30 | Line 30 | class SimInfo{ (public) | |
---|---|---|
30 | unsigned int n_bends; // number of bends | |
31 | unsigned int n_torsions; // number of torsions | |
32 | unsigned int n_oriented; // number of of atoms with orientation | |
33 | + | unsigned int ndf; // number of actual degrees of freedom |
34 | + | unsigned int ndfRaw; // number of settable degrees of freedom |
35 | ||
36 | unsigned int setTemp; // boolean to set the temperature at each sampleTime | |
37 | ||
38 | unsigned int n_dipoles; // number of dipoles | |
39 | < | double rRF; // the reaction field cut off radius |
39 | > | double ecr; // the electrostatic cutoff radius |
40 | > | double est; // the electrostatic skin thickness |
41 | double dielectric; // the dielectric of the medium for reaction field | |
42 | ||
43 | int n_exclude; // the # of pairs excluded from long range forces | |
44 | < | int *excludes; // the pairs themselves |
44 | > | Exclude** excludes; // the pairs themselves |
45 | ||
46 | int nGlobalExcludes; | |
47 | int* globalExcludes; // same as above, but these guys participate in | |
48 | // no long range forces. | |
49 | ||
50 | int* identArray; // array of unique identifiers for the atoms | |
51 | + | int* molMembershipArray; // map of atom numbers onto molecule numbers |
52 | ||
53 | int n_constraints; // the number of constraints on the system | |
54 | ||
55 | unsigned int n_SRI; // the number of short range interactions | |
52 | – | SRI **sr_interactions;// the array of short range force objects |
56 | ||
57 | double lrPot; // the potential energy from the long range calculations. | |
58 | ||
59 | < | double box_x, box_y, box_z; // the periodic boundry conditions |
59 | > | double Hmat[9]; // the periodic boundry conditions. The Hmat is the |
60 | > | // column vectors of the x, y, and z box vectors. |
61 | > | // |
62 | > | // h1 h2 h3 |
63 | > | // [ Xx Yx Zx ] |
64 | > | // [ Xy Yy Zy ] |
65 | > | // [ Xz Yz Zz ] |
66 | > | // |
67 | > | // to preserve compatibility with Fortran the |
68 | > | // ordering in the array is as follows: |
69 | > | // |
70 | > | // [ 0 3 6 ] |
71 | > | // [ 1 4 7 ] |
72 | > | // [ 2 5 8 ] |
73 | > | |
74 | > | double HmatI[9]; // the inverted Hmat; |
75 | > | double boxLx, boxLy, boxLz; // the box Lengths |
76 | > | double boxVol; |
77 | > | int orthoRhombic; |
78 | > | |
79 | > | |
80 | > | |
81 | double rList, rCut; // variables for the neighborlist | |
82 | ||
83 | int usePBC; // whether we use periodic boundry conditions. | |
# | Line 81 | Line 105 | class SimInfo{ (public) | |
105 | ||
106 | char ensemble[100]; // the enesemble of the simulation (NVT, NVE, etc. ) | |
107 | char mixingRule[100]; // the mixing rules for Lennard jones/van der walls | |
108 | < | Integrator *the_integrator; // the integrator of the simulation |
108 | > | BaseIntegrator *the_integrator; // the integrator of the simulation |
109 | ||
110 | char finalName[300]; // the name of the eor file to be written | |
111 | char sampleName[300]; // the name of the dump file to be written | |
# | Line 102 | Line 126 | class SimInfo{ (public) | |
126 | setFortranBoxSize = fBox; | |
127 | } | |
128 | ||
129 | + | int getNDF(); |
130 | + | int getNDFraw(); |
131 | + | |
132 | + | void setBox( double newBox[3] ); |
133 | + | void setBoxM( double newBox[9] ); |
134 | + | void getBoxM( double theBox[9] ); |
135 | + | void scaleBox( double scale ); |
136 | + | |
137 | + | void wrapVector( double thePos[3] ); |
138 | + | |
139 | private: | |
140 | ||
141 | + | void calcHmatI( void ); |
142 | + | void calcBoxL(); |
143 | + | |
144 | // private function to initialize the fortran side of the simulation | |
145 | void (*setFsimulation) setFortranSimList; | |
146 |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |