Анализ молекулярной динамики биологических молекул в GROMACS

Целью данного занятия был анализ результатов моделирования плавления пептида в формамиде

In [16]:
import pandas as pd
import matplotlib.pyplot as plt

Посчитаем средне-квадратичное отколнение в ходе моделирования от стартового состояния

In [30]:
data = pd.read_csv("rms_1.xvg", sep="\s+", names=["time", "rms"])
In [31]:
data.head()
Out[31]:
time rms
0 0.0 0.000148
1 10.0 0.150050
2 20.0 0.139947
3 30.0 0.144746
4 40.0 0.161180
In [32]:
data.plot(x="time", y="rms")
plt.show()

Видим, что у нас сначало было изменение конформации, потом она стала приближаться к исходной. Теперь посмотрим на изменение rmsd по сравнению со структурой на расстоянии 400 кадров от текущей

In [36]:
data = pd.read_csv("rms_2.xvg", sep="\s+", names=["time", "rms"])
In [37]:
data.plot(x="time", y="rms")
plt.show()

Видим, что структура продолжала переодически меняться до конца динамики

Построим график зависимости площадей гидрофобной и гидрофильной поверхностей, доступных растворителю от времени

In [4]:
data = pd.read_csv("sas_pep.xvg", sep="\s+", names=["time", 
                                                    "Hydrophobic", 
                                                    "Hydrophilic", 
                                                    "Total",
                                                    "D Gsolv"])
In [43]:
data.head()
Out[43]:
time Hydrophobic Hydrophilic Total D Gsolv
0 0 5.27081 10.3751 15.6459 61.5979
1 10 5.84407 10.9195 16.7636 66.9526
2 20 5.34625 10.0987 15.4449 60.2146
3 30 5.06417 10.6263 15.6905 57.8215
4 40 5.09810 11.4845 16.5826 61.0221
In [50]:
data.plot(x="time", y = ["Hydrophobic", "Hydrophilic"])
plt.show()

Наблюдаем заметное уменьшение площади гидрофильной поверхности в 7500 и 15000. Однако сильного, устойчивого изменения не происходит

Пронаблюдаем зависимость количества водородных связей в пептиде от времени.

In [56]:
data = pd.read_csv("hbond_pep.xvg", sep="\s+", names=["time", 
                                                    "Hbonds", 
                                                    "Pairs35nm"
                                                   ])
In [58]:
data.plot(x="time", y = ["Hbonds"])
plt.show()

Видим, что связи меняются переодически - как и все до этого

Посмотрим зависимость количества водородных связей пептид-формамид от времени

In [61]:
data = pd.read_csv("hbond_pep_sl.xvg", sep="\s+", names=["time", 
                                                    "Hbonds", 
                                                    "Pairs35nm"
                                                   ])
In [62]:
data.plot(x="time", y = ["Hbonds"])
plt.show()

Наблюдаем слабые изменения, в целом зеркальные наблюдавшемуся на прошлом графике

Построим для ориентира зависимость количества водородных связей между молекулами растворителя, должна получиться приблизительно константа

In [63]:
data = pd.read_csv("hbond_sl_sl.xvg", sep="\s+", names=["time", 
                                                    "Hbonds", 
                                                    "Pairs35nm"
                                                   ])
In [64]:
data.plot(x="time", y = ["Hbonds"])
plt.show()

Действительно так.

Видимо, конформационного перехода у нас в опыте не наблюдалось (точнее, он не доходил до конца)

In [15]:
from IPython.display import IFrame
IFrame("ss.pdf", width=600, height=300)
Out[15]:

Видим, что, действительно, полного конформационного перехода в ходе эксперимента не происходило, максимум расплавленности альфа-спирали соответсвует 7500 фрейму, что наблюдалось и на прежних графиках