Анализ результатов моделирования сборки бислоя

Файлы моделирования были скачаны с суперкомпьютера "Ломоносов" в папку на kodomo. Все дальнейшие команды вводились прямо в терминале, в отчете ниже они дублируются в блоках с %%bash.

В терминале на кодомо была запущена команда ниже и выбрана группа 2 (DРРС). Полученный pdb-файл был просмотрен в PyMol, визуализация показана на Рис. 1.

In [1]:
%%bash
trjconv -f b_md.xtc -s b_md.tpr -o b_pbc_1.pdb -skip 20 -pbc mol
Select group for output
                         :-)  G  R  O  M  A  C  S  (-:

                              S  C  A  M  O  R  G

                            :-)  VERSION 4.5.5  (-:

        Written by Emile Apol, Rossen Apostolov, Herman J.C. Berendsen,
      Aldert van Buuren, Pär Bjelkmar, Rudi van Drunen, Anton Feenstra, 
        Gerrit Groenhof, Peter Kasson, Per Larsson, Pieter Meulenhoff, 
           Teemu Murtola, Szilard Pall, Sander Pronk, Roland Schulz, 
                Michael Shirts, Alfons Sijbers, Peter Tieleman,

               Berk Hess, David van der Spoel, and Erik Lindahl.

       Copyright (c) 1991-2000, University of Groningen, The Netherlands.
            Copyright (c) 2001-2010, The GROMACS development team at
        Uppsala University & The Royal Institute of Technology, Sweden.
            check out http://www.gromacs.org for more information.

         This program is free software; you can redistribute it and/or
          modify it under the terms of the GNU General Public License
         as published by the Free Software Foundation; either version 2
             of the License, or (at your option) any later version.

                               :-)  trjconv  (-:

Option     Filename  Type         Description
------------------------------------------------------------
  -f       b_md.xtc  Input        Trajectory: xtc trr trj gro g96 pdb cpt
  -o    b_pbc_1.pdb  Output       Trajectory: xtc trr trj gro g96 pdb
  -s       b_md.tpr  Input, Opt!  Structure+mass(db): tpr tpb tpa gro g96 pdb
  -n      index.ndx  Input, Opt.  Index file
 -fr     frames.ndx  Input, Opt.  Index file
-sub    cluster.ndx  Input, Opt.  Index file
-drop      drop.xvg  Input, Opt.  xvgr/xmgr file

Option       Type   Value   Description
------------------------------------------------------
-[no]h       bool   no      Print help info and quit
-[no]version bool   no      Print version info and quit
-nice        int    19      Set the nicelevel
-b           time   0       First frame (ps) to read from trajectory
-e           time   0       Last frame (ps) to read from trajectory
-tu          enum   ps      Time unit: fs, ps, ns, us, ms or s
-[no]w       bool   no      View output .xvg, .xpm, .eps and .pdb files
-xvg         enum   xmgrace  xvg plot formatting: xmgrace, xmgr or none
-skip        int    20      Only write every nr-th frame
-dt          time   0       Only write frame when t MOD dt = first time (ps)
-[no]round   bool   no      Round measurements to nearest picosecond
-dump        time   -1      Dump frame nearest specified time (ps)
-t0          time   0       Starting time (ps) (default: don't change)
-timestep    time   0       Change time step between input frames (ps)
-pbc         enum   none    PBC treatment (see help text for full
                            description): none, mol, res, atom, nojump,
                            cluster or whole
-ur          enum   rect    Unit-cell representation: rect, tric or compact
-[no]center  bool   no      Center atoms in box
-boxcenter   enum   tric    Center for -pbc and -center: tric, rect or zero
-box         vector 0 0 0   Size for new cubic box (default: read from input)
-clustercenter vector 0 0 0   Optional starting point for pbc cluster option
-trans       vector 0 0 0   All coordinates will be translated by trans. This
                            can advantageously be combined with -pbc mol -ur
                            compact.
-shift       vector 0 0 0   All coordinates will be shifted by framenr*shift
-fit         enum   none    Fit molecule to ref structure in the structure
                            file: none, rot+trans, rotxy+transxy,
                            translation, transxy or progressive
-ndec        int    3       Precision for .xtc and .gro writing in number of
                            decimal places
-[no]vel     bool   yes     Read and write velocities if possible
-[no]force   bool   no      Read and write forces if possible
-trunc       time   -1      Truncate input trajectory file after this time
                            (ps)
-exec        string         Execute command for every output frame with the
                            frame number as argument
-[no]app     bool   no      Append output
-split       time   0       Start writing new file when t MOD split = first
                            time (ps)
-[no]sep     bool   no      Write each frame to a separate .gro, .g96 or .pdb
                            file
-nzero       int    0       If the -sep flag is set, use these many digits
                            for the file numbers and prepend zeros as needed
-dropunder   real   0       Drop all frames below this value
-dropover    real   0       Drop all frames above this value
-[no]conect  bool   no      Add conect records when writing .pdb files.
                            Useful for visualization of non-standard
                            molecules, e.g. coarse grained ones

Will write pdb: Protein data bank file
Reading file b_md.tpr, VERSION 4.5.4 (single precision)
Reading file b_md.tpr, VERSION 4.5.4 (single precision)
Group     0 (         System) has 11054 elements
Group     1 (          Other) has  3200 elements
Group     2 (           DPPC) has  3200 elements
Group     3 (          Water) has  7854 elements
Group     4 (            SOL) has  7854 elements
Group     5 (      non-Water) has  3200 elements
Select a group: 
-------------------------------------------------------
Program trjconv, VERSION 4.5.5
Source code file: /tmp/build/gromacs-4.5.5/src/gmxlib/index.c, line: 1036

Fatal error:
Cannot read from input
For more information and tips for troubleshooting, please check the GROMACS
website at http://www.gromacs.org/Documentation/Errors
-------------------------------------------------------

"Have a Nice Day" (R. McDonald)

Рис. 1. Результат сборки билипидного слоя (модель 101).

Билипидоподобная структура возникает уже на 20-ой модели (на 9500-ой пикосекунде), а до этого (модели с 7-ой) формируется мицеллоподобная структура. Более точно это можно оценить, если выбрать System, а не DPPC в предыдущей команде. Как раз на модели 20 молекулы воды не встречаются в гидрофобной части слоя (Рис. 2). Правда, сам билипид еще "мотает", гидрофобные хвосты не лежат так упорядоченно, как лежат на последней модели (Рис. 1).

Рис. 2. Модель 20 (первая модель билипида совсем без воды в гидрофобной части). Липиды показаны зелеными палочками, красным и синим покрашены кислород и азот, соответственно, а голубые шарики - это молекулы воды.

Далее нужно было оценить зависимость площади поверхности одного липида от шага моделирования (времени).

Нормалью к поверхности бислоя является ось Х.

In [13]:
%%bash
g_traj -f b_md.xtc -s b_md.tpr -ob box_1.xvg
                         :-)  G  R  O  M  A  C  S  (-:

                     Gnomes, ROck Monsters And Chili Sauce

                            :-)  VERSION 4.5.5  (-:

        Written by Emile Apol, Rossen Apostolov, Herman J.C. Berendsen,
      Aldert van Buuren, Pär Bjelkmar, Rudi van Drunen, Anton Feenstra, 
        Gerrit Groenhof, Peter Kasson, Per Larsson, Pieter Meulenhoff, 
           Teemu Murtola, Szilard Pall, Sander Pronk, Roland Schulz, 
                Michael Shirts, Alfons Sijbers, Peter Tieleman,

               Berk Hess, David van der Spoel, and Erik Lindahl.

       Copyright (c) 1991-2000, University of Groningen, The Netherlands.
            Copyright (c) 2001-2010, The GROMACS development team at
        Uppsala University & The Royal Institute of Technology, Sweden.
            check out http://www.gromacs.org for more information.

         This program is free software; you can redistribute it and/or
          modify it under the terms of the GNU General Public License
         as published by the Free Software Foundation; either version 2
             of the License, or (at your option) any later version.

                                :-)  g_traj  (-:

Option     Filename  Type         Description
------------------------------------------------------------
  -f       b_md.xtc  Input        Trajectory: xtc trr trj gro g96 pdb cpt
  -s       b_md.tpr  Input        Structure+mass(db): tpr tpb tpa gro g96 pdb
  -n      index.ndx  Input, Opt.  Index file
 -ox      coord.xvg  Output, Opt. xvgr/xmgr file
-oxt      coord.xtc  Output, Opt. Trajectory: xtc trr trj gro g96 pdb cpt
 -ov      veloc.xvg  Output, Opt. xvgr/xmgr file
 -of      force.xvg  Output, Opt. xvgr/xmgr file
 -ob      box_1.xvg  Output, Opt! xvgr/xmgr file
 -ot       temp.xvg  Output, Opt. xvgr/xmgr file
-ekt    ektrans.xvg  Output, Opt. xvgr/xmgr file
-ekr      ekrot.xvg  Output, Opt. xvgr/xmgr file
 -vd    veldist.xvg  Output, Opt. xvgr/xmgr file
 -cv      veloc.pdb  Output, Opt. Protein data bank file
 -cf      force.pdb  Output, Opt. Protein data bank file
 -av  all_veloc.xvg  Output, Opt. xvgr/xmgr file
 -af  all_force.xvg  Output, Opt. xvgr/xmgr file

Option       Type   Value   Description
------------------------------------------------------
-[no]h       bool   no      Print help info and quit
-[no]version bool   no      Print version info and quit
-nice        int    19      Set the nicelevel
-b           time   0       First frame (ps) to read from trajectory
-e           time   0       Last frame (ps) to read from trajectory
-dt          time   0       Only use frame when t MOD dt = first time (ps)
-tu          enum   ps      Time unit: fs, ps, ns, us, ms or s
-[no]w       bool   no      View output .xvg, .xpm, .eps and .pdb files
-xvg         enum   xmgrace  xvg plot formatting: xmgrace, xmgr or none
-[no]com     bool   no      Plot data for the com of each group
-[no]pbc     bool   yes     Make molecules whole for COM
-[no]mol     bool   no      Index contains molecule numbers iso atom numbers
-[no]nojump  bool   no      Remove jumps of atoms across the box
-[no]x       bool   yes     Plot X-component
-[no]y       bool   yes     Plot Y-component
-[no]z       bool   yes     Plot Z-component
-ng          int    1       Number of groups to consider
-[no]len     bool   no      Plot vector length
-[no]fp      bool   no      Full precision output
-bin         real   1       Binwidth for velocity histogram (nm/ps)
-ctime       real   -1      Use frame at this time for x in -cv and -cf
                            instead of the average x
-scale       real   0       Scale factor for .pdb output, 0 is autoscale

Reading file b_md.tpr, VERSION 4.5.4 (single precision)
Reading file b_md.tpr, VERSION 4.5.4 (single precision)
Group     0 (         System) has 11054 elements
Group     1 (          Other) has  3200 elements
Group     2 (           DPPC) has  3200 elements
Group     3 (          Water) has  7854 elements
Group     4 (            SOL) has  7854 elements
Group     5 (      non-Water) has  3200 elements
Select a group: 
-------------------------------------------------------
Program g_traj, VERSION 4.5.5
Source code file: /tmp/build/gromacs-4.5.5/src/gmxlib/index.c, line: 1036

Fatal error:
Cannot read from input
For more information and tips for troubleshooting, please check the GROMACS
website at http://www.gromacs.org/Documentation/Errors
-------------------------------------------------------

"The Microsecond is Within Reach" (P.J. Van Maaren)

In [2]:
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
from scipy import optimize
In [4]:
#подготовим данные для графика

time = []
square = []

with open("box_1.xvg", 'r') as boxfile:
    lines=boxfile.readlines()
for each_line in lines:
    if each_line.startswith("@") or each_line.startswith("#"):
        continue
    else:
        lines_list = each_line.split()
        time.append(lines_list[0])
        square.append(float(lines_list[2])*float(lines_list[3])/32)     
In [5]:
plt.plot(time, square, c='gold',alpha=1)
plt.ylabel('S')
plt.xlabel('Time, ps')
plt.show()

Площадь поверхности одного липида падает, что крайне логично. Небольшое увеличение площади на последних пикосекундах (моделях) объясняется подвижностью и небольшим изгибанием билипидного слоя.

Теперь изучим изменение гидрофобной и гидрофильной поверхности в ходе сборки билипидного слоя.

In [14]:
%%bash
g_sas -f b_md.xtc -s b_md.tpr -o sas_b.xvg
In case you use free energy of solvation predictions:

++++ PLEASE READ AND CITE THE FOLLOWING REFERENCE ++++
D. Eisenberg and A. D. McLachlan
Solvation energy in protein folding and binding
Nature 319 (1986) pp. 199-203
-------- -------- --- Thank You --- -------- --------

                         :-)  G  R  O  M  A  C  S  (-:

             Gallium Rubidium Oxygen Manganese Argon Carbon Silicon

                            :-)  VERSION 4.5.5  (-:

        Written by Emile Apol, Rossen Apostolov, Herman J.C. Berendsen,
      Aldert van Buuren, Pär Bjelkmar, Rudi van Drunen, Anton Feenstra, 
        Gerrit Groenhof, Peter Kasson, Per Larsson, Pieter Meulenhoff, 
           Teemu Murtola, Szilard Pall, Sander Pronk, Roland Schulz, 
                Michael Shirts, Alfons Sijbers, Peter Tieleman,

               Berk Hess, David van der Spoel, and Erik Lindahl.

       Copyright (c) 1991-2000, University of Groningen, The Netherlands.
            Copyright (c) 2001-2010, The GROMACS development team at
        Uppsala University & The Royal Institute of Technology, Sweden.
            check out http://www.gromacs.org for more information.

         This program is free software; you can redistribute it and/or
          modify it under the terms of the GNU General Public License
         as published by the Free Software Foundation; either version 2
             of the License, or (at your option) any later version.

                                :-)  g_sas  (-:

Option     Filename  Type         Description
------------------------------------------------------------
  -f       b_md.xtc  Input        Trajectory: xtc trr trj gro g96 pdb cpt
  -s       b_md.tpr  Input        Structure+mass(db): tpr tpb tpa gro g96 pdb
  -o      sas_b.xvg  Output       xvgr/xmgr file
 -or    resarea.xvg  Output, Opt. xvgr/xmgr file
 -oa   atomarea.xvg  Output, Opt. xvgr/xmgr file
 -tv     volume.xvg  Output, Opt. xvgr/xmgr file
  -q   connelly.pdb  Output, Opt. Protein data bank file
  -n      index.ndx  Input, Opt.  Index file
  -i     surfat.itp  Output, Opt. Include file for topology

Option       Type   Value   Description
------------------------------------------------------
-[no]h       bool   no      Print help info and quit
-[no]version bool   no      Print version info and quit
-nice        int    19      Set the nicelevel
-b           time   0       First frame (ps) to read from trajectory
-e           time   0       Last frame (ps) to read from trajectory
-dt          time   0       Only use frame when t MOD dt = first time (ps)
-[no]w       bool   no      View output .xvg, .xpm, .eps and .pdb files
-xvg         enum   xmgrace  xvg plot formatting: xmgrace, xmgr or none
-probe       real   0.14    Radius of the solvent probe (nm)
-ndots       int    24      Number of dots per sphere, more dots means more
                            accuracy
-qmax        real   0.2     The maximum charge (e, absolute value) of a
                            hydrophobic atom
-[no]f_index bool   no      Determine from a group in the index file what are
                            the hydrophobic atoms rather than from the charge
-minarea     real   0.5     The minimum area (nm^2) to count an atom as a
                            surface atom when writing a position restraint
                            file  (see help)
-[no]pbc     bool   yes     Take periodicity into account
-[no]prot    bool   yes     Output the protein to the Connelly .pdb file too
-dgs         real   0       Default value for solvation free energy per area
                            (kJ/mol/nm^2)


++++ PLEASE READ AND CITE THE FOLLOWING REFERENCE ++++
Frank Eisenhaber and Philip Lijnzaad and Patrick Argos and Chris Sander and
Michael Scharf
The Double Cube Lattice Method: Efficient Approaches to Numerical Integration
of Surface Area and Volume and to Dot Surface Contouring of Molecular
Assemblies
J. Comp. Chem. 16 (1995) pp. 273-284
-------- -------- --- Thank You --- -------- --------

Reading file b_md.tpr, VERSION 4.5.4 (single precision)
Reading file b_md.tpr, VERSION 4.5.4 (single precision)
Reading frame       0 time    0.000   Select a group for calculation of surface and a group for output:
Group     0 (         System) has 11054 elements
Group     1 (          Other) has  3200 elements
Group     2 (           DPPC) has  3200 elements
Group     3 (          Water) has  7854 elements
Group     4 (            SOL) has  7854 elements
Group     5 (      non-Water) has  3200 elements
Select a group: 
-------------------------------------------------------
Program g_sas, VERSION 4.5.5
Source code file: /tmp/build/gromacs-4.5.5/src/gmxlib/index.c, line: 1036

Fatal error:
Cannot read from input
For more information and tips for troubleshooting, please check the GROMACS
website at http://www.gromacs.org/Documentation/Errors
-------------------------------------------------------

"Good Music Saves your Soul" (Lemmy)

In [6]:
time = []
hphobic = []
hphylic = []      
        
with open("sas_b.xvg", 'r') as sasfile:
    lines=sasfile.readlines()
for each_line in lines:
    if each_line.startswith("@") or each_line.startswith("#"):
        continue
    else:
        lines_list = each_line.split()
        time.append(lines_list[0])
        hphobic.append(lines_list[1])
        hphylic.append(lines_list[2])
In [7]:
plt.plot(time, hphobic, c='navy',alpha=1)
plt.plot(time, hphylic, c='pink',alpha=1)
plt.legend(['hydrophobic SAS', 'hydrophilic SAS'], loc='upper right')
plt.ylabel('SAS')
plt.xlabel('Time, ps')
plt.show()

Наблюдается резкое снижение гидрофобной поверхности, доступной растворителю, в самом начале сборки (липиды формируют "рыхлую" мицеллу, Рис. 3), потом уже в ходе преобразования в билипид и его утряске уменьшение площади происходит более постепенно (скорее даже практически не происходит, начиная с 20000 пикосекунд). Гидрофильная поверхность логичным образом более доступна полярному растворителю (кривая ее площади выше, чем кривая для гидрофобной поверхности). При этом в начале она самая большая за счет того, что липиды неупорядочены или формируют мицеллу, а сама мицелла довольно рыхлая и вода может легко облеплять полярную головку липида. Потом в ходе уплощения билипидного слоя площадь гидрофильной поверхности, доступная растворителю, немного снижается, потому что липиды сближаются между собой и вода уже не может легко проникать между полярными головками.

Рис. 3. Липидная мицелла (модель 7).

Оценим фазовое состояние бифильных молекул липидов (определим меру порядка).

Для этого скачаем специальный индекс-файл sn1.ndx.

In [23]:
! wget http://kodomo.cmm.msu.ru/~golovin/bilayer/sn1.ndx
--2018-05-14 01:46:20--  http://kodomo.cmm.msu.ru/~golovin/bilayer/sn1.ndx
Resolving kodomo.cmm.msu.ru... 93.180.63.127
Connecting to kodomo.cmm.msu.ru|93.180.63.127|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 5328 (5.2K)
Saving to: `sn1.ndx'

100%[======================================>] 5,328       --.-K/s   in 0s      

2018-05-14 01:46:20 (248 MB/s) - `sn1.ndx' saved [5328/5328]

Как уже было сказано выше, нормалью к поверхности бислоя является ось Х.

In [16]:
%%bash
g_order -s b_md -f b_md.xtc -o ord_end.xvg -n sn1.ndx -b 45000 -d X
g_order -s b_md -f b_md.xtc -o ord_start.xvg -n sn1.ndx -e 5000 -d X
                         :-)  G  R  O  M  A  C  S  (-:

                          GROtesk MACabre and Sinister

                            :-)  VERSION 4.5.5  (-:

        Written by Emile Apol, Rossen Apostolov, Herman J.C. Berendsen,
      Aldert van Buuren, Pär Bjelkmar, Rudi van Drunen, Anton Feenstra, 
        Gerrit Groenhof, Peter Kasson, Per Larsson, Pieter Meulenhoff, 
           Teemu Murtola, Szilard Pall, Sander Pronk, Roland Schulz, 
                Michael Shirts, Alfons Sijbers, Peter Tieleman,

               Berk Hess, David van der Spoel, and Erik Lindahl.

       Copyright (c) 1991-2000, University of Groningen, The Netherlands.
            Copyright (c) 2001-2010, The GROMACS development team at
        Uppsala University & The Royal Institute of Technology, Sweden.
            check out http://www.gromacs.org for more information.

         This program is free software; you can redistribute it and/or
          modify it under the terms of the GNU General Public License
         as published by the Free Software Foundation; either version 2
             of the License, or (at your option) any later version.

                               :-)  g_order  (-:

Option     Filename  Type         Description
------------------------------------------------------------
  -f       b_md.xtc  Input        Trajectory: xtc trr trj gro g96 pdb cpt
  -n        sn1.ndx  Input        Index file
 -nr      index.ndx  Input        Index file
  -s       b_md.tpr  Input        Run input file: tpr tpb tpa
  -o    ord_end.xvg  Output       xvgr/xmgr file
 -od     deuter.xvg  Output       xvgr/xmgr file
 -ob      eiwit.pdb  Output       Protein data bank file
 -os     sliced.xvg  Output       xvgr/xmgr file
 -Sg     sg-ang.xvg  Output, Opt. xvgr/xmgr file
 -Sk    sk-dist.xvg  Output, Opt. xvgr/xmgr file
-Sgsl sg-ang-slice.xvg  Output, Opt. xvgr/xmgr file
-Sksl sk-dist-slice.xvg  Output, Opt. xvgr/xmgr file

Option       Type   Value   Description
------------------------------------------------------
-[no]h       bool   no      Print help info and quit
-[no]version bool   no      Print version info and quit
-nice        int    19      Set the nicelevel
-b           time   45000   First frame (ps) to read from trajectory
-e           time   0       Last frame (ps) to read from trajectory
-dt          time   0       Only use frame when t MOD dt = first time (ps)
-[no]w       bool   no      View output .xvg, .xpm, .eps and .pdb files
-xvg         enum   xmgrace  xvg plot formatting: xmgrace, xmgr or none
-d           enum   x       Direction of the normal on the membrane: z, x or y
-sl          int    1       Calculate order parameter as function of box
                            length, dividing the box into this number of
                            slices.
-[no]szonly  bool   no      Only give Sz element of order tensor. (axis can
                            be specified with -d)
-[no]unsat   bool   no      Calculate order parameters for unsaturated
                            carbons. Note that this cannot be mixed with
                            normal order parameters.
-[no]permolecule bool   no      Compute per-molecule Scd order parameters
-[no]radial  bool   no      Compute a radial membrane normal
-[no]calcdist  bool no      Compute distance from a reference (currently
                            defined only for radial and permolecule)

Taking x axis as normal to the membrane
Reading file b_md.tpr, VERSION 4.5.4 (single precision)
Using following groups: 
Groupname: C34 First atomname: C34 First atomnr 33
Groupname: C36 First atomname: C36 First atomnr 35
Groupname: C37 First atomname: C37 First atomnr 36
Groupname: C38 First atomname: C38 First atomnr 37
Groupname: C39 First atomname: C39 First atomnr 38
Groupname: C40 First atomname: C40 First atomnr 39
Groupname: C41 First atomname: C41 First atomnr 40
Groupname: C42 First atomname: C42 First atomnr 41
Groupname: C43 First atomname: C43 First atomnr 42
Groupname: C44 First atomname: C44 First atomnr 43
Groupname: C45 First atomname: C45 First atomnr 44
Groupname: C46 First atomname: C46 First atomnr 45
Groupname: C47 First atomname: C47 First atomnr 46
Groupname: C48 First atomname: C48 First atomnr 47
Groupname: C49 First atomname: C49 First atomnr 48
Groupname: C50 First atomname: C50 First atomnr 49

Reading frame       0 time 45000.000   Number of elements in first group: 64
Last frame        200 time 50000.000   

Read trajectory. Printing parameters to file
Atom 1 Tensor: x=-0.222461 , y=-0.171317, z=0.393778
Atom 2 Tensor: x=-0.23155 , y=-0.175106, z=0.406656
Atom 3 Tensor: x=-0.221929 , y=-0.185329, z=0.407258
Atom 4 Tensor: x=-0.224147 , y=-0.174968, z=0.399115
Atom 5 Tensor: x=-0.223735 , y=-0.175494, z=0.399229
Atom 6 Tensor: x=-0.224957 , y=-0.161179, z=0.386136
Atom 7 Tensor: x=-0.212651 , y=-0.159727, z=0.372378
Atom 8 Tensor: x=-0.201702 , y=-0.150316, z=0.352018
Atom 9 Tensor: x=-0.186374 , y=-0.139812, z=0.326187
Atom 10 Tensor: x=-0.172693 , y=-0.13007, z=0.302763
Atom 11 Tensor: x=-0.156904 , y=-0.110996, z=0.2679
Atom 12 Tensor: x=-0.14196 , y=-0.0951214, z=0.237081
Atom 13 Tensor: x=-0.119511 , y=-0.0791023, z=0.198613
Atom 14 Tensor: x=-0.0946731 , y=-0.0574956, z=0.152169

Back Off! I just backed up ord_end.xvg to ./#ord_end.xvg.2#

gcq#218: "I'm Not Gonna Die Here !" (Sphere)

                         :-)  G  R  O  M  A  C  S  (-:

                               Grunge ROck MAChoS

                            :-)  VERSION 4.5.5  (-:

        Written by Emile Apol, Rossen Apostolov, Herman J.C. Berendsen,
      Aldert van Buuren, Pär Bjelkmar, Rudi van Drunen, Anton Feenstra, 
        Gerrit Groenhof, Peter Kasson, Per Larsson, Pieter Meulenhoff, 
           Teemu Murtola, Szilard Pall, Sander Pronk, Roland Schulz, 
                Michael Shirts, Alfons Sijbers, Peter Tieleman,

               Berk Hess, David van der Spoel, and Erik Lindahl.

       Copyright (c) 1991-2000, University of Groningen, The Netherlands.
            Copyright (c) 2001-2010, The GROMACS development team at
        Uppsala University & The Royal Institute of Technology, Sweden.
            check out http://www.gromacs.org for more information.

         This program is free software; you can redistribute it and/or
          modify it under the terms of the GNU General Public License
         as published by the Free Software Foundation; either version 2
             of the License, or (at your option) any later version.

                               :-)  g_order  (-:

Option     Filename  Type         Description
------------------------------------------------------------
  -f       b_md.xtc  Input        Trajectory: xtc trr trj gro g96 pdb cpt
  -n        sn1.ndx  Input        Index file
 -nr      index.ndx  Input        Index file
  -s       b_md.tpr  Input        Run input file: tpr tpb tpa
  -o  ord_start.xvg  Output       xvgr/xmgr file
 -od     deuter.xvg  Output       xvgr/xmgr file
 -ob      eiwit.pdb  Output       Protein data bank file
 -os     sliced.xvg  Output       xvgr/xmgr file
 -Sg     sg-ang.xvg  Output, Opt. xvgr/xmgr file
 -Sk    sk-dist.xvg  Output, Opt. xvgr/xmgr file
-Sgsl sg-ang-slice.xvg  Output, Opt. xvgr/xmgr file
-Sksl sk-dist-slice.xvg  Output, Opt. xvgr/xmgr file

Option       Type   Value   Description
------------------------------------------------------
-[no]h       bool   no      Print help info and quit
-[no]version bool   no      Print version info and quit
-nice        int    19      Set the nicelevel
-b           time   0       First frame (ps) to read from trajectory
-e           time   5000    Last frame (ps) to read from trajectory
-dt          time   0       Only use frame when t MOD dt = first time (ps)
-[no]w       bool   no      View output .xvg, .xpm, .eps and .pdb files
-xvg         enum   xmgrace  xvg plot formatting: xmgrace, xmgr or none
-d           enum   x       Direction of the normal on the membrane: z, x or y
-sl          int    1       Calculate order parameter as function of box
                            length, dividing the box into this number of
                            slices.
-[no]szonly  bool   no      Only give Sz element of order tensor. (axis can
                            be specified with -d)
-[no]unsat   bool   no      Calculate order parameters for unsaturated
                            carbons. Note that this cannot be mixed with
                            normal order parameters.
-[no]permolecule bool   no      Compute per-molecule Scd order parameters
-[no]radial  bool   no      Compute a radial membrane normal
-[no]calcdist  bool no      Compute distance from a reference (currently
                            defined only for radial and permolecule)

Taking x axis as normal to the membrane
Reading file b_md.tpr, VERSION 4.5.4 (single precision)
Using following groups: 
Groupname: C34 First atomname: C34 First atomnr 33
Groupname: C36 First atomname: C36 First atomnr 35
Groupname: C37 First atomname: C37 First atomnr 36
Groupname: C38 First atomname: C38 First atomnr 37
Groupname: C39 First atomname: C39 First atomnr 38
Groupname: C40 First atomname: C40 First atomnr 39
Groupname: C41 First atomname: C41 First atomnr 40
Groupname: C42 First atomname: C42 First atomnr 41
Groupname: C43 First atomname: C43 First atomnr 42
Groupname: C44 First atomname: C44 First atomnr 43
Groupname: C45 First atomname: C45 First atomnr 44
Groupname: C46 First atomname: C46 First atomnr 45
Groupname: C47 First atomname: C47 First atomnr 46
Groupname: C48 First atomname: C48 First atomnr 47
Groupname: C49 First atomname: C49 First atomnr 48
Groupname: C50 First atomname: C50 First atomnr 49

Reading frame       0 time    0.000   Number of elements in first group: 64
Last frame        200 time 5000.000   

Read trajectory. Printing parameters to file
Atom 1 Tensor: x=-0.041284 , y=-0.0473882, z=0.0886722
Atom 2 Tensor: x=-0.0539627 , y=-0.0456464, z=0.0996091
Atom 3 Tensor: x=-0.0578208 , y=-0.0518998, z=0.109721
Atom 4 Tensor: x=-0.0668997 , y=-0.0437483, z=0.110648
Atom 5 Tensor: x=-0.0691909 , y=-0.0386953, z=0.107886
Atom 6 Tensor: x=-0.0682988 , y=-0.0444998, z=0.112799
Atom 7 Tensor: x=-0.0559812 , y=-0.0447721, z=0.100753
Atom 8 Tensor: x=-0.0528012 , y=-0.0446408, z=0.0974419
Atom 9 Tensor: x=-0.0396099 , y=-0.0456282, z=0.0852381
Atom 10 Tensor: x=-0.0363638 , y=-0.032602, z=0.0689659
Atom 11 Tensor: x=-0.037178 , y=-0.017136, z=0.054314
Atom 12 Tensor: x=-0.0357498 , y=-0.00808497, z=0.0438348
Atom 13 Tensor: x=-0.0230974 , y=-0.013017, z=0.0361145
Atom 14 Tensor: x=-0.0237586 , y=-0.00942328, z=0.0331819

Back Off! I just backed up ord_start.xvg to ./#ord_start.xvg.2#

Back Off! I just backed up deuter.xvg to ./#deuter.xvg.3#

gcq#218: "I'm Not Gonna Die Here !" (Sphere)

После получили файлы deuter_start.svg и deuter_end.svg. В них для каждого атома указан параметр Scd - мера порядка, рассчитываемая по формуле:

$Scd = \dfrac{\bar{3\cos^2{\beta_n}}-1}{2}$
In [22]:
##подгтовка данных для графика в начале траектории
atom_n = []
scd_start = []

with open("deuter_start.xvg", 'r') as deuterfile:
    lines = deuterfile.readlines()
for each_line in lines:
    if each_line.startswith("@") or each_line.startswith("#"):
        continue
    else:
        lines_list = each_line.split()
        atom_n.append(lines_list[0])
        scd_start.append(lines_list[1])     
In [23]:
##подгтовка данных для графика в конце траектории
atom_n = []
scd_end = []

with open("deuter_end.xvg", 'r') as deuterfile:
    lines = deuterfile.readlines()
for each_line in lines:
    if each_line.startswith("@") or each_line.startswith("#"):
        continue
    else:
        lines_list = each_line.split()
        atom_n.append(lines_list[0])
        scd_end.append(lines_list[1])     
In [35]:
plt.plot(atom_n, scd_start, c='olive', alpha=1, linewidth=3.0)
plt.plot(atom_n, scd_end, c='purple', alpha=1, linewidth=3.0)
plt.legend(['Scd (start)', 'Scd (end)'], loc='upper right')
plt.ylabel('Scd')
plt.xlabel('Atom number (C34 - C50)')
plt.show()

При идеальной упорядоченности Scd = 1. Здесь же мы наблюдаем довольно низкую степень упорядоченности в самом начале сборки (оливковая кривая на графике выше) и более высокую - на последних стадиях сборки липидного бислоя (фиолетовая кривая). При этом Scd в конце падает от меньшего номера атома к большему. Чем больше номер атома, тем ближе он к концу и тем более возможна неупорядоченность хвоста липида в гидрофобном слое.

Ниже приведена информация про процесс моделирования сборки липидного бислоя.

  • Силовое поле, используемое при построении топологии: ffgmx (модифицированное силовое поле GROMOS87).
  • Заряд системы: 0, система нейтральна.
  • Форма и размер ячейки: объем 160.70 nm3 (6.260 nm х 4.443 nm х 5.778 nm), форма ячейки - параллелепипед, все углы 90 градусов.
  • Минимизация энергии:

  • Алгоритм минимизации: l-bfgs
  • Алгоритм расчета электростатики и Ван-дер-Ваальсовых взаимодействий: coulombtype = Cut-off, vdw-type = Cut-off
  • Модель, которой описывается растворитель: flexspc

    Утряска растворителя:

  • Число шагов: 1000
  • Длина шага: 0.002
  • Алгоритм расчета электростатики и Ван-дер-Ваальсовых взаимодействий: pme, vdw-type = Cut-off
  • Алгоритм термостата и баростата: Tcoupl = Berendsen, Pcoupl = no
  • Основной расчет молекулярной динамики:

  • Число шагов: 10000000
  • Длина шага: 0.005 ps
  • Алгоритм интегратора: md (A leap-frog algorithm for integrating Newton’s equations of motion)
  • Алгоритм расчета электростатики и Ван-дер-Ваальсовых взаимодействий: pme (Fast smooth Particle-Mesh Ewald (SPME) electrostatics), vdw-type = cut-off
  • Алгоритмы термостата и баростата: Tcoupl = V-rescale, Pcoupl = Berendsen
  • P.S. Я честно сделала весь прак до 16.05, а после 16.05 только поправила (а не дописала) текст в некоторых местах.