X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=blobdiff_plain;f=source%2Fwham%2Fsrc-M%2Freadpdb.f;h=a65709e964639f484c57a459ad9f1ab365e50384;hb=4a883dfc53c2cd278ff8e64898f856649f77c654;hp=93c9cbeac7eef93267f4c62071ab98a36cb4c39b;hpb=478a9d9a1c99eb3f4bc4ca676ff3162bdd01d633;p=unres.git diff --git a/source/wham/src-M/readpdb.f b/source/wham/src-M/readpdb.f index 93c9cbe..a65709e 100644 --- a/source/wham/src-M/readpdb.f +++ b/source/wham/src-M/readpdb.f @@ -27,7 +27,7 @@ C geometry. else if (card(:3).eq.'TER') then C End current chain ires_old=ires+1 - itype(ires_old)=21 + itype(ires_old)=ntyp1 ibeg=2 c write (iout,*) "Chain ended",ires,ishift,ires_old call sccenter(ires,iii,sccor) @@ -48,7 +48,7 @@ c write (iout,'(a80)') card ishift=ires-1 if (res.ne.'GLY' .and. res.ne. 'ACE') then ishift=ishift-1 - itype(1)=21 + itype(1)=ntyp1 endif c write (iout,*) "ires",ires," ibeg",ibeg," ishift",ishift ibeg=0 @@ -85,7 +85,7 @@ C system nres=ires do i=2,nres-1 c write (iout,*) i,itype(i) - if (itype(i).eq.21) then + if (itype(i).eq.ntyp1) then c write (iout,*) "dummy",i,itype(i) do j=1,3 c(j,i)=((c(j,i-1)+c(j,i+1))/2+2*c(j,i-1)-c(j,i-2))/2 @@ -100,7 +100,7 @@ C Calculate the CM of the last side chain. nstart_sup=1 if (itype(nres).ne.10) then nres=nres+1 - itype(nres)=21 + itype(nres)=ntyp1 do j=1,3 dcj=c(j,nres-2)-c(j,nres-3) c(j,nres)=c(j,nres-1)+dcj @@ -116,7 +116,7 @@ C Calculate the CM of the last side chain. c(j,nres+1)=c(j,1) c(j,2*nres)=c(j,nres) enddo - if (itype(1).eq.21) then + if (itype(1).eq.ntyp1) then nsup=nsup-1 nstart_sup=2 do j=1,3 @@ -163,7 +163,7 @@ C Splits to single chain if occurs lll=lll+1 cc write (iout,*) "spraw lancuchy",(c(j,i),j=1,3) if (i.gt.1) then - if (itype(i-1).eq.21) then + if ((itype(i-1).eq.ntyp1).and.(i.gt.2).and.(i.ne.nres)) then chain_length=lll-1 kkk=kkk+1 c write (iout,*) "spraw lancuchy",(c(j,i),j=1,3) @@ -179,6 +179,8 @@ c write (iout,*) "spraw lancuchy",(c(j,i),j=1,3) endif enddo enddo + if (chain_length.eq.0) chain_length=nres + write (iout,*) chain_length do j=1,3 chain_rep(j,chain_length,symetr)=chain_rep(j,chain_length,1) chain_rep(j,chain_length+nres,symetr) @@ -281,7 +283,7 @@ c--------------------------------------------------------------------------- do i=2,nres iti=itype(i) write (iout,*) i,i-1,(c(j,i),j=1,3),(c(j,i-1),j=1,3),dist(i,i-1) - if (itype(i-1).ne.21 .and. itype(i).ne.21 .and. + if (itype(i-1).ne.ntyp1 .and. itype(i).ne.ntyp1 .and. & (dist(i,i-1).lt.2.0D0 .or. dist(i,i-1).gt.5.0D0)) then write (iout,'(a,i4)') 'Bad Cartesians for residue',i stop @@ -289,12 +291,12 @@ c--------------------------------------------------------------------------- theta(i+1)=alpha(i-1,i,i+1) if (i.gt.2) phi(i+1)=beta(i-2,i-1,i,i+1) enddo - if (itype(1).eq.21) then + if (itype(1).eq.ntyp1) then do j=1,3 c(j,1)=c(j,2)+(c(j,3)-c(j,4)) enddo endif - if (itype(nres).eq.21) then + if (itype(nres).eq.ntyp1) then do j=1,3 c(j,nres)=c(j,nres-1)+(c(j,nres-2)-c(j,nres-3)) enddo