1 implicit real*8 (a-h,o-z)
4 include 'COMMON.INTERACT'
5 include 'COMMON.SBRIDGE'
7 real*4 prec,time,potE,uconst,t_bath,qfrag(100)
9 character*80 arg,seqfile,pdbfile
10 character*3 sequenc(maxres)
12 character*8 onethree,cfreq,cntraj,citraj
17 logical oneletter,iblnk
19 logical oneletter, iblnk
20 >>>>>>> aebadf9023e437f497f92dfcf2303c16f60917c1
25 if (iargc().lt.5) then
27 & "Usage: xdrf2pdb-m one/three seqfile cxfile ntraj itraj",
31 call getarg(1,onethree)
32 onethree = ucase(onethree)
33 if (onethree.eq.'ONE') then
35 else if (onethree.eq.'THREE') then
38 print *,"ONE or THREE must be specified"
40 call getarg(2,seqfile)
41 open (1,file=seqfile,status='old')
43 read(1,'(80a1)',end=10,err=10) (sequenc(i)(1:1),i=1,maxres)
47 do while (.not.iblnk(sequenc(i+1)(1:1)))
48 c do while (.not.(iblnk(sequenc(i+1)(1:1)) == 0))
53 itype(i)=rescode(i,sequenc(i),1)
56 read(1,'(20(a3,1x))',end=11,err=11) (sequenc(i),i=1,maxres)
60 do while (.not.iblnk(sequenc(i+1)(1:1)))
61 c do while (.not.(iblnk(sequenc(i+1)(1:1)) == 0))
66 itype(i)=rescode(i,sequenc(i),0)
69 print '(20(a3,1x))',(sequenc(i),i=1,nres)
72 iext = index(arg,'.cx') - 1
74 print *,"Error - not a cx file"
81 if (iargc().gt.5) then
82 call getarg(6,pdbfile)
84 write(licz,'(bz,i3.3)') itraj
85 pdbfile=arg(:iext)//'_'//licz//'.pdb'
87 if (iargc().gt.6) then
91 c print *,"ifreq",ifreq," ntraj",ntraj," itraj",itraj
94 if (itype(1).eq.21) nnt = 2
96 if (itype(nres).eq.21) nct = nres-1
97 print *,"nnt",nnt," nct",nct
98 call xdrfopen(ixdrf,arg, "r", iret)
101 call xdrffloat(ixdrf, time, iret)
104 call xdrffloat(ixdrf, potE, iret)
105 call xdrffloat(ixdrf, uconst, iret)
106 call xdrffloat(ixdrf, t_bath, iret)
107 print *,"potE",potE," uconst",uconst," t_bath",t_bath
109 call xdrffloat(ixdrf, uconst_back, iret)
111 print *,"uconst_back",uconst_back
112 call xdrfint(ixdrf, nss, iret)
114 call xdrfint(ixdrf, ihpb(j), iret)
115 call xdrfint(ixdrf, jhpb(j), iret)
117 call xdrfint(ixdrf, nfrag, iret)
119 call xdrffloat(ixdrf, qfrag(i), iret)
124 print *," call xdrf3coord"
125 call xdrf3dfcoord(ixdrf, coord, isize, prec, iret)
128 c write (*,'(e15.8,2e15.5,f12.5,$)') time,potE,uconst,t_bath
129 c write (*,'(i4,$)') nss,(ihpb(j),jhpb(j),j=1,nss)
130 c write (*,'(i4,20f7.4)') nfrag,(qfrag(i),i=1,nfrag)
131 c write (*,'(8f10.5)') ((coord(k,j),k=1,3),j=1,isize)
132 if (mod(kk/ntraj,ifreq).eq.0 .and. mod(kk,ntraj).eq.itraj) then
133 if (isize .ne. nres+nct-nnt+1) then
134 print *,"Error: inconsistent sizes",isize,nres+nct-nnt+1
145 c(j,i+nres)=coord(j,ii+nres)
149 write (tytul,'(a,i6)') "Structure",kk
150 call pdbout(etot,tytul,9)