1 subroutine pdbout(etot,tytul,iunit)
2 implicit real*8 (a-h,o-z)
5 include 'COMMON.INTERACT'
7 include 'COMMON.IOUNITS'
8 include 'COMMON.HEADER'
9 include 'COMMON.SBRIDGE'
10 c include 'COMMON.DISTFIT'
14 write (iunit,'(3a,1pe15.5)') 'REMARK ',tytul,' ENERGY ',etot
15 cmodel write (iunit,'(a5,i6)') 'MODEL',1
16 c if (nhfrag.gt.0) then
18 c iti=itype(hfrag(1,j))
19 c itj=itype(hfrag(2,j))
21 c write (iunit,'(a5,i5,1x,a1,i1,2x,a3,i7,2x,a3,i7,i3,t76,i5)')
23 c & restyp(iti),hfrag(1,j)-1,
24 c & restyp(itj),hfrag(2,j)-1,1,hfrag(2,j)-hfrag(1,j)
26 c write (iunit,'(a5,i5,1x,a1,i2,1x,a3,i7,2x,a3,i7,i3)')
28 c & restyp(iti),hfrag(1,j)-1,
29 c & restyp(itj),hfrag(2,j)-1,1,hfrag(2,j)-hfrag(1,j)
34 c if (nbfrag.gt.0) then
38 c iti=itype(bfrag(1,j))
39 c itj=itype(bfrag(2,j)-1)
41 c write (iunit,'(a5,i5,1x,a1,i1,i3,1x,a3,i6,2x,a3,i6,i3)')
42 c & 'SHEET',1,'B',j,2,
43 c & restyp(iti),bfrag(1,j)-1,
44 c & restyp(itj),bfrag(2,j)-2,0
46 c if (bfrag(3,j).gt.bfrag(4,j)) then
48 c itk=itype(bfrag(3,j))
49 c itl=itype(bfrag(4,j)+1)
51 c write (iunit,'(a5,i5,1x,a1,i1,i3,1x,a3,i6,2x,a3,i6,i3,
52 c & 2x,a1,2x,a3,i6,3x,a1,2x,a3,i6)')
53 c & 'SHEET',2,'B',j,2,
54 c & restyp(itl),bfrag(4,j),
55 c & restyp(itk),bfrag(3,j)-1,-1,
56 c & "N",restyp(itk),bfrag(3,j)-1,
57 c & "O",restyp(iti),bfrag(1,j)-1
61 c itk=itype(bfrag(3,j))
62 c itl=itype(bfrag(4,j)-1)
65 c write (iunit,'(a5,i5,1x,a1,i1,i3,1x,a3,i6,2x,a3,i6,i3,
66 c & 2x,a1,2x,a3,i6,3x,a1,2x,a3,i6)')
67 c & 'SHEET',2,'B',j,2,
68 c & restyp(itk),bfrag(3,j)-1,
69 c & restyp(itl),bfrag(4,j)-2,1,
70 c & "N",restyp(itk),bfrag(3,j)-1,
71 c & "O",restyp(iti),bfrag(1,j)-1
82 write(iunit,'(a6,i4,1x,a3,i7,4x,a3,i7)')
83 & 'SSBOND',i,'CYS',ihpb(i)-1-nres,
84 & 'CYS',jhpb(i)-1-nres
94 write (iunit,10) iatom,restyp(iti),ires,(c(j,i),j=1,3)!,vtot(i)
97 write (iunit,20) iatom,restyp(iti),ires,(c(j,nres+i),j=1,3)!,
101 write (iunit,'(a)') 'TER'
103 if (itype(i).eq.10) then
104 write (iunit,30) ica(i),ica(i+1)
106 write (iunit,30) ica(i),ica(i+1),ica(i)+1
109 if (itype(nct).ne.10) then
110 write (iunit,30) ica(nct),ica(nct)+1
113 write (iunit,30) ica(ihpb(i)-nres)+1,ica(jhpb(i)-nres)+1
115 write (iunit,'(a6)') 'ENDMDL'
116 10 FORMAT ('ATOM',I7,' CA ',A3,I6,4X,3F8.3,f15.3)
117 20 FORMAT ('ATOM',I7,' CB ',A3,I6,4X,3F8.3,f15.3)
118 30 FORMAT ('CONECT',8I5)
121 c------------------------------------------------------------------------------
122 subroutine MOL2out(etot,tytul)
123 C Prints the Cartesian coordinates of the alpha-carbons in the Tripos mol2
125 implicit real*8 (a-h,o-z)
127 include 'COMMON.CHAIN'
128 include 'COMMON.INTERACT'
129 include 'COMMON.NAMES'
130 include 'COMMON.IOUNITS'
131 include 'COMMON.HEADER'
132 include 'COMMON.SBRIDGE'
133 character*32 tytul,fd
135 character*6 res_num,pom,ucase
143 write (imol2,'(a)') '#'
145 & '# Creating user name: unres'
146 write (imol2,'(2a)') '# Creation time: ',
148 write (imol2,'(/a)') '\@<TRIPOS>MOLECULE'
149 write (imol2,'(a)') tytul
150 write (imol2,'(5i5)') nct-nnt+1,nct-nnt+nss+1,nct-nnt+nss+1,0,0
151 write (imol2,'(a)') 'SMALL'
152 write (imol2,'(a)') 'USER_CHARGES'
153 write (imol2,'(a)') '\@<TRIPOS>ATOM'
155 write (liczba,'(i3)') i
156 pom=ucase(restyp(itype(i)))
157 res_num = pom(:3)//liczba(2:)
158 write (imol2,10) i,(c(j,i),j=1,3),i,res_num,0.0
160 write (imol2,'(a)') '\@<TRIPOS>BOND'
162 write (imol2,'(i5,2i6,i2)') i-nnt+1,i-nnt+1,i-nnt+2,1
165 write (imol2,'(i5,2i6,i2)') nct-nnt+i,ihpb(i),jhpb(i),1
167 write (imol2,'(a)') '\@<TRIPOS>SUBSTRUCTURE'
169 write (liczba,'(i3)') i
170 pom = ucase(restyp(itype(i)))
171 res_num = pom(:3)//liczba(2:)
172 write (imol2,30) i-nnt+1,res_num,i-nnt+1,0
174 10 FORMAT (I7,' CA ',3F10.4,' C.3',I8,1X,A,F11.4,' ****')
175 30 FORMAT (I7,1x,A,I14,' RESIDUE',I13,' **** ****')
178 c------------------------------------------------------------------------
179 subroutine briefout(it,ener)
180 implicit real*8 (a-h,o-z)
182 include 'COMMON.IOUNITS'
183 include 'COMMON.CHAIN'
185 include 'COMMON.LOCAL'
186 include 'COMMON.INTERACT'
187 include 'COMMON.NAMES'
189 include 'COMMON.SBRIDGE'
190 c print '(a,i5)',intname,igeom
191 #if defined(AIX) || defined(PGI)
192 open (igeom,file=intname,position='append')
194 open (igeom,file=intname,access='append')
197 WRITE (igeom,180) IT,ENER,NSS,(IHPB(I),JHPB(I),I=1,NSS)
199 WRITE (igeom,180) IT,ENER,NSS,(IHPB(I),JHPB(I),I=1,9)
200 WRITE (igeom,190) (IHPB(I),JHPB(I),I=10,NSS)
202 c IF (nvar.gt.nphi) WRITE (igeom,200) (RAD2DEG*THETA(I),I=3,NRES)
203 WRITE (igeom,200) (RAD2DEG*THETA(I),I=3,NRES)
204 WRITE (igeom,200) (RAD2DEG*PHI(I),I=4,NRES)
205 c if (nvar.gt.nphi+ntheta) then
206 write (igeom,200) (rad2deg*alph(i),i=2,nres-1)
207 write (igeom,200) (rad2deg*omeg(i),i=2,nres-1)
210 180 format (I5,F12.3,I2,9(1X,2I3))
211 190 format (3X,11(1X,2I3))
222 c----------------------------------------------------------------
223 subroutine cartoutx(time,nfrag,qfrag)
224 implicit real*8 (a-h,o-z)
226 include 'COMMON.CHAIN'
227 include 'COMMON.INTERACT'
228 include 'COMMON.NAMES'
229 include 'COMMON.IOUNITS'
230 include 'COMMON.HEADER'
231 include 'COMMON.SBRIDGE'
232 include 'COMMON.DISTFIT'
233 c include 'COMMON.MD'
234 double precision time
235 double precision qfrag(100)
236 #if defined(AIX) || defined(PGI)
237 open(icart,file=cartname,position="append")
239 open(icart,file=cartname,access="append")
241 write (icart,'(e15.8,2e15.5,f12.5,$)') time,potE,uconst,t_bath
242 write (icart,'(i4,$)')
243 & nss,(ihpb(j),jhpb(j),j=1,nss)
244 write (icart,'(i4,20f7.4)') nfrag,
245 & (qfrag(i),i=1,nfrag)
246 write (icart,'(8f10.5)')
247 & ((c(k,j),k=1,3),j=1,nres),
248 & ((c(k,j+nres),k=1,3),j=nnt,nct)
252 c-----------------------------------------------------------------
253 subroutine cartout(time,nfrag,qfrag)
254 implicit real*8 (a-h,o-z)
256 include 'COMMON.CHAIN'
257 include 'COMMON.INTERACT'
258 include 'COMMON.NAMES'
259 include 'COMMON.IOUNITS'
260 include 'COMMON.HEADER'
261 include 'COMMON.SBRIDGE'
262 include 'COMMON.DISTFIT'
263 c include 'COMMON.MD'
264 double precision time
266 double precision qfrag(100)
267 real xcoord(3,maxres2+2),prec
269 call xdrfopen(ixdrf,cartname, "w", iret)
270 call xdrffloat(ixdrf, real(time), iret)
271 call xdrffloat(ixdrf, real(potE), iret)
272 call xdrffloat(ixdrf, real(uconst), iret)
273 call xdrffloat(ixdrf, real(t_bath), iret)
274 call xdrfint(ixdrf, nss, iret)
276 call xdrfint(ixdrf, ihpb(j), iret)
277 call xdrfint(ixdrf, jhpb(j), iret)
279 call xdrfint(ixdrf, nfrag, iret)
281 call xdrffloat(ixdrf, real(qfrag(i)), iret)
291 xcoord(j,nres+i-nnt+1)=c(j,i+nres)
296 call xdrf3dfcoord(ixdrf, xcoord, itmp, prec, iret)
297 call xdrfclose(ixdrf, iret)