if (nss.gt.0) then
do i=1,nss
+ if (dyn_ss) then
write(iunit,'(a6,i4,1x,a3,i7,4x,a3,i7)')
- & 'SSBOND',i,'CYS',ihpb(i)-1-nres,
- & 'CYS',jhpb(i)-1-nres
+ & 'SSBOND',i,'CYS',idssb(i)-nnt+1,
+ & 'CYS',jdssb(i)-nnt+1
+ else
+ write(iunit,'(a6,i4,1x,a3,i7,4x,a3,i7)')
+ & 'SSBOND',i,'CYS',ihpb(i)-nnt+1-nres,
+ & 'CYS',jhpb(i)-nnt+1-nres
+ endif
enddo
endif
ires=0
do i=nnt,nct
iti=itype(i)
- if (iti.eq.21) then
+ if ((iti.eq.ntyp1).and.((itype(i+1)).eq.ntyp1)) then
ichain=ichain+1
ires=0
write (iunit,'(a)') 'TER'
ires=ires+1
iatom=iatom+1
ica(i)=iatom
+ if (iti.ne.ntyp1) then
write (iunit,10) iatom,restyp(iti),chainid(ichain),
& ires,(c(j,i),j=1,3),vtot(i)
if (iti.ne.10) then
write (iunit,20) iatom,restyp(iti),chainid(ichain),
& ires,(c(j,nres+i),j=1,3),
& vtot(i+nres)
+ endif
endif
endif
enddo
write (iunit,'(a)') 'TER'
do i=nnt,nct-1
- if (itype(i).eq.21) cycle
- if (itype(i).eq.10 .and. itype(i+1).ne.21) then
+ if (itype(i).eq.ntyp1) cycle
+ if (itype(i).eq.10 .and. itype(i+1).ne.ntyp1) then
write (iunit,30) ica(i),ica(i+1)
- else if (itype(i).ne.10 .and. itype(i+1).ne.21) then
+ else if (itype(i).ne.10 .and. itype(i+1).ne.ntyp1) then
write (iunit,30) ica(i),ica(i+1),ica(i)+1
- else if (itype(i).ne.10 .and. itype(i+1).eq.21) then
+ else if (itype(i).ne.10 .and. itype(i+1).eq.ntyp1) then
write (iunit,30) ica(i),ica(i)+1
endif
enddo
write (iunit,30) ica(nct),ica(nct)+1
endif
do i=1,nss
+ if (dyn_ss) then
+ write (iunit,30) ica(idssb(i))+1,ica(jdssb(i))+1
+ else
write (iunit,30) ica(ihpb(i)-nres)+1,ica(jhpb(i)-nres)+1
+ endif
enddo
write (iunit,'(a6)') 'ENDMDL'
10 FORMAT ('ATOM',I7,' CA ',A3,1X,A1,I4,4X,3F8.3,f15.3)
include 'COMMON.INTERACT'
include 'COMMON.NAMES'
include 'COMMON.GEO'
+ include 'COMMON.TORSION'
write (iout,'(/a)') 'Geometry of the virtual chain.'
write (iout,'(7a)') ' Res ',' d',' Theta',
& ' Phi',' Dsc',' Alpha',' Omega'
open(icart,file=cartname,access="append")
#endif
write (icart,'(e15.8,2e15.5,f12.5,$)') time,potE,uconst,t_bath
- write (icart,'(i4,$)')
+ if (dyn_ss) then
+ write (icart,'(i4,$)')
+ & nss,(idssb(j)+nres,jdssb(j)+nres,j=1,nss)
+ else
+ write (icart,'(i4,$)')
& nss,(ihpb(j),jhpb(j),j=1,nss)
+ endif
write (icart,'(i4,20f7.4)') nfrag+npair+3*nfrag_back,
& (qfrag(i),i=1,nfrag),(qpair(i),i=1,npair),
& (utheta(i),ugamma(i),uscdiff(i),i=1,nfrag_back)
call xdrffloat_(ixdrf, real(t_bath), iret)
call xdrfint_(ixdrf, nss, iret)
do j=1,nss
+ if (dyn_ss) then
+ call xdrfint_(ixdrf, idssb(j)+nres, iret)
+ call xdrfint_(ixdrf, jdssb(j)+nres, iret)
+ else
call xdrfint_(ixdrf, ihpb(j), iret)
call xdrfint_(ixdrf, jhpb(j), iret)
+ endif
enddo
call xdrfint_(ixdrf, nfrag+npair+3*nfrag_back, iret)
do i=1,nfrag
call xdrffloat(ixdrf, real(t_bath), iret)
call xdrfint(ixdrf, nss, iret)
do j=1,nss
+ if (dyn_ss) then
+ call xdrfint(ixdrf, idssb(j)+nres, iret)
+ call xdrfint(ixdrf, jdssb(j)+nres, iret)
+ else
call xdrfint(ixdrf, ihpb(j), iret)
call xdrfint(ixdrf, jhpb(j), iret)
+ endif
enddo
call xdrfint(ixdrf, nfrag+npair+3*nfrag_back, iret)
do i=1,nfrag