From: Adam Kazimierz Sieradzan Date: Tue, 30 Oct 2012 11:16:58 +0000 (-0400) Subject: Wstawnieni SCCOR dla clustrowania. Nie wiadomo czy jest czytana waga X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?p=unres.git;a=commitdiff_plain;h=6ad9fa7a568f7405c3f94717544d6ac4c732d86e Wstawnieni SCCOR dla clustrowania. Nie wiadomo czy jest czytana waga --- diff --git a/bin/cluster/unres_clustMD-mult_MPICH-GAB.exe b/bin/cluster/unres_clustMD-mult_MPICH-GAB.exe index da95526..0ff0820 100755 Binary files a/bin/cluster/unres_clustMD-mult_MPICH-GAB.exe and b/bin/cluster/unres_clustMD-mult_MPICH-GAB.exe differ diff --git a/bin/wham_multparm-D-sccor-oldparm b/bin/wham_multparm-D-sccor-oldparm index e985838..2e94320 100755 Binary files a/bin/wham_multparm-D-sccor-oldparm and b/bin/wham_multparm-D-sccor-oldparm differ diff --git a/source/cluster/wham/src-M/COMMON.LOCAL b/source/cluster/wham/src-M/COMMON.LOCAL index 7d8690a..5a00bb2 100644 --- a/source/cluster/wham/src-M/COMMON.LOCAL +++ b/source/cluster/wham/src-M/COMMON.LOCAL @@ -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) diff --git a/source/cluster/wham/src-M/COMMON.SCCOR b/source/cluster/wham/src-M/COMMON.SCCOR index 5217de7..c38cccb 100644 --- a/source/cluster/wham/src-M/COMMON.SCCOR +++ b/source/cluster/wham/src-M/COMMON.SCCOR @@ -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) diff --git a/source/cluster/wham/src-M/COMMON.VAR b/source/cluster/wham/src-M/COMMON.VAR index ad412d0..326d6ec 100644 --- a/source/cluster/wham/src-M/COMMON.VAR +++ b/source/cluster/wham/src-M/COMMON.VAR @@ -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), diff --git a/source/cluster/wham/src-M/DIMENSIONS b/source/cluster/wham/src-M/DIMENSIONS index e7a002b..1bcdf79 100644 --- a/source/cluster/wham/src-M/DIMENSIONS +++ b/source/cluster/wham/src-M/DIMENSIONS @@ -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, diff --git a/source/cluster/wham/src-M/chainbuild.o b/source/cluster/wham/src-M/chainbuild.o index 384c7c5..e293116 100644 Binary files a/source/cluster/wham/src-M/chainbuild.o and b/source/cluster/wham/src-M/chainbuild.o differ diff --git a/source/cluster/wham/src-M/convert.o b/source/cluster/wham/src-M/convert.o index 62c02ae..78584bc 100644 Binary files a/source/cluster/wham/src-M/convert.o and b/source/cluster/wham/src-M/convert.o differ diff --git a/source/cluster/wham/src-M/energy_p_new.F b/source/cluster/wham/src-M/energy_p_new.F index 44bdc8d..67ee5fc 100644 --- a/source/cluster/wham/src-M/energy_p_new.F +++ b/source/cluster/wham/src-M/energy_p_new.F @@ -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 diff --git a/source/cluster/wham/src-M/energy_p_new.o b/source/cluster/wham/src-M/energy_p_new.o index 08503d2..ecbc609 100644 Binary files a/source/cluster/wham/src-M/energy_p_new.o and b/source/cluster/wham/src-M/energy_p_new.o differ diff --git a/source/cluster/wham/src-M/geomout.o b/source/cluster/wham/src-M/geomout.o index ca04f1b..831fa50 100644 Binary files a/source/cluster/wham/src-M/geomout.o and b/source/cluster/wham/src-M/geomout.o differ diff --git a/source/cluster/wham/src-M/initialize_p.F b/source/cluster/wham/src-M/initialize_p.F index 501c4da..3342513 100644 --- a/source/cluster/wham/src-M/initialize_p.F +++ b/source/cluster/wham/src-M/initialize_p.F @@ -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 diff --git a/source/cluster/wham/src-M/initialize_p.o b/source/cluster/wham/src-M/initialize_p.o index 33cc385..db0a124 100644 Binary files a/source/cluster/wham/src-M/initialize_p.o and b/source/cluster/wham/src-M/initialize_p.o differ diff --git a/source/cluster/wham/src-M/int_from_cart1.f b/source/cluster/wham/src-M/int_from_cart1.f index 4f768e1..7d266de 100644 --- a/source/cluster/wham/src-M/int_from_cart1.f +++ b/source/cluster/wham/src-M/int_from_cart1.f @@ -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) diff --git a/source/cluster/wham/src-M/int_from_cart1.o b/source/cluster/wham/src-M/int_from_cart1.o index cc8482b..42e6160 100644 Binary files a/source/cluster/wham/src-M/int_from_cart1.o and b/source/cluster/wham/src-M/int_from_cart1.o differ diff --git a/source/cluster/wham/src-M/main_clust.o b/source/cluster/wham/src-M/main_clust.o index 468a8be..bc87c7f 100644 Binary files a/source/cluster/wham/src-M/main_clust.o and b/source/cluster/wham/src-M/main_clust.o differ diff --git a/source/cluster/wham/src-M/parmread.F b/source/cluster/wham/src-M/parmread.F index 069feec..385a5ee 100644 --- a/source/cluster/wham/src-M/parmread.F +++ b/source/cluster/wham/src-M/parmread.F @@ -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 diff --git a/source/cluster/wham/src-M/parmread.o b/source/cluster/wham/src-M/parmread.o index f73068d..6c2f0a9 100644 Binary files a/source/cluster/wham/src-M/parmread.o and b/source/cluster/wham/src-M/parmread.o differ diff --git a/source/cluster/wham/src-M/permut.o b/source/cluster/wham/src-M/permut.o index 7ec6dbe..a6e7262 100644 Binary files a/source/cluster/wham/src-M/permut.o and b/source/cluster/wham/src-M/permut.o differ diff --git a/source/cluster/wham/src-M/read_coords.o b/source/cluster/wham/src-M/read_coords.o index 603a561..04cfebc 100644 Binary files a/source/cluster/wham/src-M/read_coords.o and b/source/cluster/wham/src-M/read_coords.o differ diff --git a/source/cluster/wham/src-M/read_ref_str.o b/source/cluster/wham/src-M/read_ref_str.o index ee00297..d9c6902 100644 Binary files a/source/cluster/wham/src-M/read_ref_str.o and b/source/cluster/wham/src-M/read_ref_str.o differ diff --git a/source/cluster/wham/src-M/readpdb.o b/source/cluster/wham/src-M/readpdb.o index 85a004b..8521df4 100644 Binary files a/source/cluster/wham/src-M/readpdb.o and b/source/cluster/wham/src-M/readpdb.o differ diff --git a/source/cluster/wham/src-M/readrtns.o b/source/cluster/wham/src-M/readrtns.o index 6f47578..b97ec1c 100644 Binary files a/source/cluster/wham/src-M/readrtns.o and b/source/cluster/wham/src-M/readrtns.o differ diff --git a/source/cluster/wham/src-M/setup_var.o b/source/cluster/wham/src-M/setup_var.o index 2d1f1c0..ada7a90 100644 Binary files a/source/cluster/wham/src-M/setup_var.o and b/source/cluster/wham/src-M/setup_var.o differ diff --git a/source/cluster/wham/src-M/wrtclust.o b/source/cluster/wham/src-M/wrtclust.o index 2289bf1..58f5617 100644 Binary files a/source/cluster/wham/src-M/wrtclust.o and b/source/cluster/wham/src-M/wrtclust.o differ diff --git a/source/cluster/wham/src-M/xdrf/libxdrf.a b/source/cluster/wham/src-M/xdrf/libxdrf.a index 9716545..38114bc 100644 Binary files a/source/cluster/wham/src-M/xdrf/libxdrf.a and b/source/cluster/wham/src-M/xdrf/libxdrf.a differ diff --git a/source/wham/src-M/cinfo.f b/source/wham/src-M/cinfo.f index 962971a..0672985 100644 --- a/source/wham/src-M/cinfo.f +++ b/source/wham/src-M/cinfo.f @@ -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 ' diff --git a/source/wham/src-M/energy_p_new.F b/source/wham/src-M/energy_p_new.F index c58bae1..93ae4b9 100644 --- a/source/wham/src-M/energy_p_new.F +++ b/source/wham/src-M/energy_p_new.F @@ -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