Макромолекулярный докинг

Суть задания ознакомиться с программой ZDOCK и сделать предсказание о свзывании фрагмента антитела (VHH domain) - camelid.pdb c панкреатической альфа-амилазой - amylase.pdb.

Добавляем к pdb файлам водороды. Выбираем силовое поле GROMOS96 43a1 (под номером 9).

In [24]:
import subprocess
command3 = 'echo 9 | pdb2gmx -f camelid.pdb -o camelid_h.pdb -p -water none'
subprocess.Popen(command3,shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
command4 = 'echo 9 | pdb2gmx -f amylase.pdb -o amylase_h.pdb -p -water none -ignh'
subprocess.Popen(command4,shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
Out[24]:
<subprocess.Popen at 0x7f3d2a643390>

С помощью утилиты mark_sur проводим препроцессинг файлов pdb - помечаем атомы на поверхности.

In [25]:
#указываем путь к zdock
command5 = 'export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/home/preps/golovin/progs/lib'
subprocess.Popen(command5,shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
command6 = 'export PATH=${PATH}:/home/preps/golovin/progs/bin'
subprocess.Popen(command6,shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
command7 = 'mark_sur camelid_h.pdb camelid_h_m.pdb'
subprocess.Popen(command7,shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
command8 = 'mark_sur amylase_h.pdb amylase_h_m.pdb'
subprocess.Popen(command8,shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
Out[25]:
<subprocess.Popen at 0x7f3d2444ea90>

Запускаем докинг

In [11]:
%%bash
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/home/preps/golovin/progs/lib
export PATH=${PATH}:/home/preps/golovin/progs/bin
zdock -R amylase_h_m.pdb -L camelid_h_m.pdb
ZDOCK has successfully completed and zdock.out has been created.

Предварительный анализ результатов докинга с помощью утилиты zrank:

In [6]:
%%bash
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/home/preps/golovin/progs/lib
export PATH=${PATH}:/home/preps/golovin/progs/bin
zrank zdock.out.cp 1 2000
In [7]:
! sort -n -k2 zdock.out.cp.zr.out | head
1588	-28.661
1252	-27.5357
610	-25.5514
1436	-22.3979
1952	-21.1778
982	-17.5643
1284	-16.9435
851	-14.7227
679	-13.8186
1666	-11.6282

Не знала, как визуализировать выходной файл zdock.out, поэтому запустила докинг на сервере zdock. Скачала 10 лучших находок (надеюсь, они совпадают). Визуализировала структуру с наименьшим RMSD (референсная структура 1kxt.pdb).

In [21]:
import subprocess
for i in range (11):
    command1 = 'echo 1 1 | g_rms -s 1kxt_v2.pdb -f complex.%s.pdb -o %s.xvg' %(i,i)
    subprocess.Popen(command1,shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    command2 = 'sed -n -e 14p %s.xvg >> rmsd.txt' %(i)
    subprocess.Popen(command2,shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)    
In [20]:
!awk ' {print $2} ' rmsd.txt
1.6255031
1.5223430
1.6835063
1.5849556
1.5611151
1.4895627
1.4812126
1.3631867
1.6179277
2.6476610

Самый маленький RMSD у структуры под номером 8 (1.3631867). Визуализируем ее.

In [22]:
from IPython.display import Image
Image(url='complex8.png')
Out[22]:

Красным и синим показана структура амилазы в РСА и после макромолекулярного докинга соответственно. Темно-красным и темно-синим - структура лиганда (фрагмента антитела) в РСА и после макромолекулярного докинга соответственно. Совмещение структур далеко от идеального, но правильно определено место связывания лиганда. В остальных случаях докинг показал место связывания лиганда абсолютно несоответствующее действительности.