source: zimmer.f@ 6650a56

Last change on this file since 6650a56 was bd2278d, checked in by baerbaer <baerbaer@…>, 16 years ago

Reformatting comments and continuation marks.

Fortran 90 and higher use ! to mark comments no matter where they are in the
code. The only valid continuation marker is &.
I also added the SMMP.kdevelop.filelist to the repository to make it easier
to use kdevelop.

git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/smmp/trunk@12 26dc1dd8-5c4e-0410-9ffe-d298b4865968

  • Property mode set to 100644
File size: 3.4 KB
Line 
1!**************************************************************
2!
3! This file contains the subroutines: zimmer
4!
5! Copyright 2003-2005 Frank Eisenmenger, U.H.E. Hansmann,
6! Shura Hayryan, Chin-Ku
7! Copyright 2007 Frank Eisenmenger, U.H.E. Hansmann,
8! Jan H. Meinke, Sandipan Mohanty
9!
10! CALLS: none
11!
12! **************************************************************
13
14
15 subroutine zimmer(nresi)
16
17! Calculates the Zimmerman-code of a configuration (Zimmerman et. al.
18! Macromolecules, vol. 10 (1977) 1-9.)
19!
20! Note the difference in Notations:
21! SMMP: Zimmerman, et.al.:
22! A A
23! B B
24! C C
25! D D
26! E E
27! F F
28! G G
29! H H
30! a A*
31! b B*
32! c C*
33! d D*
34! e E*
35! f F*
36! g G*
37! h H*
38!
39 include 'INCL.H'
40!f2py intent(in) nresi
41 character*1 zim
42
43
44 do j=1,nresi
45 write(zimm(j:j),'(a1)') '-'
46 end do
47
48 do i=1,nvr
49 iv=idvr(i)
50 if(nmvr(iv).eq.'phi') then
51 xphi = vlvr(iv)*crd
52 xpsi = vlvr(idvr(i+1))*crd
53
54 if(xphi.le.-110.0d0) then
55 if(xpsi.le.-140.0d0.or.xpsi.gt.110.0d0) zim='E'
56 if(xpsi.le.-90.0d0.and.xpsi.gt.-140.0d0) zim='H'
57 if(xpsi.le.-40.0d0.and.xpsi.gt.-90.0d0) zim='G'
58 if(xpsi.le.20.0d0.and.xpsi.gt.-40.0d0) zim='B'
59 if(xpsi.le.110.0d0.and.xpsi.gt.20.0d0) zim='D'
60 else if(xphi.le.-40.0d0) then
61 if(xpsi.le.-140.0d0.or.xpsi.gt.130.0d0) zim='F'
62 if(xpsi.le.-90.0d0.and.xpsi.gt.-140.0d0) zim='H'
63 if(xpsi.le.-10.0d0.and.xpsi.gt.-90.0d0) zim='A'
64 if(xpsi.le.50.0d0.and.xpsi.gt.-10.0d0) zim='B'
65 if(xpsi.le.130.0d0.and.xpsi.gt.50.0d0) zim='C'
66 else if(xphi.le.0.0d0) then
67 zim='H'
68 else if(xphi.le.40.0d0) then
69 zim='h'
70 else if(xphi.le.110.0d0) then
71 if(xpsi.le.-130.0d0.or.xpsi.gt.140.0d0) zim='f'
72 if(xpsi.le.140.0d0.and.xpsi.gt.90.0d0) zim='h'
73 if(xpsi.le.90.0d0.and.xpsi.gt.10.0d0) zim='a'
74 if(xpsi.le.10.0d0.and.xpsi.gt.-50.0d0) zim='b'
75 if(xpsi.le.-50.0d0.and.xpsi.gt.-130.0d0) zim='c'
76 else
77 if(xpsi.le.-110.0d0.or.xpsi.gt.140.0d0) zim='e'
78 if(xpsi.le.140.0d0.and.xpsi.gt.90.0d0) zim='h'
79 if(xpsi.le.90.0d0.and.xpsi.gt.40.0d0) zim='g'
80 if(xpsi.le.40.0d0.and.xpsi.gt.-20.0d0) zim='b'
81 if(xpsi.le.-20.0d0.and.xpsi.gt.-110.0d0) zim='d'
82 end if
83 nres=nursvr(iv)
84 write(zimm(nres:nres),'(a1)') zim
85 end if
86 end do
87
88 return
89 end
90
Note: See TracBrowser for help on using the repository browser.