X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=blobdiff_plain;f=source%2Fwham%2Fsrc-M%2Fmolread_zs.F;h=3480671455cbc0309069d86dd2464409cfbd4da6;hb=6ac7aa57d0bfb064199114f14235b334c9389242;hp=0c1a211e9e24880b05fc6c800be5901888aca27e;hpb=dc8aad4b659fef3940a18037dc98775344242ce3;p=unres.git diff --git a/source/wham/src-M/molread_zs.F b/source/wham/src-M/molread_zs.F index 0c1a211..3480671 100644 --- a/source/wham/src-M/molread_zs.F +++ b/source/wham/src-M/molread_zs.F @@ -360,7 +360,7 @@ c & sigma_odl_temp(maxres,maxres,max_template) logical lprn /.true./ integer ilen external ilen - logical unres_pdb + logical unres_pdb,liiflag c c FP - Nov. 2014 Temporary specifications for new vars c @@ -463,7 +463,7 @@ c tpl_k_rescore="template"//kic2//".sco" unres_pdb=.false. - call readpdb + call readpdb_template(k) cref do i=1,2*nres cref do j=1,3 cref crefjlee(j,i)=c(j,i) @@ -688,22 +688,34 @@ c shift data in all arrays c if (waga_dist.ne.0.0d0) then ii=0 + liiflag=.true. do i=nnt,nct-2 do j=i+2,nct ii=ii+1 - if (ii_in_use(ii).eq.0) then - do ki=ii,lim_odl-1 - ires_homo(ki)=ires_homo(ki+1) - jres_homo(ki)=jres_homo(ki+1) - ii_in_use(ki)=ii_in_use(ki+1) + if (ii_in_use(ii).eq.0.and.liiflag) then + liiflag=.false. + iistart=ii + endif + if (ii_in_use(ii).ne.0.and..not.liiflag.or. + & .not.liiflag.and.ii.eq.lim_odl) then + if (ii.eq.lim_odl) then + iishift=ii-iistart+1 + else + iishift=ii-iistart + endif + liiflag=.true. + do ki=iistart,lim_odl-iishift + ires_homo(ki)=ires_homo(ki+iishift) + jres_homo(ki)=jres_homo(ki+iishift) + ii_in_use(ki)=ii_in_use(ki+iishift) do k=1,constr_homology - odl(k,ki)=odl(k,ki+1) - sigma_odl(k,ki)=sigma_odl(k,ki+1) - l_homo(k,ki)=l_homo(k,ki+1) + odl(k,ki)=odl(k,ki+iishift) + sigma_odl(k,ki)=sigma_odl(k,ki+iishift) + l_homo(k,ki)=l_homo(k,ki+iishift) enddo enddo - ii=ii-1 - lim_odl=lim_odl-1 + ii=ii-iishift + lim_odl=lim_odl-iishift endif enddo enddo