X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=blobdiff_plain;f=source%2Funres%2Fsrc-HCD-5D%2Fgen_rand_conf.F;fp=source%2Funres%2Fsrc-HCD-5D%2Fgen_rand_conf.F;h=b5e55958fe83e6a79147eaac1d8b16bec4b5c8c6;hb=5aac27f7c6317fa0975184363614b42716034716;hp=557f435a3ebbfd0301e1399ae3af10fa891f7b1c;hpb=fd10e81284102e5a8466e05c87f0202979a2f00b;p=unres.git diff --git a/source/unres/src-HCD-5D/gen_rand_conf.F b/source/unres/src-HCD-5D/gen_rand_conf.F index 557f435..b5e5595 100644 --- a/source/unres/src-HCD-5D/gen_rand_conf.F +++ b/source/unres/src-HCD-5D/gen_rand_conf.F @@ -780,7 +780,7 @@ c overlapping residues left, or false otherwise (success) call overlap_sc_list(ioverlap,ioverlap_last) if (ioverlap_last.gt.0) then write (iout,*) '#OVERLAPing residues ',ioverlap_last - write (iout,'(20i4)') (ioverlap(k),k=1,ioverlap_last) + write (iout,'(18i5)') (ioverlap(k),k=1,ioverlap_last) had_overlaps=.true. endif @@ -845,13 +845,15 @@ c overlapping residues left, or false otherwise (success) integer ioverlap(maxres),ioverlap_last data redfac /0.5D0/ -c write (iout,*) "overlap_sc_list" + write (iout,*) "overlap_sc_list" +c write(iout,*) "iatsc_s",iatsc_s," iatsc_e",iatsc_e + write(iout,*) "nnt",nnt," nct",nct ioverlap_last=0 C Check for SC-SC overlaps and mark residues c print *,'>>overlap_sc nnt=',nnt,' nct=',nct ind=0 -c write(iout,*) "iatsc_s",iatsc_s," iatsc_e",iatsc_e - do i=iatsc_s,iatsc_e +c do i=iatsc_s,iatsc_e + do i=nnt,nct itypi=iabs(itype(i)) itypi1=iabs(itype(i+1)) if (itypi.eq.ntyp1) cycle @@ -863,12 +865,13 @@ c write(iout,*) "iatsc_s",iatsc_s," iatsc_e",iatsc_e dzi=dc_norm(3,nres+i) dsci_inv=dsc_inv(itypi) c - do iint=1,nint_gr(i) - do j=istart(i,iint),iend(i,iint) +c do iint=1,nint_gr(i) +c do j=istart(i,iint),iend(i,iint) + do j=i+1,nct ind=ind+1 itypj=iabs(itype(j)) if (itypj.eq.ntyp1) cycle -c write (iout,*) "i,j",i,j," itypi,itypj",itypi,itypj +c write (iout,*) "i,j",i,j," itypi,itypj",itypi,itypj dscj_inv=dsc_inv(itypj) sig0ij=sigma(itypi,itypj) chi1=chi(itypi,itypj) @@ -880,13 +883,13 @@ c write (iout,*) "i,j",i,j," itypi,itypj",itypi,itypj alf1=alp(itypi) alf2=alp(itypj) alf12=0.5D0*(alf1+alf2) - if (j.gt.i+1) then - rcomp=sigmaii(itypi,itypj) - else - rcomp=sigma(itypi,itypj) - endif -c write (iout,'(2(a3,2i3),a3,2f10.5)'), -c & ' i=',i,iti,' j=',j,itj,' d=',dist(nres+i,nres+j) + if (j.gt.i+1) then + rcomp=sigmaii(itypi,itypj) + else + rcomp=sigma(itypi,itypj) + endif +c write (iout,'(2(a3,2i5),a3,2f10.5)'), +c & ' i=',i,itypi,' j=',j,itypj,' d=',dist(nres+i,nres+j) c & ,rcomp xj=c(1,nres+j)-xi yj=c(2,nres+j)-yi @@ -905,28 +908,28 @@ c write (iout,*) "sigsq",sigsq sigsq=1.0D0/sigsq sig=sig0ij*dsqrt(sigsq) rij_shift=1.0D0/rij-sig+sig0ij -c write (iout,*) "rij_shift",rij_shift -c if ( 1.0/rij .lt. redfac*rcomp .or. -c & rij_shift.le.0.0D0 ) then -c write (iout,'(a,i3,a,i3,a,f10.5,a,3f10.5)') -c & 'overlap SC-SC: i=',i,' j=',j, -c & ' dist=',dist(nres+i,nres+j),' rcomp=', -c & rcomp,1.0/rij,rij_shift - if ( rij_shift.le.0.0D0 ) then -c write (iout,*) "overlap",i,j - ioverlap_last=ioverlap_last+1 - ioverlap(ioverlap_last)=i - do k=1,ioverlap_last-1 - if (ioverlap(k).eq.i) ioverlap_last=ioverlap_last-1 +c write (iout,*) "rij",1.0d0/rij," rij_shift",rij_shift, +c & " sig",sig," sig0ij",sig0ij +c if ( rij_shift.le.0.0D0 ) then + if ( rij_shift/sig0ij.le.0.1D0 ) then +c write (iout,*) "overlap",i,j + write (iout,'(a,i5,a,i5,a,f10.5,a,3f10.5)') + & 'overlap SC-SC: i=',i,' j=',j, + & ' dist=',dist(nres+i,nres+j),' rcomp=', + & rcomp,1.0/rij,rij_shift + ioverlap_last=ioverlap_last+1 + ioverlap(ioverlap_last)=i + do k=1,ioverlap_last-1 + if (ioverlap(k).eq.i) ioverlap_last=ioverlap_last-1 + enddo + ioverlap_last=ioverlap_last+1 + ioverlap(ioverlap_last)=j + do k=1,ioverlap_last-1 + if (ioverlap(k).eq.j) ioverlap_last=ioverlap_last-1 + enddo + endif enddo - ioverlap_last=ioverlap_last+1 - ioverlap(ioverlap_last)=j - do k=1,ioverlap_last-1 - if (ioverlap(k).eq.j) ioverlap_last=ioverlap_last-1 - enddo - endif - enddo - enddo +c enddo enddo return end