1      subroutine argos_diana_hbond_init(snam,ibnd,ihbnd)
2c
3c $Id: argos_diana_hbond.F
4c
5      implicit none
6c
7#include "argos_diana_common.fh"
8#include "argos_diana_params.fh"
9c
10      character*16 snam(msa)
11      integer ibnd(msb,2),ihbnd(msa)
12c
13      integer i,j,k
14c
15      if(np.gt.1)
16     + call md_abort('h-bond analysis on single processor only',0)
17c
18      do 1 i=1,nsa
19      ihbnd(i)=0
20    1 continue
21c
22      do 2 j=1,2
23      do 3 i=1,msb
24      if(snam(ibnd(i,j))(6:7).eq.' O'.or.
25     + snam(ibnd(i,j))(6:7).eq.' N'.or.
26     + snam(ibnd(i,j))(6:7).eq.' S') ihbnd(ibnd(i,j))=-1
27    3 continue
28    2 continue
29c
30      do 4 j=1,2
31      k=2
32      if(j.eq.2) k=1
33      do 5 i=1,msb
34      if(ihbnd(ibnd(i,k)).eq.-1) then
35      if(snam(ibnd(i,j))(6:7).eq.' H'.or.
36     + snam(ibnd(i,j))(6:7).eq.'2H'.or.
37     + snam(ibnd(i,j))(6:7).eq.'3H'.or.
38     + snam(ibnd(i,j))(6:7).eq.'4H'.or.
39     + snam(ibnd(i,j))(6:7).eq.'5H'.or.
40     + snam(ibnd(i,j))(6:7).eq.'6H'.or.
41     + snam(ibnd(i,j))(6:7).eq.'7H'.or.
42     + snam(ibnd(i,j))(6:7).eq.'8H'.or.
43     + snam(ibnd(i,j))(6:7).eq.'9H') ihbnd(ibnd(i,j))=ibnd(i,k)
44      endif
45    5 continue
46    4 continue
47c
48      do 6 i=1,nwa
49      ihbndw(i)=0
50    6 continue
51c
52      do 7 j=1,2
53      do 8 i=1,mwb
54      if(wnam(ibndw(i,j))(6:7).eq.' O'.or.
55     + wnam(ibndw(i,j))(6:7).eq.' N'.or.
56     + wnam(ibndw(i,j))(6:7).eq.' S') ihbndw(ibnd(i,j))=-1
57    8 continue
58    7 continue
59c
60      do 9 j=1,2
61      k=2
62      if(j.eq.2) k=1
63      do 10 i=1,mwb
64      if(ihbndw(ibndw(i,k)).eq.-1) then
65      if(wnam(ibndw(i,j))(6:7).eq.' H'.or.
66     + wnam(ibndw(i,j))(6:7).eq.'2H'.or.
67     + wnam(ibndw(i,j))(6:7).eq.'3H'.or.
68     + wnam(ibndw(i,j))(6:7).eq.'4H'.or.
69     + wnam(ibndw(i,j))(6:7).eq.'5H'.or.
70     + wnam(ibndw(i,j))(6:7).eq.'6H'.or.
71     + wnam(ibndw(i,j))(6:7).eq.'7H'.or.
72     + wnam(ibndw(i,j))(6:7).eq.'8H'.or.
73     + wnam(ibndw(i,j))(6:7).eq.'9H') ihbndw(ibndw(i,j))=ibndw(i,k)
74      endif
75   10 continue
76    9 continue
77c
78      return
79      end
80