test homo small memory single sco
[unres.git] / source / unres / src-HCD-5D / readrtns_CSA.F
index da28aa3..b24a582 100644 (file)
@@ -741,7 +741,7 @@ C
       integer ilen
       external ilen
       integer iperm,tperm
-      integer i,j,ii,k,l,itrial,itmp,i1,i2,it1,it2,nres_temp
+      integer i,j,ii,k,l,itrial,itmp,i1,i2,it1,it2,nres_temp,itemp
       double precision sumv
 C
 C Read PDB structure if applicable
@@ -1195,11 +1195,22 @@ c      write (iout,*) "After read_dist_constr nhpb",nhpb
                 enddo
               enddo
             else
-              if (me.eq.king .or. .not. out1file)
+c              itemp=nres
+c              nres=nres_temp
+c              call gen_rand_conf(itemp,*115)
+c              nmodel_start=nmodel_start+1
+c              do i=1,2*nres
+c                do j=1,3
+c                  chomo(j,i,nmodel_start)=c(j,i)
+c                enddo
+c              enddo
+c              goto 116
+  115         if (me.eq.king .or. .not. out1file)
      &          write (iout,'(a,2i5,1x,a)') 
      &           "Different number of residues",nres_temp,nres,
      &           " model skipped."
             endif
+  116       continue
             nres=nres_temp
           enddo
   332     continue
@@ -1297,7 +1308,7 @@ c            return
           enddo
           call bond_regular
           call chainbuild_extconf
-        else
+        else if (.not. start_from_model) then
           if(me.eq.king.or..not.out1file)
      &     write (iout,'(a)') 'Random-generated initial geometry.'
           call bond_regular
@@ -3254,8 +3265,8 @@ c    &                       constr_homology
               endif
               sigma_odl(k,ii)=1.0d0/(sigma_odl(k,ii)*sigma_odl(k,ii)) 
             else
-              ii=ii+1
-              l_homo(k,ii)=.false.
+ct              ii=ii+1
+ct              l_homo(k,ii)=.false.
             endif
             enddo
           enddo
@@ -3445,7 +3456,7 @@ cd      write(iout,*) "waga_theta",waga_theta,"waga_d",waga_d
       if(me.eq.king .or. .not. out1file .and. fg_rank.eq.0) then
        write (iout,*) "Distance restraints from templates"
        do ii=1,lim_odl
-       write(iout,'(3i5,100(2f8.2,1x,l1,4x))') 
+       write(iout,'(i8,2i5,100(f8.2,e12.4,1x,l1,4x))') 
      &  ii,ires_homo(ii),jres_homo(ii),
      &  (odl(ki,ii),1.0d0/dsqrt(sigma_odl(ki,ii)),l_homo(ki,ii),
      &  ki=1,constr_homology)
@@ -3654,6 +3665,7 @@ c
       call getenv("FRAGFILE",fragfile) 
       open(ientin,file=fragfile,status="old",err=10)
       read(ientin,*) constr_homology,nclust
+      nmodel_start=constr_homology
       l_homo = .false.
       sigma_theta=0.0
       sigma_d=0.0