c----------------------------------------------------------------- subroutine tnp_step2 c Step 2 of the velocity Verlet algorithm: update velocities implicit real*8 (a-h,o-z) include 'DIMENSIONS' include 'COMMON.CONTROL' include 'COMMON.VAR' include 'COMMON.MD' include 'COMMON.CHAIN' include 'COMMON.DERIV' include 'COMMON.GEO' include 'COMMON.LOCAL' include 'COMMON.INTERACT' include 'COMMON.IOUNITS' include 'COMMON.NAMES' double precision d_time_s EK=EK*(s_np/s12_np)**2 HNose1=Hnose(EK,s12_np,potE,pistar,Q_np,t_bath,dimen) pi_np=pistar+0.5*d_time*(2*EK-dimen*Rb*t_bath) & -0.5*d_time*(HNose1-H0) cd write(iout,'(a,4f)') 'mmm',EK,potE,HNose1,pi_np d_time_s=d_time*0.5*s12_np do j=1,3 d_t(j,0)=d_t_new(j,0)+d_a(j,0)*d_time_s enddo do i=nnt,nct-1 do j=1,3 d_t(j,i)=d_t_new(j,i)+d_a(j,i)*d_time_s enddo enddo do i=nnt,nct if (itype(i).ne.10) then inres=i+nres do j=1,3 d_t(j,inres)=d_t_new(j,inres)+d_a(j,inres)*d_time_s enddo endif enddo s_np=s12_np return end