real coord(3,2000) real prec,time,potE,uconst,t_bath,qfrag(100) integer ihpb(100),jhpb(100) character*80 arg,ctime_start /"0"/,ctime_end /"1000000000"/, & cfreq /"1"/ integer time_start,time_end,freq call getarg(1,arg) if (iargc().eq.0) stop if (iargc().gt.1) then call getarg(2,ctime_start) read (ctime_start,*) time_start else time_start=0.0d0 endif if (iargc().gt.2) then call getarg(3,ctime_end) read (ctime_end,*) time_end else time_end=1.0d10 endif if (iargc().gt.3) then call getarg(4,cfreq) read (cfreq,*) freq else freq=1 endif call xdrfopen(ixdrf,arg, "r", iret) licz=0 do while(.true.) call xdrffloat(ixdrf, time, iret) c print *,"time",time," iret",iret if(iret.eq.0) exit kk = kk + 1 call xdrffloat(ixdrf, potE, iret) call xdrffloat(ixdrf, uconst, iret) c print *,"potE",potE," uconst",uconst #ifdef NEWUNRES call xdrffloat(ixdrf, uconst_back, iret) #endif c print *,"uconst_back",uconst_back call xdrffloat(ixdrf, t_bath, iret) c print *,"t_bath",t_bath call xdrfint(ixdrf, nss, iret) do j=1,nss call xdrfint(ixdrf, ihpb(j), iret) call xdrfint(ixdrf, jhpb(j), iret) enddo c print *,"nss",nss call xdrfint(ixdrf, nfrag, iret) do i=1,nfrag call xdrffloat(ixdrf, qfrag(i), iret) enddo prec=10000.0 isize=0 call xdrf3dfcoord(ixdrf, coord, isize, prec, iret) licz=licz+1 c print *,licz,time_start,time_end,freq,mod(licz,freq) if (licz.gt.time_end) exit if (licz.ge.time_start .and. mod(licz,freq).eq.0) then write (*,'(e15.8,2e15.5,f12.5,$)') time,potE,uconst,t_bath write (*,'(i4,$)') nss,(ihpb(j),jhpb(j),j=1,nss) write (*,'(i4,20f7.4)') nfrag,(qfrag(i),i=1,nfrag) write (*,'(8f10.5)') ((coord(k,j),k=1,3),j=1,isize) endif enddo end