From 9bb39cbefdf28fb4a9bd465a24632eecef10410d Mon Sep 17 00:00:00 2001 From: Adam Liwo Date: Sun, 17 Feb 2013 23:47:02 -0500 Subject: [PATCH 1/1] refsys separated from readpdb in src_CDA_DiL --- source/unres/src_CSA/CMakeLists.txt | 1 + source/unres/src_CSA_DiL/CMakeLists.txt | 1 + source/unres/src_CSA_DiL/readpdb.F | 61 ------------------------------- source/unres/src_MIN/CMakeLists.txt | 1 + 4 files changed, 3 insertions(+), 61 deletions(-) diff --git a/source/unres/src_CSA/CMakeLists.txt b/source/unres/src_CSA/CMakeLists.txt index c48ae1e..89cb6a1 100644 --- a/source/unres/src_CSA/CMakeLists.txt +++ b/source/unres/src_CSA/CMakeLists.txt @@ -52,6 +52,7 @@ set(UNRES_CSA_SRC0 ran.f readpdb.F readrtns_csa.F + refsys.f rescode.f rmdd.f rmsd.F diff --git a/source/unres/src_CSA_DiL/CMakeLists.txt b/source/unres/src_CSA_DiL/CMakeLists.txt index 66451c1..04fb4bb 100644 --- a/source/unres/src_CSA_DiL/CMakeLists.txt +++ b/source/unres/src_CSA_DiL/CMakeLists.txt @@ -52,6 +52,7 @@ set(UNRES_CSA_DiL_SRC0 ran.f readpdb.F readrtns_csa.F + refsys.f rescode.f rmdd.f rmsd.F diff --git a/source/unres/src_CSA_DiL/readpdb.F b/source/unres/src_CSA_DiL/readpdb.F index 7810b24..eb4ba3f 100644 --- a/source/unres/src_CSA_DiL/readpdb.F +++ b/source/unres/src_CSA_DiL/readpdb.F @@ -426,64 +426,3 @@ c print *,vbld(i+1),vbld(i+1+nres) enddo return end -C----------------------------------------------------------------------------- - subroutine refsys(i2,i3,i4,e1,e2,e3,fail) - implicit real*8 (a-h,o-z) - include 'DIMENSIONS' -c this subroutine calculates unity vectors of a local reference system -c defined by atoms (i2), (i3), and (i4). the x axis is the axis from -c atom (i3) to atom (i2), and the xy plane is the plane defined by atoms -c (i2), (i3), and (i4). z axis is directed according to the sign of the -c vector product (i3)-(i2) and (i3)-(i4). sets fail to .true. if atoms -c (i2) and (i3) or (i3) and (i4) coincide or atoms (i2), (i3), and (i4) -c form a linear fragment. returns vectors e1, e2, and e3. - logical fail - double precision e1(3),e2(3),e3(3) - double precision u(3),z(3) - include "COMMON.CHAIN" - data coinc /1.0d-13/,align /1.0d-13/ - fail=.false. - s1=0.0d0 - s2=0.0d0 - do 1 i=1,3 - zi=c(i,i2)-c(i,i3) - ui=c(i,i4)-c(i,i3) - s1=s1+zi*zi - s2=s2+ui*ui - z(i)=zi - 1 u(i)=ui - s1=sqrt(s1) - s2=sqrt(s2) - if (s1.gt.coinc) goto 2 - write (iout,1000) i2,i3,i1 - fail=.true. - return - 2 if (s2.gt.coinc) goto 4 - write(iout,1000) i3,i4,i1 - fail=.true. - return - 4 s1=1.0/s1 - s2=1.0/s2 - v1=z(2)*u(3)-z(3)*u(2) - v2=z(3)*u(1)-z(1)*u(3) - v3=z(1)*u(2)-z(2)*u(1) - anorm=sqrt(v1*v1+v2*v2+v3*v3) - if (anorm.gt.align) goto 6 - write (iout,1010) i2,i3,i4,i1 - fail=.true. - return - 6 anorm=1.0/anorm - e3(1)=v1*anorm - e3(2)=v2*anorm - e3(3)=v3*anorm - e1(1)=z(1)*s1 - e1(2)=z(2)*s1 - e1(3)=z(3)*s1 - e2(1)=e1(3)*e3(2)-e1(2)*e3(3) - e2(2)=e1(1)*e3(3)-e1(3)*e3(1) - e2(3)=e1(2)*e3(1)-e1(1)*e3(2) - 1000 format (/1x,' * * * error - atoms',i4,' and',i4,' coincide.') - 1010 format (/1x,' * * * error - atoms',2(i4,2h, ),i4,' form a linear') - return - end - diff --git a/source/unres/src_MIN/CMakeLists.txt b/source/unres/src_MIN/CMakeLists.txt index 37a2683..0ebc88f 100644 --- a/source/unres/src_MIN/CMakeLists.txt +++ b/source/unres/src_MIN/CMakeLists.txt @@ -33,6 +33,7 @@ set(UNRES_MIN_SRC0 printmat.f randgens.f readrtns_min.F + refsys.f rescode.f rmdd.f sc_move.F -- 1.7.9.5