@@ -5,37 +5,48 @@ Polymer in water
5
5
6
6
.. container :: hatnote
7
7
8
- Solvating a small molecule in water before stretching it
8
+ Solvating and stretching a small polymer molecule
9
9
10
10
.. figure :: figures/stretchingpolymer/video-PEG-dark.webp
11
- :alt: peg molecule in water
11
+ :alt: Movie of a peg polymer molecule in water as simulated with GROMACS
12
12
:height: 250
13
13
:align: right
14
14
:class: only-dark
15
15
16
16
.. figure :: figures/stretchingpolymer/video-PEG-light.webp
17
- :alt: peg molecule in water
17
+ :alt: Movie of a peg polymer molecule in water as simulated with GROMACS
18
18
:height: 250
19
19
:align: right
20
20
:class: only-light
21
21
22
22
.. container :: justify
23
23
24
- The goal of this tutorial is to use GROMACS and
25
- create a small hydrophilic polymer (PEG -
26
- PolyEthylene Glycol) in a reservoir of water.
27
- An all-atom description is used, therefore all species considered here
28
- are made of charged atoms connected by bond constraints.
24
+ The goal of this tutorial is to use GROMACS and solvate a small
25
+ hydrophilic polymer (PEG - PolyEthylene Glycol) in a reservoir of water.
29
26
30
- Once the system is created, a constant stretching force will be applied to both
31
- ends of the polymer, and its length will be measured with time.
27
+ .. container :: justify
28
+
29
+ An all-atom description is used for both PEG (GROMOS 54A7 force
30
+ field :cite: `schmid2011definition `) and water
31
+ (SPC flexible model :cite: `wu2006flexible `) and the long
32
+ range Coulomb interactions are solved using the PPPM solver :cite: `luty1996calculating `.
33
+ Once the water reservoir is properly
34
+ equilibrated at the desired temperature and pressure, the polymer molecule
35
+ is added and a constant stretching force is applied to both
36
+ ends of the polymer. The evolution of the polymer length
37
+ is measured as a function of time.
38
+
39
+ .. container :: justify
32
40
33
- This tutorial was inspired by a very nice |Liese2017 | by Liese and coworkers, in which
34
- they compare MD simulations of a PEG molecule in water with force spectroscopy experiments.
41
+ This tutorial was inspired by a |Liese2017 | by Liese and coworkers, in which
42
+ molecular dynamics simulations are
43
+ compared with force spectroscopy experiments :cite: `liese2017hydration `.
35
44
36
45
.. |Liese2017 | raw :: html
37
46
38
- <a href="https://doi.org/10.1021/acsnano.6b07071" target="_blank">publication</a>
47
+ <a href="https://doi.org/10.1021/acsnano.6b07071" target="_blank">publication</a>
48
+
49
+ .. include :: ../non-tutorials/recommand-salt.rst
39
50
40
51
.. include :: ../contact/needhelp.rst
41
52
@@ -48,13 +59,7 @@ PEG molecule in vacuum
48
59
49
60
.. |download_H2O.data | raw :: html
50
61
51
- <a href="../../../../inputs/polymerstretching/free-peg-in-vacuum/peg.gro" target="_blank">here</a>
52
-
53
- .. container :: justify
54
-
55
- Opening *peg.gro * using VMD, one can see that it consists of
56
- a rather long polymer chain main of carbon atoms (in gray),
57
- oxygen atoms (in red), and hydrogen atoms (in white):
62
+ <a href="../../../../inputs/polymerstretching/free-peg-in-vacuum/peg.gro" target="_blank">here</a>
58
63
59
64
.. figure :: figures/stretchingpolymer/light-PEG.png
60
65
:alt: PEG polymer for molecular dynamics simulation in GROMACS
@@ -66,8 +71,11 @@ PEG molecule in vacuum
66
71
:class: only-dark
67
72
:width: 500
68
73
69
- This PEG molecule contains 24 carbon atoms, 12 oxygen atoms,
70
- and 50 hydrogen atoms.
74
+ .. container :: figurelegend
75
+
76
+ The PEG molecule as visualized using VMD. It consists of
77
+ a rather long polymer chain main of carbon atoms (in gray),
78
+ oxygen atoms (in red), and hydrogen atoms (in white).
71
79
72
80
.. container :: justify
73
81
@@ -76,7 +84,6 @@ PEG molecule in vacuum
76
84
file named *topol.top *, and copy the following lines in it:
77
85
78
86
.. code-block :: bw
79
- :caption: *to be copied in free-peg-in-vacuum/topol.top*
80
87
81
88
[ defaults ]
82
89
; nbfunc comb-rule gen-pairs fudgeLJ fudgeQQ
@@ -109,14 +116,15 @@ PEG molecule in vacuum
109
116
110
117
.. container :: justify
111
118
112
- These 2 files contain the parameters for the PEG molecules, as well as extra parameters for the water molecules
113
- that will be added later.
119
+ These 2 files contain the parameters for the PEG molecules, as well as extra
120
+ parameters for the water molecules that will be added later.
121
+
122
+ .. container :: justify
114
123
115
- Create an *inputs/ * folder next to *ff/ *, and create a new empty file called nvt.mdp.
116
- Copy the following lines into it:
124
+ Create an *inputs/ * folder next to *ff/ *, and create a new empty file
125
+ called nvt.mdp. Copy the following lines into it:
117
126
118
127
.. code-block :: bw
119
- :caption: *to be copied in free-peg-in-vacuum/inputs/nvt.mdp*
120
128
121
129
integrator = md
122
130
dt = 0.002
@@ -157,26 +165,30 @@ PEG molecule in vacuum
157
165
158
166
.. container :: justify
159
167
160
- After the simulation is over, open the trajectory file with VMD by typing:
168
+ After the simulation is over, open the trajectory file with VMD by typing
169
+ in a terminal:
161
170
162
171
.. code-block :: bash
163
172
164
173
vmd peg.gro nvt.trr
165
174
166
175
.. container :: justify
167
176
168
- You should see the PEG molecule moving due to thermal agitation.
177
+ The PEG molecule can be seen moving due to thermal agitation. See
178
+ the corresponding |video_peg_youtube |.
179
+
180
+ .. |video_peg_youtube | raw :: html
169
181
170
- .. include :: ../contact/supportme.rst
182
+ <a href="https://www.youtube.com/watch?v=8ldIHP175TI&t=9s" target="_blank">video</a>
171
183
172
184
Angle distribution
173
185
------------------
174
186
175
187
.. container :: justify
176
188
177
- Let us use the power of GROMACS to extract the angular
178
- distribution between triplets of atoms during the run.
179
- First, let us create an index file from the *peg.gro * file:
189
+ Let us use the tools of GROMACS to extract the angular distribution
190
+ between triplets of atoms during the run. First, let us create an index
191
+ file from the *peg.gro * file:
180
192
181
193
.. code-block :: bash
182
194
@@ -197,8 +209,8 @@ Angle distribution
197
209
.. container :: justify
198
210
199
211
Here each number corresponds to the atom index, as can be seen from the
200
- *peg.gro * file. For instance, atom of id 2 is a carbon atom, and
201
- five in an oxygen:
212
+ *peg.gro * file. For instance, the atom of * id 2 * is a carbon atom, and
213
+ the atom id * id 5 * is an oxygen:
202
214
203
215
.. code-block :: bw
204
216
@@ -235,8 +247,10 @@ Angle distribution
235
247
:alt: Angle distribution from molecular dynamics simulation in GROMACS
236
248
:class: only-dark
237
249
250
+ .. container :: figurelegend
251
+
238
252
Angle distribution for the Carbon and oxygen atoms of the PEG molecule in
239
- vacuum.
253
+ vacuum as extracted using * gmx angle * .
240
254
241
255
Pull on the PEG
242
256
---------------
@@ -247,8 +261,10 @@ Pull on the PEG
247
261
Duplicate the *free-peg-in-vacuum/ * folder, and call the
248
262
copy *pulled-peg-in-vacuum/ *.
249
263
264
+ .. container :: justify
265
+
250
266
First, change the box size to make room for the pulling by replacing
251
- the last line of peg.gro from
267
+ the last line of * peg.gro * from
252
268
253
269
.. code-block :: bw
254
270
@@ -265,19 +281,21 @@ Pull on the PEG
265
281
.. container :: justify
266
282
267
283
Then, for convenience, let us center the PEG molecule
268
- in the box by typing :
284
+ in the box by using * gmx trjconv * :
269
285
270
286
.. code-block :: bash
271
287
272
288
gmx trjconv -f peg.gro -o peg-centered.gro -s nvt.tpr -center -pbc mol
273
289
274
290
.. container :: justify
275
291
276
- And choose *System * for both centering and output. Then, let us
292
+ Choose *System * for both centering and output. Then, let us
277
293
specify to GROMACS which atoms are going to be pulled. This can be done
278
294
by adding 2 additional groups named *End1 * and *End2 *
279
295
to the index file *index.ndx *:
280
296
297
+ .. container :: justify
298
+
281
299
Create an index file by typing:
282
300
283
301
.. code-block :: bash
@@ -298,7 +316,7 @@ Pull on the PEG
298
316
.. container :: justify
299
317
300
318
Then press *q * to save and quit. The index file *index.ndx *
301
- contains 2 additional group , with one oxygen atom each:
319
+ contains 2 additional groups , with one oxygen atom each:
302
320
303
321
.. code-block :: bw
304
322
@@ -317,12 +335,11 @@ Pull on the PEG
317
335
318
336
.. container :: justify
319
337
320
- Then, duplicate the `` nvt.mdp `` file, call the duplicate `` pull.mdp `` .
321
- Remove the `` comm-mode = angular `` line. Then, add the following lines
322
- to `` pull.mdp `` :
338
+ Then, duplicate the * nvt.mdp * file, name the duplicate * pull.mdp * .
339
+ Remove the * comm-mode = angular * line, and add the following lines
340
+ to * pull.mdp * :
323
341
324
342
.. code-block :: bw
325
- :caption: *to be copied in pulled-peg-in-vacuum/inputs/pull.mdp*
326
343
327
344
pull = yes
328
345
pull-coord1-type = constant-force
@@ -340,12 +357,11 @@ Pull on the PEG
340
357
341
358
.. container :: justify
342
359
343
- These lines are ensuring that a force is applied along the *z * direction
360
+ These lines ensure that a force is applied along the *z * direction
344
361
to both groups *End1 * and *End2 *. Turn off the velocity generator
345
362
as well:
346
363
347
364
.. code-block :: bw
348
- :caption: *to be modified in pulled-peg-in-vacuum/inputs/pull.mdp*
349
365
350
366
gen_vel = no
351
367
@@ -372,7 +388,7 @@ Pull on the PEG
372
388
.. container :: justify
373
389
374
390
Looking at the evolution of the position with time, one can see
375
- that the polymer stretches very quickly:
391
+ that the polymer stretches very quickly.
376
392
377
393
.. figure :: figures/stretchingpolymer/position-light.png
378
394
:alt: End to end position from molecular dynamics simulation in GROMACS
@@ -382,12 +398,14 @@ Pull on the PEG
382
398
:alt: End to end position from molecular dynamics simulation in GROMACS
383
399
:class: only-dark
384
400
401
+ .. container :: figurelegend
402
+
385
403
Evolution of the end-to-end distance with time.
386
404
387
405
.. container :: justify
388
406
389
407
You can also visualize the PEG molecule during the stretching, this is
390
- what I see:
408
+ what I see.
391
409
392
410
.. figure :: figures/stretchingpolymer/light-PEG-stretched.png
393
411
:alt: PEG polymer for molecular dynamics simulation in GROMACS
@@ -397,7 +415,9 @@ Pull on the PEG
397
415
:alt: PEG polymer for molecular dynamics simulation in GROMACS
398
416
:class: only-dark
399
417
400
- The PEG molecule under stretching in vacuum.
418
+ .. container :: figurelegend
419
+
420
+ The PEG molecule under stretching in a vacuum.
401
421
402
422
PEG molecule in water
403
423
=====================
@@ -433,7 +453,7 @@ PEG molecule in water
433
453
434
454
.. container :: justify
435
455
436
- Add the line *#include "ff/tip3p.itp" * to the topol.top file:
456
+ Add the line *#include "ff/tip3p.itp" * to the * topol.top * file:
437
457
438
458
.. code-block :: bw
439
459
@@ -452,16 +472,16 @@ PEG molecule in water
452
472
453
473
<a href="../../../../inputs/polymerstretching/free-peg-in-water/ff/tip3p.itp" target="_blank">here</a>
454
474
455
- .. include :: ../contact/supportme.rst
456
-
457
475
Equilibrating the system
458
476
------------------------
459
477
460
478
.. container :: justify
461
479
462
- Here we perform a 3 steps equilibration of the solvated PEG system, starting with
480
+ Here we perform a 3-step equilibration of the solvated PEG system, starting with
463
481
an energy minimization, followed by a NVT run, and finally with a NPT run.
464
482
483
+ .. container :: justify
484
+
465
485
First, let us perform an energy minimization of the system:
466
486
467
487
.. code-block :: bash
0 commit comments