introduction of shielding to cluster DEBUG mode
[unres.git] / source / cluster / wham / src-M / readrtns.F
index ea51dbf..6f8f5e4 100644 (file)
@@ -16,12 +16,13 @@ C
       include 'COMMON.FREE'
       include 'COMMON.INTERACT'
       include "COMMON.SPLITELE"
+      include 'COMMON.SHIELD'
       character*320 controlcard,ucase
 #ifdef MPL
       include 'COMMON.INFO'
 #endif
       integer i,i1,i2,it1,it2
-
+      double precision pi
       read (INP,'(a80)') titel
       call card_concat(controlcard)
 
@@ -36,6 +37,26 @@ C Reading the dimensions of box in x,y,z coordinates
 c Cutoff range for interactions
       call reada(controlcard,"R_CUT",r_cut,15.0d0)
       call reada(controlcard,"LAMBDA",rlamb,0.3d0)
+C Shielding mode
+      call readi(controlcard,'SHIELD',shield_mode,0)
+      write (iout,*) "SHIELD MODE",shield_mode
+      if (shield_mode.gt.0) then
+      pi=3.141592d0
+C VSolvSphere the volume of solving sphere
+C      print *,pi,"pi"
+C rpp(1,1) is the energy r0 for peptide group contact and will be used for it 
+C there will be no distinction between proline peptide group and normal peptide
+C group in case of shielding parameters
+      VSolvSphere=4.0/3.0*pi*rpp(1,1)**3
+      VSolvSphere_div=VSolvSphere-4.0/3.0*pi*(rpp(1,1)/2.0)**3
+      write (iout,*) VSolvSphere,VSolvSphere_div
+C long axis of side chain 
+      do i=1,ntyp
+      long_r_sidechain(i)=vbldsc0(1,i)
+      short_r_sidechain(i)=sigma0(i)
+      enddo
+      buff_shield=1.0d0
+      endif
       call readi(controlcard,'PDBOUT',outpdb,0)
       call readi(controlcard,'MOL2OUT',outmol2,0)
       refstr=(index(controlcard,'REFSTR').gt.0)
@@ -103,6 +124,7 @@ C
       include 'COMMON.CONTACTS'
       include 'COMMON.TIME1'
       include 'COMMON.TORCNSTR'
+      include 'COMMON.SHIELD'
 #ifdef MPL
       include 'COMMON.INFO'
 #endif
@@ -118,7 +140,9 @@ C Body
 C
 C Read weights of the subsequent energy terms.
       call card_concat(weightcard)
-      call reada(weightcard,'WSC',wsc,1.0d0)
+      write(iout,*) weightcard
+C      call reada(weightcard,'WSC',wsc,1.0d0)
+      write(iout,*) wsc
       call reada(weightcard,'WLONG',wsc,wsc)
       call reada(weightcard,'WSCP',wscp,1.0d0)
       call reada(weightcard,'WELEC',welec,1.0D0)
@@ -150,6 +174,8 @@ C Read weights of the subsequent energy terms.
       call reada(weightcard,"V2SS",v2ss,7.61d0)
       call reada(weightcard,"V3SS",v3ss,13.7d0)
       call reada(weightcard,"EBR",ebr,-5.50D0)
+      call reada(weightcard,'WSHIELD',wshield,1.0d0)
+      write(iout,*) 'WSHIELD',wshield
       call reada(weightcard,"ATRISS",atriss,0.301D0)
       call reada(weightcard,"BTRISS",btriss,0.021D0)
       call reada(weightcard,"CTRISS",ctriss,1.001D0)