trial of sync MREMD for minimization
[unres4.git] / source / cluster / io_clust.F90
index 1e24794..a75c27e 100644 (file)
       jjj=jjj+1
       chalen=int((nct-nnt+2)/symetr)
       call int_from_cart1(.false.)
-      do j=nnt+1,nct
+      do j=nnt+1,nct-1
         mnum=molnum(j)
-        if (mnum.eq.5) cycle
+        write (iout,*) "Check atom",j
+        if (mnum.ne.1) cycle
         if (itype(j,mnum).eq.ntyp1_molec(mnum)) cycle
         if (itype(j+1,molnum(j+1)).eq.ntyp1_molec(molnum(j+1))) cycle
 
       do j=nnt,nct
         mnum=molnum(j)
         itj=itype(j,mnum)
-        if (mnum.eq.5) cycle
+        if (mnum.ne.1) cycle
         if (itype(j,1).ne.10 .and. (itype(j,mnum).ne.ntyp1_molec(mnum)) & 
             .and.  (vbld(nres+j)-dsc(iabs(itj))) &
                                   .gt.2.0d0) then
       use control_data, only: titel,outpdb,outmol2,refstr,pdbref,&
                  iscode,symetr,punch_dist,print_dist,nstart,nend,&
                  caonly,iopt,efree,lprint_cart,lprint_int,rlamb_ele,&
-                 r_cut_ele
+                 r_cut_ele,nclust,tor_mode,scelemode
 !      implicit none
 !      include 'DIMENSIONS'
 !      include 'sizesclu.dat'
       call reada(controlcard,'BOXX',boxxsize,100.0d0)
       call reada(controlcard,'BOXY',boxysize,100.0d0)
       call reada(controlcard,'BOXZ',boxzsize,100.0d0)
+      call readi(controlcard,'NCLUST',nclust,5)
 !      ions=index(controlcard,"IONS").gt.0
+      call readi(controlcard,"SCELEMODE",scelemode,0)
+      print *,"SCELE",scelemode
+      call readi(controlcard,'TORMODE',tor_mode,0)
+!C      if(me.eq.king .or. .not. out1file .and. fg_rank.eq.0) then
+        write(iout,*) "torsional and valence angle mode",tor_mode
       call reada(controlcard,"R_CUT_ELE",r_cut_ele,15.0d0)
       call reada(controlcard,"LAMBDA_ELE",rlamb_ele,0.3d0)
       write(iout,*) "R_CUT_ELE=",r_cut_ele
       call reada(weightcard,'WCATPROT',wcatprot,0.0d0)
       call reada(weightcard,'TEMP0',temp0,300.0d0)   !!! el
       if (index(weightcard,'SOFT').gt.0) ipot=6
+      call reada(weightcard,'WVDWPP_NUCL',wvdwpp_nucl,0.0D0)
+      call reada(weightcard,'WELPP',welpp,0.0d0)
+      call reada(weightcard,'WVDWPSB',wvdwpsb,0.0d0)
+      call reada(weightcard,'WELPSB',welpsb,0.0D0)
+      call reada(weightcard,'WVDWSB',wvdwsb,0.0d0)
+      call reada(weightcard,'WELSB',welsb,0.0D0)
+      call reada(weightcard,'WBOND_NUCL',wbond_nucl,0.0D0)
+      call reada(weightcard,'WANG_NUCL',wang_nucl,0.0D0)
+      call reada(weightcard,'WSBLOC',wsbloc,0.0D0)
+      call reada(weightcard,'WTOR_NUCL',wtor_nucl,0.0D0)
+!      print *,"KUR..",wtor_nucl
+      call reada(weightcard,'WTORD_NUCL',wtor_d_nucl,0.0D0)
+      call reada(weightcard,'WCORR_NUCL',wcorr_nucl,0.0D0)
+      call reada(weightcard,'WCORR3_NUC',wcorr3_nucl,0.0D0)
 ! 12/1/95 Added weight for the multi-body term WCORR
       call reada(weightcard,'WCORRH',wcorr,1.0D0)
+      call reada(weightcard,'WSCBASE',wscbase,0.0D0)
+      call reada(weightcard,'WPEPBASE',wpepbase,1.0d0)
+      call reada(weightcard,'WSCPHO',wscpho,0.0d0)
+      call reada(weightcard,'WPEPPHO',wpeppho,0.0d0)
+
+
       if (wcorr4.gt.0.0d0) wcorr=wcorr4
       weights(1)=wsc
       weights(2)=wscp
       weights(18)=scal14
 !el      weights(19)=wsccor !!!!!!!!!!!!!!!!
       weights(21)=wsccor
+          weights(26)=wvdwpp_nucl
+          weights(27)=welpp
+          weights(28)=wvdwpsb
+          weights(29)=welpsb
+          weights(30)=wvdwsb
+          weights(31)=welsb
+          weights(32)=wbond_nucl
+          weights(33)=wang_nucl
+          weights(34)=wsbloc
+          weights(35)=wtor_nucl
+          weights(36)=wtor_d_nucl
+          weights(37)=wcorr_nucl
+          weights(38)=wcorr3_nucl
+          weights(41)=wcatcat
+          weights(42)=wcatprot
+          weights(46)=wscbase
+          weights(47)=wscpho
+          weights(48)=wpeppho
+
+
       write (iout,10) wsc,wscp,welec,wvdwpp,wbond,wang,wscloc,wtor,&
         wtor_d,wstrain,wel_loc,wcorr,wcorr5,wcorr6,wturn3,&
         wturn4,wturn6,wsccor
@@ -1722,6 +1769,8 @@ write(iout,*)"po setup var"
       open (isidep1,file=sidepname,status="old")
       call getenv('SCCORPAR',sccorname)
       open (isccor,file=sccorname,status="old")
+      call getenv('BONDPAR_NUCL',bondname_nucl)
+      open (ibond_nucl,file=bondname_nucl,status='old')
       call getenv('THETPAR_NUCL',thetname_nucl)
       open (ithep_nucl,file=thetname_nucl,status='old')
       call getenv('ROTPAR_NUCL',rotname_nucl)
@@ -1756,6 +1805,9 @@ write(iout,*)"po setup var"
 !
       call getenv('SCPPAR',scpname)
       open (iscpp,file=scpname,status='old')
+      call getenv('SCPPAR_NUCL',scpname_nucl)
+      open (iscpp_nucl,file=scpname_nucl,status='old')
+
 #endif
       return
       end subroutine openunits