ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/NPTf.cpp
(Generate patch)

Comparing trunk/OOPSE/libmdtools/NPTf.cpp (file contents):
Revision 580 by gezelter, Wed Jul 9 13:56:36 2003 UTC vs.
Revision 586 by mmeineke, Wed Jul 9 22:14:06 2003 UTC

# Line 47 | Line 47 | void NPTf::moveA() {
47    double tt2, tb2;
48    double angle;
49    double press[9];
50  const double p_convert = 1.63882576e8;
50  
51    tt2 = tauThermostat * tauThermostat;
52    tb2 = tauBarostat * tauBarostat;
53  
54    instaTemp = tStats->getTemperature();
55    tStats->getPressureTensor(press);
57
58  for (i=0; i < 9; i++) press[i] *= p_convert;
59
56    instaVol = tStats->getVolume();
57    
58    // first evolve chi a half step
59    
60    chi += dt2 * ( instaTemp / targetTemp - 1.0) / tt2;
61    
62 <  eta[0] += dt2 * instaVol * (press[0] - targetPressure) / (NkBT*tb2);
62 >  eta[0] += dt2 * instaVol * (press[0] - targetPressure/p_convert) /
63 >    (NkBT*tb2);
64    eta[1] += dt2 * instaVol * press[1] / (NkBT*tb2);
65    eta[2] += dt2 * instaVol * press[2] / (NkBT*tb2);
66    eta[3] += dt2 * instaVol * press[3] / (NkBT*tb2);
67 <  eta[4] += dt2 * instaVol * (press[4] - targetPressure) / (NkBT*tb2);
67 >  eta[4] += dt2 * instaVol * (press[4] - targetPressure/p_convert) /
68 >    (NkBT*tb2);
69    eta[5] += dt2 * instaVol * press[5] / (NkBT*tb2);
70    eta[6] += dt2 * instaVol * press[6] / (NkBT*tb2);
71    eta[7] += dt2 * instaVol * press[7] / (NkBT*tb2);
72 <  eta[8] += dt2 * instaVol * (press[8] - targetPressure) / (NkBT*tb2);
72 >  eta[8] += dt2 * instaVol * (press[8] - targetPressure/p_convert) /
73 >    (NkBT*tb2);
74    
75    for( i=0; i<nAtoms; i++ ){
76      atomIndex = i * 3;
# Line 199 | Line 198 | void NPTf::moveA() {
198    for (i = 0; i < 3; i++) {
199      for (j = 0; j < 3; j++) {
200        // remember that hmat has transpose ordering for Fortran compat:
201 <      hm[3*j + 1] = hmnew[i][j];
201 >      hm[3*j + i] = hmnew[i][j];
202      }
203    }
204  
# Line 225 | Line 224 | void NPTf::moveB( void ){
224  
225    instaTemp = tStats->getTemperature();
226    tStats->getPressureTensor(press);
228
229  for (i=0; i < 9; i++) press[i] *= p_convert;
230
227    instaVol = tStats->getVolume();
228    
229    // first evolve chi a half step
230    
231    chi += dt2 * ( instaTemp / targetTemp - 1.0) / tt2;
232    
233 <  eta[0] += dt2 * instaVol * (press[0] - targetPressure) / (NkBT*tb2);
233 >  eta[0] += dt2 * instaVol * (press[0] - targetPressure/p_convert) /
234 >    (NkBT*tb2);
235    eta[1] += dt2 * instaVol * press[1] / (NkBT*tb2);
236    eta[2] += dt2 * instaVol * press[2] / (NkBT*tb2);
237    eta[3] += dt2 * instaVol * press[3] / (NkBT*tb2);
238 <  eta[4] += dt2 * instaVol * (press[4] - targetPressure) / (NkBT*tb2);
238 >  eta[4] += dt2 * instaVol * (press[4] - targetPressure/p_convert) /
239 >    (NkBT*tb2);
240    eta[5] += dt2 * instaVol * press[5] / (NkBT*tb2);
241    eta[6] += dt2 * instaVol * press[6] / (NkBT*tb2);
242    eta[7] += dt2 * instaVol * press[7] / (NkBT*tb2);
243 <  eta[8] += dt2 * instaVol * (press[8] - targetPressure) / (NkBT*tb2);
243 >  eta[8] += dt2 * instaVol * (press[8] - targetPressure/p_convert) /
244 >    (NkBT*tb2);
245  
246    for( i=0; i<nAtoms; i++ ){
247      atomIndex = i * 3;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines