working peptide-phosphate
[unres4.git] / source / unres / io.f90
index dbc5ce0..0458733 100644 (file)
       call reada(weightcard,'CUTOFF',cutoff_corr,7.0d0)
       call reada(weightcard,'DELT_CORR',delt_corr,0.5d0)
       call reada(weightcard,'TEMP0',temp0,300.0d0)
+      call reada(weightcard,'WSCBASE',wscbase,1.0D0)
       if (index(weightcard,'SOFT').gt.0) ipot=6
       call reada(weightcard,'WBOND_NUCL',wbond_nucl,1.0D0)
       call reada(weightcard,'WCATCAT',wcatcat,0.0d0)
       call reada(weightcard,'WCATPROT',wcatprot,0.0d0)
+      call reada(weightcard,'WPEPBASE',wpepbase,1.0d0)
+      call reada(weightcard,'WSCPHO',wscpho,1.0d0)
+      call reada(weightcard,'WPEPPHO',wpeppho,1.0d0)
+
 ! 12/1/95 Added weight for the multi-body term WCORR
       call reada(weightcard,'WCORRH',wcorr,1.0D0)
       if (wcorr4.gt.0.0d0) wcorr=wcorr4
       if (indpdb.eq.0) then
       nres_molec(:)=0
         allocate(sequence(maxres,5))
-
-     if (protein) then
+!      itype(:,:)=0
+      if (protein) then
 ! Read sequence if not taken from the pdb file.
         molec=1
         read (inp,*) nres_molec(molec)
         else
           read (inp,'(20(1x,a3))') (sequence(i,molec),i=1,nres_molec(molec))
         endif
+!        read(inp,*) weightcard_t
+!        print *,"po seq" weightcard_t
 ! Convert sequence to numeric code
         
         do i=1,nres_molec(molec)
           itype(i,1)=rescode(i,sequence(i,molec),iscode,molec)
         enddo
        endif
+!        read(inp,*) weightcard_t
+!        print *,"po seq", weightcard_t
+
        if (nucleic) then
 ! Read sequence if not taken from the pdb file.
         molec=2
        
 ! Assign initial virtual bond lengths
 !elwrite(iout,*) "test_alloc"
+        if(.not.allocated(molnum)) then
+         allocate(molnum(nres))
+         itmp=0
+        do i=1,5
+               do j=1,nres_molec(i)
+               itmp=itmp+1
+              molnum(itmp)=i
+               enddo
+         enddo
+!        print *,nres_molec(i)
+        endif
         if(.not.allocated(vbld)) allocate(vbld(2*nres))
 !elwrite(iout,*) "test_alloc"
         if(.not.allocated(vbld_inv)) allocate(vbld_inv(2*nres))
       enddo
       if(me.eq.king.or..not.out1file)then
        write (iout,*) "ITEL"
+       print *,nres,"nres"
        do i=1,nres-1
          write (iout,*) i,itype(i,1),itel(i)
        enddo
       endif
       call read_bridge
 !--------------------------------
+       print *,"tu dochodze"
 ! znamy nres oraz nss można zaalokowac potrzebne tablice
       call alloc_geo_arrays
       call alloc_ener_arrays