Вся работа выполнялась в Google-Colab. на данной странице представлены только результаты и промежуточные файлы.
import __main__
__main__.pymol_argv = [ 'pymol', '-x' ]
import pymol
pymol.finish_launching()
from pymol import cmd,stored
from IPython.display import Image, display
import imageio
import os
Посмотрим на липид DPPC (дипальмитоилфосфатидилхолин)
cmd.do('''
reinitialize everything
load ./bilayer/dppc.pdb
orient dppc
zoom dppc,buffer = 5
ray 2048,2048
png bil1.png, dpi=300
''')
Image(filename='bil1.png')
Посмотрим на ячейку из 64 липидов
cmd.do('''
reinitialize everything
load ./bilayer/b_64.pdb
orient b_64
zoom b_64,buffer = 5
ray 2048,2048
png bil2.png, dpi=300
''')
Image(filename='bil2.png')
Посмотрим на ячейку до утряски воды
cmd.do('''
reinitialize everything
load ./bilayer/b_s.pdb
orient b_s
zoom b_s,buffer = 5
ray 2048,2048
png bil3.png, dpi=300
''')
Image(filename='bil3.png')
Посмотрим на ячейку после утряски воды
cmd.do('''
reinitialize everything
load ./bilayer/step491b.pdb
orient step491b
zoom step491b,buffer = -60
ray 2048,2048
png bil4.png, dpi=300
''')
Image(filename='bil4.png')
Промежуточные выводы¶
Мы построили ячейку из 64 молекул липида. Затем заполнили ее водой. После произвели утряску воды. По итогу утряски энергия системы уменьшилась, что и ожидалось.
Теперь можо запустить самосборку бислоя.
Посмотрим на реультат самосборки¶
cmd.do('''
reinitialize everything
load ./bilayer/b_pbc_1.pdb
zoom b_pbc_1,buffer = -15
mset 1x202
mview store, 1, state=1, object=b_pbc_1
mview store, 202, state=101, object=b_pbc_1
''')
cmd.do('''
set ray_trace_frames=1
set cache_frames=0
bg_color white
set ray_opaque_background, on
mclear
mpng ./b_l/mov, width=900,height=900
''')
filenames = sorted(os.listdir('./b_l/'))[1:]
with imageio.get_writer('b_l.gif', mode='I', fps=28) as writer:
for filename in filenames:
filepath = os.path.join('./b_l', filename)
image = imageio.imread(filepath)
writer.append_data(image)
Посмотрим, что получилось.
Определим площадь, занимаемую одним липидом. Зависимость нормированной площади (x*y/32) от времени:
Image('chart.PNG', width = 800)
Как можно видеть, площадь, занимаемая одним липидом с течением времени уменьшилась, что и должно было, так как у нас собирался бислой.
Теперь посмотрим на зависимость поверхности, доступной растворителю, от времени (с помощью gmx sasa):
Image('chart(1).PNG', width = 800)
Видим, что общая поверхность, доступная растворителю, была сначала $300-400\ нм^{2}$, потом резко упала (видимо, когда липиды образовали "затравку" бислоя), а потом постепенно снижалась.
Традиционной мерой оценки фазового состояния бифильных молекул является мера порядка. Поэтому посмотрим и на нее.
В конце:
Image('chart(2).PNG', width = 800)
В начале:
Image('chart(3).PNG', width = 800)
Видно, что в самом начале подвижность (мера беспорядка) выше, чем в конце, что нам говорит о том, что молекулы действительно образовали правильную структуру и их движение стало более упорядоченным.