167 |
|
void Verlet::integrate( void ){ |
168 |
|
|
169 |
|
int i, j; /* loop counters */ |
170 |
< |
int calcPot; |
170 |
> |
int calcPot, calcStress; |
171 |
|
|
172 |
|
double kE; |
173 |
|
|
204 |
|
// the first time integrate is called, the forces need to be initialized |
205 |
|
|
206 |
|
|
207 |
< |
myFF->doForces(1,0); |
207 |
> |
myFF->doForces(1,1); |
208 |
|
|
209 |
|
if( entry_plug->setTemp ){ |
210 |
|
tStats->velocitize(); |
215 |
|
e_out->writeStat( 0.0 ); |
216 |
|
|
217 |
|
calcPot = 0; |
218 |
+ |
calcStress = 0; |
219 |
|
|
220 |
|
if( c_is_constrained ){ |
221 |
|
for(i = 0; i < n_loops; i++){ |
257 |
|
|
258 |
|
// calculate the forces |
259 |
|
|
260 |
< |
myFF->doForces(calcPot,0); |
260 |
> |
myFF->doForces(calcPot,calcStress); |
261 |
|
|
262 |
|
// finish the constrain move ( same as above. ) |
263 |
|
|
299 |
|
if( !(time % vel_n) ) tStats->velocitize(); |
300 |
|
} |
301 |
|
if( !(time % sample_n) ) dump_out->writeDump( time * dt ); |
302 |
< |
if( !((time+1) % status_n) ) calcPot = 1; |
303 |
< |
if( !(time % status_n) ){ e_out->writeStat( time * dt ); calcPot = 0; } |
302 |
> |
if( !((time+1) % status_n) ) { |
303 |
> |
calcPot = 1; |
304 |
> |
calcStress = 1; |
305 |
> |
} |
306 |
> |
if( !(time % status_n) ){ |
307 |
> |
e_out->writeStat( time * dt ); |
308 |
> |
calcPot = 0; |
309 |
> |
calcStress = 0; |
310 |
> |
} |
311 |
|
} |
312 |
|
} |
313 |
|
else{ |
317 |
|
|
318 |
|
// calculate the forces |
319 |
|
|
320 |
< |
myFF->doForces(calcPot,0); |
320 |
> |
myFF->doForces(calcPot,calcStress); |
321 |
|
|
322 |
|
// complete the verlet move |
323 |
|
|
329 |
|
if( !(time % vel_n) ) tStats->velocitize(); |
330 |
|
} |
331 |
|
if( !(time % sample_n) ) dump_out->writeDump( time * dt ); |
332 |
< |
if( !((time+1) % status_n) ) calcPot = 1; |
333 |
< |
if( !(time % status_n) ){ e_out->writeStat( time * dt ); calcPot = 0; } |
332 |
> |
if( !((time+1) % status_n) ) { |
333 |
> |
calcPot = 1; |
334 |
> |
calcStress = 1; |
335 |
> |
} |
336 |
> |
if( !(time % status_n) ){ |
337 |
> |
e_out->writeStat( time * dt ); |
338 |
> |
calcPot = 0; |
339 |
> |
calcStress = 0; |
340 |
> |
} |
341 |
|
} |
342 |
|
} |
343 |
|
|