Wstawnieni SCCOR dla clustrowania. Nie wiadomo czy jest czytana waga
authorAdam Kazimierz Sieradzan <adasko@sun1.chem.univ.gda.pl>
Tue, 30 Oct 2012 11:16:58 +0000 (07:16 -0400)
committerAdam Kazimierz Sieradzan <adasko@sun1.chem.univ.gda.pl>
Tue, 30 Oct 2012 11:16:58 +0000 (07:16 -0400)
28 files changed:
bin/cluster/unres_clustMD-mult_MPICH-GAB.exe
bin/wham_multparm-D-sccor-oldparm
source/cluster/wham/src-M/COMMON.LOCAL
source/cluster/wham/src-M/COMMON.SCCOR
source/cluster/wham/src-M/COMMON.VAR
source/cluster/wham/src-M/DIMENSIONS
source/cluster/wham/src-M/chainbuild.o
source/cluster/wham/src-M/convert.o
source/cluster/wham/src-M/energy_p_new.F
source/cluster/wham/src-M/energy_p_new.o
source/cluster/wham/src-M/geomout.o
source/cluster/wham/src-M/initialize_p.F
source/cluster/wham/src-M/initialize_p.o
source/cluster/wham/src-M/int_from_cart1.f
source/cluster/wham/src-M/int_from_cart1.o
source/cluster/wham/src-M/main_clust.o
source/cluster/wham/src-M/parmread.F
source/cluster/wham/src-M/parmread.o
source/cluster/wham/src-M/permut.o
source/cluster/wham/src-M/read_coords.o
source/cluster/wham/src-M/read_ref_str.o
source/cluster/wham/src-M/readpdb.o
source/cluster/wham/src-M/readrtns.o
source/cluster/wham/src-M/setup_var.o
source/cluster/wham/src-M/wrtclust.o
source/cluster/wham/src-M/xdrf/libxdrf.a
source/wham/src-M/cinfo.f
source/wham/src-M/energy_p_new.F

index da95526..0ff0820 100755 (executable)
Binary files a/bin/cluster/unres_clustMD-mult_MPICH-GAB.exe and b/bin/cluster/unres_clustMD-mult_MPICH-GAB.exe differ
index e985838..2e94320 100755 (executable)
Binary files a/bin/wham_multparm-D-sccor-oldparm and b/bin/wham_multparm-D-sccor-oldparm differ
index 7d8690a..5a00bb2 100644 (file)
@@ -2,7 +2,7 @@
      & sigc0,dsc,dsc_inv,bsc,censc,gaussc,dsc0,vbl,vblinv,vblinv2,
      & vbl_cis,vbl0,vbld_inv
       integer nlob,loc_start,loc_end,ithet_start,ithet_end,
-     & iphi_start,iphi_end
+     & iphi_start,iphi_end,itau_start,itau_end
 C Parameters of the virtual-bond-angle probability distribution
       common /thetas/ a0thet(-ntyp:ntyp),athet(2,-ntyp:ntyp,-1:1,-1:1)
      &  ,bthet(2,-ntyp:ntyp,-1:1,-1:1),
@@ -33,6 +33,6 @@ C Parameters of the side-chain probability distribution
 C Virtual-bond lenghts
       common /peptbond/ vbl,vblinv,vblinv2,vbl_cis,vbl0
       common /indices/ loc_start,loc_end,ithet_start,ithet_end,
-     &                 iphi_start,iphi_end
+     &                 iphi_start,iphi_end,itau_start,itau_end
 C Inverses of the actual virtual bond lengths
       common /invlen/ vbld_inv(maxres2)
index 5217de7..c38cccb 100644 (file)
@@ -1,6 +1,19 @@
-C Parameters of the SCCOR term
-      double precision v1sccor,v2sccor
-      integer nterm_sccor
-      common/torsion/v1sccor(maxterm_sccor,20,20),
-     &    v2sccor(maxterm_sccor,20,20),
-     &    nterm_sccor
+cc Parameters of the SCCOR term
+       double precision v1sccor,v2sccor,vlor1sccor,
+     &                 vlor2sccor,vlor3sccor,gloc_sc,
+     &                 dcostau,dsintau,dtauangle,dcosomicron,
+     &                 domicron,v0sccor
+       integer nterm_sccor,isccortyp,nsccortyp,nlor_sccor
+       common /sccor/ v1sccor(maxterm_sccor,3,-ntyp:ntyp,-ntyp:ntyp),
+     &    v2sccor(maxterm_sccor,3,-ntyp:ntyp,-ntyp:ntyp),
+     &    v0sccor(maxterm_sccor,-ntyp:ntyp,-ntyp:ntyp),
+     &    vlor1sccor(maxterm_sccor,-ntyp:ntyp,-ntyp:ntyp),
+     &    vlor2sccor(maxterm_sccor,-ntyp:ntyp,-ntyp:ntyp),
+     &    vlor3sccor(maxterm_sccor,-ntyp:ntyp,-ntyp:ntyp),
+     &    gloc_sc(3,0:maxres2,10),
+     &    dcostau(3,3,3,maxres2),dsintau(3,3,3,maxres2),
+     &    dtauangle(3,3,3,maxres2),dcosomicron(3,3,3,maxres2),
+     &    domicron(3,3,3,maxres2),
+     &    nterm_sccor(-ntyp:ntyp,-ntyp:ntyp),isccortyp(-ntyp:ntyp),
+     &    nsccortyp,
+     &    nlor_sccor(-ntyp:ntyp,-ntyp:ntyp)
index ad412d0..326d6ec 100644 (file)
@@ -2,14 +2,15 @@ C Store the geometric variables in the following COMMON block.
       integer ntheta,nphi,nside,nvar,ialph,ivar
       double precision theta,phi,alph,omeg,vbld,vbld_ref,
      &  theta_ref,phi_ref,alph_ref,omeg_ref,
-     &  costtab,sinttab,cost2tab,sint2tab,
+     &  costtab,sinttab,cost2tab,sint2tab,tauangle,omicron,
      &          xxtab,yytab,zztab
       common /var/ theta(maxres),phi(maxres),alph(maxres),omeg(maxres),
      &          vbld(2*maxres),
      &          costtab(maxres), sinttab(maxres), cost2tab(maxres),
      &          sint2tab(maxres),xxtab(maxres),yytab(maxres),
      &          zztab(maxres),
-     &          ialph(maxres,2),ivar(4*maxres2),ntheta,nphi,nside,nvar
+     &          ialph(maxres,2),ivar(4*maxres2),ntheta,nphi,nside,nvar,
+     &          omicron(2,maxres),tauangle(3,maxres)
 C Angles from experimental structure
       common /varref/ vbld_ref(maxres),
      &  theta_ref(maxres),phi_ref(maxres),
index e7a002b..1bcdf79 100644 (file)
@@ -36,7 +36,7 @@ C Max. number of types of dihedral angles & multiplicity of torsional barriers
       parameter (maxtor=4,maxterm=10,maxlor=3,maxtermd_1=8,maxtermd_2=8)
 c Max number of torsional terms in SCCOR
       integer maxterm_sccor
-      parameter (maxterm_sccor=3)
+      parameter (maxterm_sccor=6)
 C Max. number of residue types and parameters in expressions for
 C virtual-bond angle bending potentials
       integer maxthetyp,maxthetyp1,maxtheterm,maxtheterm2,maxtheterm3,
index 384c7c5..e293116 100644 (file)
Binary files a/source/cluster/wham/src-M/chainbuild.o and b/source/cluster/wham/src-M/chainbuild.o differ
index 62c02ae..78584bc 100644 (file)
Binary files a/source/cluster/wham/src-M/convert.o and b/source/cluster/wham/src-M/convert.o differ
index 44bdc8d..67ee5fc 100644 (file)
@@ -4517,26 +4517,48 @@ C Set lprn=.true. for debugging
 c      lprn=.true.
 c      write (iout,*) "EBACK_SC_COR",iphi_start,iphi_end,nterm_sccor
       esccor=0.0D0
-      do i=iphi_start,iphi_end
+      do i=itau_start,itau_end
         if (itype(i-2).eq.ntyp1 .or. itype(i-1).eq.ntyp1) cycle
         esccor_ii=0.0D0
-        itori=itype(i-2)
-        itori1=itype(i-1)
+        isccori=isccortyp(itype(i-2))
+        isccori1=isccortyp(itype(i-1))
         phii=phi(i)
+        do intertyp=1,3 !intertyp
+cc Added 09 May 2012 (Adasko)
+cc  Intertyp means interaction type of backbone mainchain correlation: 
+c   1 = SC...Ca...Ca...Ca
+c   2 = Ca...Ca...Ca...SC
+c   3 = SC...Ca...Ca...SCi
         gloci=0.0D0
-        do j=1,nterm_sccor
-          v1ij=v1sccor(j,itori,itori1)
-          v2ij=v2sccor(j,itori,itori1)
-          cosphi=dcos(j*phii)
-          sinphi=dsin(j*phii)
-          esccor=esccor+v1ij*cosphi+v2ij*sinphi
-          gloci=gloci+j*(v2ij*cosphi-v1ij*sinphi)
-        enddo
+        if (((intertyp.eq.3).and.((itype(i-2).eq.10).or.
+     &      (itype(i-1).eq.10).or.(itype(i-2).eq.ntyp1).or.
+     &      (itype(i-1).eq.ntyp1)))
+     &    .or. ((intertyp.eq.1).and.((itype(i-2).eq.10)
+     &     .or.(itype(i-2).eq.ntyp1).or.(itype(i-1).eq.ntyp1)
+     &     .or.(itype(i).eq.ntyp1)))
+     &    .or.((intertyp.eq.2).and.((itype(i-1).eq.10).or.
+     &      (itype(i-1).eq.ntyp1).or.(itype(i-2).eq.ntyp1).or.
+     &      (itype(i-3).eq.ntyp1)))) cycle
+        if ((intertyp.eq.2).and.(i.eq.4).and.(itype(1).eq.ntyp1)) cycle
+        if ((intertyp.eq.1).and.(i.eq.nres).and.(itype(nres).eq.ntyp1))
+     & cycle
+       do j=1,nterm_sccor(isccori,isccori1)
+          v1ij=v1sccor(j,intertyp,isccori,isccori1)
+          v2ij=v2sccor(j,intertyp,isccori,isccori1)
+          cosphi=dcos(j*tauangle(intertyp,i))
+          sinphi=dsin(j*tauangle(intertyp,i))
+           esccor=esccor+v1ij*cosphi+v2ij*sinphi
+c           gloci=gloci+j*(v2ij*cosphi-v1ij*sinphi)
+         enddo
+c      write (iout,*) "EBACK_SC_COR",i,esccor,intertyp
+c      gloc_sc(intertyp,i-3)=gloc_sc(intertyp,i-3)+wsccor*gloci
         if (lprn)
      &  write (iout,'(2(a3,2x,i3,2x),2i3,6f8.3/26x,6f8.3/)')
      &  restyp(itype(i-2)),i-2,restyp(itype(i-1)),i-1,itori,itori1,
-     &  (v1sccor(j,itori,itori1),j=1,6),(v2sccor(j,itori,itori1),j=1,6)
+     &  (v1sccor(j,1,itori,itori1),j=1,6),
+     &  (v2sccor(j,1,itori,itori1),j=1,6)
         gsccor_loc(i-3)=gloci
+       enddo !intertyp
       enddo
       return
       end
index 08503d2..ecbc609 100644 (file)
Binary files a/source/cluster/wham/src-M/energy_p_new.o and b/source/cluster/wham/src-M/energy_p_new.o differ
index ca04f1b..831fa50 100644 (file)
Binary files a/source/cluster/wham/src-M/geomout.o and b/source/cluster/wham/src-M/geomout.o differ
index 501c4da..3342513 100644 (file)
@@ -505,6 +505,9 @@ C Partition local interactions
       call int_bounds(nct-nnt-2,iphi_start,iphi_end) 
       iphi_start=iphi_start+nnt+2
       iphi_end=iphi_end+nnt+2
+      call int_bounds(nres-3,itau_start,itau_end)
+      itau_start=itau_start+3
+      itau_end=itau_end+3
       if (lprint) then 
         write (iout,*) 'Processor:',MyID,
      & ' loc_start',loc_start,' loc_end',loc_end,
@@ -528,6 +531,8 @@ C Partition local interactions
       ithet_end=nres
       iphi_start=nnt+3
       iphi_end=nct
+      itau_start=4
+      itau_end=nres
 #endif
       return
       end 
index 33cc385..db0a124 100644 (file)
Binary files a/source/cluster/wham/src-M/initialize_p.o and b/source/cluster/wham/src-M/initialize_p.o differ
index 4f768e1..7d266de 100644 (file)
@@ -24,6 +24,9 @@
         enddo
         be=0.0D0
         if (i.gt.2) phi(i+1)=beta(i-2,i-1,i,i+1)
+        if (i.gt.2) tauangle(3,i+1)=beta(i+nres-1,i-1,i,i+nres)
+        if (i.gt.2) tauangle(1,i+1)=beta(i-1+nres,i-1,i,i+1)
+        if (i.gt.2) tauangle(2,i+1)=beta(i-2,i-1,i,i+nres)
         omeg(i)=beta(nres+i,i,maxres2,i+1)
         theta(i+1)=alpha(i-1,i,i+1)
         alph(i)=alpha(nres+i,i,maxres2)
index cc8482b..42e6160 100644 (file)
Binary files a/source/cluster/wham/src-M/int_from_cart1.o and b/source/cluster/wham/src-M/int_from_cart1.o differ
index 468a8be..bc87c7f 100644 (file)
Binary files a/source/cluster/wham/src-M/main_clust.o and b/source/cluster/wham/src-M/main_clust.o differ
index 069feec..385a5ee 100644 (file)
@@ -566,27 +566,100 @@ C Martix of D parameters for two dimesional fourier series
       endif
 #endif
 C
-C 5/21/07 (AL) Read coefficients of the backbone-local sidechain-local
-C         correlation energies.
-C
-      read (isccor,*) nterm_sccor
-      do i=1,20
-        do j=1,20
-          read (isccor,'(a)')
-          do k=1,nterm_sccor
-            read (isccor,*) 
-     &        kk,v1sccor(k,i,j),v2sccor(k,i,j)
+C Read of Side-chain backbone correlation parameters
+C Modified 11 May 2012 by Adasko
+CCC
+      read (isccor,*) nsccortyp
+      read (isccor,*) (isccortyp(i),i=1,ntyp)
+      do i=-ntyp,-1
+        isccortyp(i)=-isccortyp(-i)
+      enddo
+      iscprol=isccortyp(20)
+c      write (iout,*) 'ntortyp',ntortyp
+      maxinter=3
+cc maxinter is maximum interaction sites
+      do l=1,maxinter
+      do i=1,nsccortyp
+        do j=1,nsccortyp
+          read (isccor,*)
+     &nterm_sccor(i,j),nlor_sccor(i,j)
+          v0ijsccor=0.0d0
+          v0ijsccor1=0.0d0
+          v0ijsccor2=0.0d0
+          v0ijsccor3=0.0d0
+          si=-1.0d0
+          nterm_sccor(-i,j)=nterm_sccor(i,j)
+          nterm_sccor(-i,-j)=nterm_sccor(i,j)
+          nterm_sccor(i,-j)=nterm_sccor(i,j)
+          do k=1,nterm_sccor(i,j)
+            read (isccor,*) kk,v1sccor(k,l,i,j)
+     &    ,v2sccor(k,l,i,j)
+            if (j.eq.iscprol) then
+             if (i.eq.isccortyp(10)) then
+             v1sccor(k,l,i,-j)=v1sccor(k,l,i,j)
+             v2sccor(k,l,i,-j)=-v2sccor(k,l,i,j)
+             else
+             v1sccor(k,l,i,-j)=v1sccor(k,l,i,j)*0.5d0
+     &                        +v2sccor(k,l,i,j)*dsqrt(0.75d0)
+             v2sccor(k,l,i,-j)=-v2sccor(k,l,i,j)*0.5d0
+     &                        +v1sccor(k,l,i,j)*dsqrt(0.75d0)
+             v1sccor(k,l,-i,-j)=v1sccor(k,l,i,j)
+             v2sccor(k,l,-i,-j)=-v2sccor(k,l,i,j)
+             v1sccor(k,l,-i,j)=v1sccor(k,l,i,-j)
+             v2sccor(k,l,-i,j)=-v2sccor(k,l,i,-j)
+             endif
+            else
+             if (i.eq.isccortyp(10)) then
+             v1sccor(k,l,i,-j)=v1sccor(k,l,i,j)
+             v2sccor(k,l,i,-j)=-v2sccor(k,l,i,j)
+             else
+               if (j.eq.isccortyp(10)) then
+             v1sccor(k,l,-i,j)=v1sccor(k,l,i,j)
+             v2sccor(k,l,-i,j)=-v2sccor(k,l,i,j)
+               else
+             v1sccor(k,l,i,-j)=-v1sccor(k,l,i,j)
+             v2sccor(k,l,i,-j)=-v2sccor(k,l,i,j)
+             v1sccor(k,l,-i,-j)=v1sccor(k,l,i,j)
+             v2sccor(k,l,-i,-j)=-v2sccor(k,l,i,j)
+             v1sccor(k,l,-i,j)=v1sccor(k,l,i,-j)
+             v2sccor(k,l,-i,j)=-v2sccor(k,l,i,-j)
+                endif
+               endif
+            endif
+            v0ijsccor=v0ijsccor+si*v1sccor(k,l,i,j)
+            v0ijsccor1=v0ijsccor+si*v1sccor(k,l,-i,j)
+            v0ijsccor2=v0ijsccor+si*v1sccor(k,l,i,-j)
+            v0ijsccor3=v0ijsccor+si*v1sccor(k,l,-i,-j)
+            si=-si
+           enddo
+          do k=1,nlor_sccor(i,j)
+            read (isccor,*) kk,vlor1sccor(k,i,j),
+     &        vlor2sccor(k,i,j),vlor3sccor(k,i,j)
+            v0ijsccor=v0ijsccor+vlor1sccor(k,i,j)/
+     &(1+vlor3sccor(k,i,j)**2)
           enddo
+          v0sccor(l,i,j)=v0ijsccor
+          v0sccor(l,-i,j)=v0ijsccor1
+          v0sccor(l,i,-j)=v0ijsccor2
+          v0sccor(l,-i,-j)=v0ijsccor3             
+         enddo
         enddo
       enddo
       close (isccor)
       if (lprint) then
         write (iout,'(/a/)') 'Torsional constants of SCCORR:'
-        do i=1,20
-          do j=1,20 
+        do i=1,nsccortyp
+          do j=1,nsccortyp
             write (iout,*) 'ityp',i,' jtyp',j
-            do k=1,nterm_sccor
-              write (iout,'(2(1pe15.5))') v1sccor(k,i,j),v2sccor(k,i,j)
+            write (iout,*) 'Fourier constants'
+            do k=1,nterm_sccor(i,j)
+              write (iout,'(2(1pe15.5))')
+     & v1sccor(k,l,i,j),v2sccor(k,l,i,j)
+            enddo
+            write (iout,*) 'Lorenz constants'
+            do k=1,nlor_sccor(i,j)
+              write (iout,'(3(1pe15.5))')
+     &         vlor1sccor(k,i,j),vlor2sccor(k,i,j),vlor3sccor(k,i,j)
             enddo 
           enddo
         enddo
index f73068d..6c2f0a9 100644 (file)
Binary files a/source/cluster/wham/src-M/parmread.o and b/source/cluster/wham/src-M/parmread.o differ
index 7ec6dbe..a6e7262 100644 (file)
Binary files a/source/cluster/wham/src-M/permut.o and b/source/cluster/wham/src-M/permut.o differ
index 603a561..04cfebc 100644 (file)
Binary files a/source/cluster/wham/src-M/read_coords.o and b/source/cluster/wham/src-M/read_coords.o differ
index ee00297..d9c6902 100644 (file)
Binary files a/source/cluster/wham/src-M/read_ref_str.o and b/source/cluster/wham/src-M/read_ref_str.o differ
index 85a004b..8521df4 100644 (file)
Binary files a/source/cluster/wham/src-M/readpdb.o and b/source/cluster/wham/src-M/readpdb.o differ
index 6f47578..b97ec1c 100644 (file)
Binary files a/source/cluster/wham/src-M/readrtns.o and b/source/cluster/wham/src-M/readrtns.o differ
index 2d1f1c0..ada7a90 100644 (file)
Binary files a/source/cluster/wham/src-M/setup_var.o and b/source/cluster/wham/src-M/setup_var.o differ
index 2289bf1..58f5617 100644 (file)
Binary files a/source/cluster/wham/src-M/wrtclust.o and b/source/cluster/wham/src-M/wrtclust.o differ
index 9716545..38114bc 100644 (file)
Binary files a/source/cluster/wham/src-M/xdrf/libxdrf.a and b/source/cluster/wham/src-M/xdrf/libxdrf.a differ
index 962971a..0672985 100644 (file)
@@ -1,10 +1,10 @@
 C DO NOT EDIT THIS FILE - IT HAS BEEN GENERATED BY COMPINFO.C
-C 0 0 699
+C 0 0 700
       subroutine cinfo
       include 'COMMON.IOUNITS'
       write(iout,*)'++++ Compile info ++++'
-      write(iout,*)'Version 0.0 build 699'
-      write(iout,*)'compiled Mon Oct 29 08:33:30 2012'
+      write(iout,*)'Version 0.0 build 700'
+      write(iout,*)'compiled Tue Oct 30 05:53:04 2012'
       write(iout,*)'compiled by aks255@matrix.chem.cornell.edu'
       write(iout,*)'OS name:    Linux '
       write(iout,*)'OS release: 2.6.34.9-69.fc13.x86_64 '
index c58bae1..93ae4b9 100644 (file)
@@ -4602,13 +4602,13 @@ c   3 = SC...Ca...Ca...SCi
          enddo
 c      write (iout,*) "EBACK_SC_COR",i,v1ij*cosphi+v2ij*sinphi,intertyp,
 c     & nterm_sccor(isccori,isccori1),isccori,isccori1
-        gloc_sc(intertyp,i-3,icg)=gloc_sc(intertyp,i-3,icg)+wsccor*gloci
+c        gloc_sc(intertyp,i-3,icg)=gloc_sc(intertyp,i-3,icg)+wsccor*gloci
         if (lprn)
      &  write (iout,'(2(a3,2x,i3,2x),2i3,6f8.3/26x,6f8.3/)')
      &  restyp(itype(i-2)),i-2,restyp(itype(i-1)),i-1,itori,itori1,
      &  (v1sccor(j,1,itori,itori1),j=1,6)
      &  ,(v2sccor(j,1,itori,itori1),j=1,6)
-        gsccor_loc(i-3)=gloci
+c        gsccor_loc(i-3)=gloci
        enddo !intertyp
       enddo
       return