~ubuntu-branches/debian/sid/lammps/sid

« back to all changes in this revision

Viewing changes to tools/moltemplate/examples/coarse_grained_examples/protein_folding_examples/1bead+chaperone/unfrustrated/moltemplate_files/1beadUnfrustrated.lt

  • Committer: Package Import Robot
  • Author(s): Anton Gladky
  • Date: 2015-04-29 23:44:49 UTC
  • mfrom: (5.1.3 experimental)
  • Revision ID: package-import@ubuntu.com-20150429234449-mbhy9utku6hp6oq8
Tags: 0~20150313.gitfa668e1-1
Upload into unstable.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# This file defines a pair of coarse-grained protein models used in:
 
2
# AI Jewett, A Baumketner and J-E Shea, PNAS, 101 (36), 13192-13197, (2004)
 
3
# (http://www.pnas.org/content/101/36/13192)
 
4
 
 
5
 
 
6
1beadUnfrustrated {
 
7
 
 
8
  # Note: the "unfrustrated" model is kind of funny looking.  (My apologies.)
 
9
 
 
10
  # There are 3 atom types (referred to above as B, L, and N)
 
11
  # Define their masses:
 
12
 
 
13
  write_once("Data Masses") {
 
14
    @atom:B   1.0
 
15
    @atom:L   1.0
 
16
    @atom:N   1.0
 
17
  }
 
18
 
 
19
  # AtomID  MoleculeID  AtomType  Charge   X        Y         Z
 
20
 
 
21
  write("Data Atoms") {
 
22
    $atom:a1  $mol  @atom:L  0.0   -1.3969548 1.7525716 -0.28565118
 
23
    $atom:a2  $mol  @atom:B  0.0   -0.66847917 1.0738923 -0.39651074
 
24
    $atom:a3  $mol  @atom:L  0.0   -0.16610379 1.0893417 0.44519456
 
25
    $atom:a4  $mol  @atom:B  0.0   0.42244126 0.35006314 0.15979926
 
26
    $atom:a5  $mol  @atom:L  0.0   1.2844393 0.55103218 0.64505356
 
27
    $atom:a6  $mol  @atom:N  0.0   1.9703715 0.37775946 -0.05267634
 
28
    $atom:a7  $mol  @atom:N  0.0   2.574926 -0.30399114 0.34330503
 
29
    $atom:a8  $mol  @atom:N  0.0   2.029546 -1.1256647 0.19829852
 
30
    $atom:a9  $mol  @atom:B  0.0   1.0936146 -0.76054936 0.1043528
 
31
    $atom:a10 $mol  @atom:L  0.0   0.74888247 -0.81165991 1.0334863
 
32
    $atom:a11 $mol  @atom:B  0.0   -0.069536333 -0.26815389 0.94356636
 
33
    $atom:a12 $mol  @atom:L  0.0   -0.65671052 -0.522532 1.7113065
 
34
    $atom:a13 $mol  @atom:N  0.0   -1.5278507 -0.10774689 1.4611921
 
35
    $atom:a14 $mol  @atom:L  0.0   -2.1958878 -0.8403146 1.5521738
 
36
    $atom:a15 $mol  @atom:N  0.0   -2.6058074 -0.86553455 0.64397232
 
37
    $atom:a16 $mol  @atom:N  0.0   -1.8447588 -1.1286421 0.042924693
 
38
    $atom:a17 $mol  @atom:N  0.0   -1.5328721 -0.28576244 -0.40564841
 
39
    $atom:a18 $mol  @atom:B  0.0   -0.69593879 0.027664412 0.064884008
 
40
    $atom:a19 $mol  @atom:B  0.0   0.0026517494 -0.66355162 -0.11470678
 
41
    $atom:a20 $mol  @atom:L  0.0   -0.35479285 -1.2282381 -0.86455878
 
42
    $atom:a21 $mol  @atom:L  0.0   -0.60202976 -0.47829758 -1.4411001
 
43
    $atom:a22 $mol  @atom:B  0.0   -0.14616501 0.20157397 -0.87098365
 
44
    $atom:a23 $mol  @atom:B  0.0   0.7755198 -0.14153019 -0.76838748
 
45
    $atom:a24 $mol  @atom:L  0.0   1.2465693 0.19738595 -1.5794731
 
46
    $atom:a25 $mol  @atom:L  0.0   0.77604792 1.0612244 -1.637442
 
47
    $atom:a26 $mol  @atom:B  0.0   0.44801303 1.1110219 -0.6900789
 
48
    $atom:a27 $mol  @atom:L  0.0   1.0908651 1.7386382 -0.24229241
 
49
  }
 
50
 
 
51
  # bond-ID   bond-Type       atom-ID  atom-ID
 
52
 
 
53
  write("Data Bonds") {
 
54
    $bond:b1 @bond:backbone  $atom:a1 $atom:a2
 
55
    $bond:b2 @bond:backbone  $atom:a2 $atom:a3
 
56
    $bond:b3 @bond:backbone  $atom:a3 $atom:a4
 
57
    $bond:b4 @bond:backbone  $atom:a4 $atom:a5
 
58
    $bond:b5 @bond:backbone  $atom:a5 $atom:a6
 
59
    $bond:b6 @bond:backbone  $atom:a6 $atom:a7
 
60
    $bond:b7 @bond:backbone  $atom:a7 $atom:a8
 
61
    $bond:b8 @bond:backbone  $atom:a8 $atom:a9
 
62
    $bond:b9 @bond:backbone  $atom:a9 $atom:a10
 
63
    $bond:b10 @bond:backbone  $atom:a10 $atom:a11
 
64
    $bond:b11 @bond:backbone  $atom:a11 $atom:a12
 
65
    $bond:b12 @bond:backbone  $atom:a12 $atom:a13
 
66
    $bond:b13 @bond:backbone  $atom:a13 $atom:a14
 
67
    $bond:b14 @bond:backbone  $atom:a14 $atom:a15
 
68
    $bond:b15 @bond:backbone  $atom:a15 $atom:a16
 
69
    $bond:b16 @bond:backbone  $atom:a16 $atom:a17
 
70
    $bond:b17 @bond:backbone  $atom:a17 $atom:a18
 
71
    $bond:b18 @bond:backbone  $atom:a18 $atom:a19
 
72
    $bond:b19 @bond:backbone  $atom:a19 $atom:a20
 
73
    $bond:b20 @bond:backbone  $atom:a20 $atom:a21
 
74
    $bond:b21 @bond:backbone  $atom:a21 $atom:a22
 
75
    $bond:b22 @bond:backbone  $atom:a22 $atom:a23
 
76
    $bond:b23 @bond:backbone  $atom:a23 $atom:a24
 
77
    $bond:b24 @bond:backbone  $atom:a24 $atom:a25
 
78
    $bond:b25 @bond:backbone  $atom:a25 $atom:a26
 
79
    $bond:b26 @bond:backbone  $atom:a26 $atom:a27
 
80
  }
 
81
 
 
82
  # (3-body) Angles are specified below
 
83
 
 
84
  # (4-body) Dihedrals must be defined explicitly for every quartet of atoms.
 
85
  #          (These interactions are not determined by atom type.)
 
86
  #
 
87
  #          Note that some quartets of atoms are listed because their
 
88
  #          potentials contain multiple terms in the Fourier expansion.
 
89
  #          (IE. multiple cosines... Be sure to use "-overlay-dihedrals"!)
 
90
  #
 
91
  # dihedral-ID   dihedral-Type    atom-ID  atom-ID  atom-ID  atom-ID
 
92
 
 
93
  write("Data Dihedrals") {
 
94
    $dihedral:d1a @dihedral:beta1  $atom:a1 $atom:a2 $atom:a3 $atom:a4
 
95
    $dihedral:d1b @dihedral:beta2  $atom:a1 $atom:a2 $atom:a3 $atom:a4
 
96
    $dihedral:d2a @dihedral:beta1  $atom:a2 $atom:a3 $atom:a4 $atom:a5
 
97
    $dihedral:d2b @dihedral:beta2  $atom:a2 $atom:a3 $atom:a4 $atom:a5
 
98
    $dihedral:d3a @dihedral:beta1  $atom:a3 $atom:a4 $atom:a5 $atom:a6
 
99
    $dihedral:d3b @dihedral:beta2  $atom:a3 $atom:a4 $atom:a5 $atom:a6
 
100
    $dihedral:d4a @dihedral:beta1  $atom:a4 $atom:a5 $atom:a6 $atom:a7
 
101
    $dihedral:d4b @dihedral:beta2  $atom:a4 $atom:a5 $atom:a6 $atom:a7
 
102
    $dihedral:d5  @dihedral:turn1  $atom:a5 $atom:a6 $atom:a7 $atom:a8
 
103
    $dihedral:d6  @dihedral:turn2  $atom:a6 $atom:a7 $atom:a8 $atom:a9
 
104
    $dihedral:d7  @dihedral:turn3  $atom:a7 $atom:a8 $atom:a9 $atom:a10
 
105
    $dihedral:d8a @dihedral:beta1  $atom:a8 $atom:a9 $atom:a10 $atom:a11
 
106
    $dihedral:d8b @dihedral:beta2  $atom:a8 $atom:a9 $atom:a10 $atom:a11
 
107
    $dihedral:d9a @dihedral:beta1  $atom:a9 $atom:a10 $atom:a11 $atom:a12
 
108
    $dihedral:d9b @dihedral:beta2  $atom:a9 $atom:a10 $atom:a11 $atom:a12
 
109
    $dihedral:d10a @dihedral:beta1  $atom:a10 $atom:a11 $atom:a12 $atom:a13
 
110
    $dihedral:d10b @dihedral:beta2  $atom:a10 $atom:a11 $atom:a12 $atom:a13
 
111
    $dihedral:d11a @dihedral:beta1  $atom:a11 $atom:a12 $atom:a13 $atom:a14
 
112
    $dihedral:d11b @dihedral:beta2  $atom:a11 $atom:a12 $atom:a13 $atom:a14
 
113
    $dihedral:d12a @dihedral:beta1  $atom:a12 $atom:a13 $atom:a14 $atom:a15
 
114
    $dihedral:d12b @dihedral:beta2  $atom:a12 $atom:a13 $atom:a14 $atom:a15
 
115
    $dihedral:d13  @dihedral:turn4  $atom:a13 $atom:a14 $atom:a15 $atom:a16
 
116
    $dihedral:d14  @dihedral:turn5  $atom:a14 $atom:a15 $atom:a16 $atom:a17
 
117
    $dihedral:d15a @dihedral:alpha1  $atom:a15 $atom:a16 $atom:a17 $atom:a18
 
118
    $dihedral:d15b @dihedral:alpha2  $atom:a15 $atom:a16 $atom:a17 $atom:a18
 
119
    $dihedral:d16a @dihedral:alpha1  $atom:a16 $atom:a17 $atom:a18 $atom:a19
 
120
    $dihedral:d16b @dihedral:alpha2  $atom:a16 $atom:a17 $atom:a18 $atom:a19
 
121
    $dihedral:d17a @dihedral:alpha1  $atom:a17 $atom:a18 $atom:a19 $atom:a20
 
122
    $dihedral:d17b @dihedral:alpha2  $atom:a17 $atom:a18 $atom:a19 $atom:a20
 
123
    $dihedral:d18a @dihedral:alpha1  $atom:a18 $atom:a19 $atom:a20 $atom:a21
 
124
    $dihedral:d18b @dihedral:alpha2  $atom:a18 $atom:a19 $atom:a20 $atom:a21
 
125
    $dihedral:d19a @dihedral:alpha1  $atom:a19 $atom:a20 $atom:a21 $atom:a22
 
126
    $dihedral:d19b @dihedral:alpha2  $atom:a19 $atom:a20 $atom:a21 $atom:a22
 
127
    $dihedral:d20a @dihedral:alpha1  $atom:a20 $atom:a21 $atom:a22 $atom:a23
 
128
    $dihedral:d20b @dihedral:alpha2  $atom:a20 $atom:a21 $atom:a22 $atom:a23
 
129
    $dihedral:d21a @dihedral:alpha1  $atom:a21 $atom:a22 $atom:a23 $atom:a24
 
130
    $dihedral:d21b @dihedral:alpha2  $atom:a21 $atom:a22 $atom:a23 $atom:a24
 
131
    $dihedral:d22a @dihedral:alpha1  $atom:a22 $atom:a23 $atom:a24 $atom:a25
 
132
    $dihedral:d22b @dihedral:alpha2  $atom:a22 $atom:a23 $atom:a24 $atom:a25
 
133
    $dihedral:d23a @dihedral:alpha1  $atom:a23 $atom:a24 $atom:a25 $atom:a26
 
134
    $dihedral:d23b @dihedral:alpha2  $atom:a23 $atom:a24 $atom:a25 $atom:a26
 
135
    $dihedral:d24a @dihedral:alpha1  $atom:a24 $atom:a25 $atom:a26 $atom:a27
 
136
    $dihedral:d24b @dihedral:alpha2  $atom:a24 $atom:a25 $atom:a26 $atom:a27
 
137
  }
 
138
 
 
139
  # All consecutively bonded triplets of atoms same 3-body bond-angle 
 
140
  # interaction parameters.  Of coarse, we could specify them all explicitly
 
141
  # (as we did for the dihedrals above), but I wanted to show how to specify
 
142
  # angles by atom type instead.  (You can do this for dihedrals & impropers
 
143
  # also.)
 
144
 
 
145
  #     angle-Type     atom-Type  atom-Type  atom-Type   bond-Type bond-Type
 
146
 
 
147
  write_once("Data Angles By Type") {
 
148
    @angle:backbone @atom:* @atom:* @atom:*  @bond:* @bond:*
 
149
  }
 
150
 
 
151
  # (The "*" is a wildcard character.  I use "*" to denote any atom-type or
 
152
  #  bond-type which is defined within the current namespace: 1beadUnfrustrated)
 
153
 
 
154
 
 
155
  # 2-body (non-bonded) interactions:
 
156
  #
 
157
  #   Uij(r) = 4*eps_ij * (K*(sig_ij/r)^12 + L*(sig_ij/r)^6)
 
158
  #
 
159
  #              i       j           pairstylename             eps      sig K L
 
160
  #
 
161
  write_once("In Settings") {
 
162
    pair_coeff @atom:B @atom:B lj/charmm/coul/charmm/inter 1.0          1.0 1 -1
 
163
    pair_coeff @atom:B @atom:L lj/charmm/coul/charmm/inter 0.5833333333 1.0 1 0
 
164
    pair_coeff @atom:B @atom:N lj/charmm/coul/charmm/inter 0.6666666667 1.0 1 0
 
165
    pair_coeff @atom:L @atom:L lj/charmm/coul/charmm/inter 0.1666666667 1.0 1 1
 
166
    pair_coeff @atom:L @atom:N lj/charmm/coul/charmm/inter 0.25         1.0 1 0
 
167
    pair_coeff @atom:N @atom:N lj/charmm/coul/charmm/inter 0.3333333333 1.0 1 0
 
168
  }
 
169
 
 
170
 
 
171
  # 2-body (bonded) interactions:
 
172
  #
 
173
  #   Ubond(r) = (k/2)*(r-0)^2
 
174
  #
 
175
  #   The corresponding command is:
 
176
  #
 
177
  #                  bond-Type   bondstylename     k    r0
 
178
 
 
179
  write_once("In Settings") {
 
180
    bond_coeff     @bond:backbone   harmonic    100.0  1.0
 
181
  }
 
182
 
 
183
  # 3-body interactions in this example are listed by atomType and bondType
 
184
  # The atomIDs involved are determined automatically.  The forumula used is:
 
185
  #
 
186
  # Uangle(theta) = (k/2)*(theta-theta0)^2   
 
187
  #     (k in kcal/mol/rad^2, theta0 in degrees)
 
188
  #
 
189
  #                 angle-Type   anglestylename    k         theta0
 
190
 
 
191
  write_once("In Settings") {
 
192
    angle_coeff    @angle:backbone  harmonic   13.3333333333  105.0
 
193
  }
 
194
 
 
195
  # 4-body interactions in this example are listed by atomType and bondType
 
196
  # The atomIDs involved are determined automatically.  The forumula used is:
 
197
  #
 
198
  # Udihedral(phi) = K * (1 + cos(n*phi - d))
 
199
  #
 
200
  #     The d parameter is in degrees, K is in kcal/mol/rad^2.
 
201
  #
 
202
  # The corresponding command is:
 
203
  #
 
204
  # dihedral_coeff dihedralType   dihedralstylename  K  n   d   w
 
205
  #    ("w" is the weight for 1-4 pair interactions, which we set to 0)
 
206
 
 
207
  # NOTE: Currently, dihedral_coeff charmm does not allow non-integer d 
 
208
  #       parameters.  I'm hoping this will be fixed eventually.
 
209
 
 
210
  write_once("In Settings") {
 
211
    # Correct version:
 
212
    #dihedral_coeff @dihedral:alpha1  charmm  -1.5   1  57.2957795   0.0
 
213
    # Replacing with
 
214
    dihedral_coeff @dihedral:alpha1  charmm  -1.5    1  57           0.0
 
215
    # Correct version:
 
216
    #dihedral_coeff @dihedral:alpha2  charmm   0.375 2  114.591559   0.0
 
217
    # Replacing with
 
218
    dihedral_coeff @dihedral:alpha2  charmm   0.375  2  115          0.0
 
219
    dihedral_coeff @dihedral:beta1   charmm  -1.5    1  180          0.0
 
220
    dihedral_coeff @dihedral:beta2   charmm   0.375  2  360          0.0
 
221
    dihedral_coeff @dihedral:turn1   charmm  -3.0    1   90          0.0
 
222
    # Correct version:
 
223
    # dihedral_coeff @dihedral:turn2   charmm  -3.0  1  11.4591559   0.0
 
224
    # Replacing with
 
225
    dihedral_coeff @dihedral:turn2   charmm  -3.0    1  11           0.0
 
226
    dihedral_coeff @dihedral:turn3   charmm  -3.0    1 -90           0.0
 
227
    dihedral_coeff @dihedral:turn4   charmm   0.0    1   0           0.0
 
228
    dihedral_coeff @dihedral:turn5   charmm   0.0    1   0           0.0
 
229
  }
 
230
 
 
231
  write_once("In Settings") {
 
232
    # Optional: define the atoms in the "proteins" group
 
233
    group proteins type @atom:B
 
234
    group proteins type @atom:L
 
235
    group proteins type @atom:N
 
236
  }
 
237
 
 
238
  # LAMMPS has many available force field styles (and atom styles). 
 
239
  # Here, we pick the ones which work well for this molecular model:
 
240
 
 
241
  write_once("In Init") {
 
242
    # --- Default options for the "1BeadUnfrustrated" protein model ---
 
243
    # ---             (These can be overridden later.)              ---
 
244
    units           lj
 
245
    atom_style      full
 
246
    bond_style      hybrid harmonic
 
247
    angle_style     hybrid harmonic
 
248
    dihedral_style  hybrid charmm
 
249
    pair_style      hybrid lj/charmm/coul/charmm/inter es4k4l maxmax 3.5 4.0
 
250
    pair_modify     mix arithmetic
 
251
    special_bonds   lj 0.0 0.0 1.0   #(turn on "1-4" interactions)
 
252
  }
 
253
 
 
254
} # 1beadUnfrustrated
 
255