In [1]:
##будем делать докинг лиганда nag в фаговый лизоцим, смоделированный по гомлогии в прошлом практикуме
In [1]:
%%bash
export PYTHONPATH=${PYTHONPATH}:/home/preps/golovin/.local/lib/python2.7/site-packages:/home/preps/golovin/.local/lib/python2.7/dist-packages
export PATH=${PATH}:/home/preps/golovin/progs/bin
In []:
%%bash
obgen nag.smi -ff UFF > nag.mol
babel -imol nag.mol -opdb nag.pdb
##получили файл с молекулой лиганда
In []:
%%bash
prepare_ligand4.py -l nag.pdb
prepare_receptor4.py -r my1.pdb
##подготовили лиганд и белок для докинга
In [1]:
from xmlrpclib import ServerProxy
from IPython.display import Image
import os, sys
In [2]:
import __main__

__main__.pymol_argv = [ 'pymol', '-cp' ]



import pymol
 
pymol.finish_launching()
 
from pymol import cmd
In [3]:
from IPython.display import Image
In [24]:
cmd.delete('all')
cmd.load('my1.pdb')
cmd.do('''
pseudoatom mcent, resi 45, resi 125, resi 138
select mcent
print cmd.get_atom_coords('mcent')
''')
In []:
##Полученные координаты центра докинга:47.3, 48.8, 24.6 (их хаписали в файл cfg)
In []:
%%bash
vina --config vina.cfg --receptor my1.pdbqt --ligand nag.pdbqt --out nag_prot_my.pdbqt --log nag_prot_my.log
##проведи докинг
In []:
##состояния с лучшими энергиями из log-файла
##   1         -4.8      0.000      0.000
##   2         -4.7      1.553      2.774
##   3         -4.7     20.980     22.149
In [48]:
cmd.delete('all')
cmd.load('nag_prot_my.pdbqt')
cmd.load('my1.pdb')
cmd.do('''
rotate x, 90
show sticks, nag_prot_my
split_states nag_prot_my, 1, 20, prefix=conf
zoom all
ray
png 1.png
''')
In [50]:
Image(filename='1.png')
Out[50]:
In [80]:
cmd.delete('all')
cmd.load('nag_prot_my.pdbqt')
cmd.load('my1.pdb')
cmd.do('''
show surface, my1
set transparency, 0.5
show sticks, nag_prot_my
split_states nag_prot_my, 1, 20, prefix=conf
rotate x, 50, all, 0
rotate y, -90, all, 0
zoom all
ray
png 2.png
''')
In [83]:
Image(filename='2.png')
Out[83]:
In [84]:
cmd.delete('all')
cmd.load('nag_prot_my.pdbqt')
cmd.do('''
rotate x, 90, all
split_states nag_prot_my, 1, 20, prefix=conf
rotate x, 50, all, 0
rotate y, -90, all, 0
zoom all
ray
png 5.png
''')
In [85]:
Image(filename='5.png')
Out[85]:
In [18]:
##видно, что лигнад распределен по 4 карманам структуры в результате докинга, причем в условно праивльном кармане меньше всего состояний
##это может быть связано с тем, что карман получился при моделировании белка слишком маленьким по объему
In []:
%%bash
python /usr/share/pyshared/AutoDockTools/Utilities24/prepare_flexreceptor4.py -r my1.pdbqt -s ASN45_ASN125_VAL138
vina --config vina.cfg --receptor my1_rigid.pdbqt --flex my1_flex.pdbqt --ligand nag.pdbqt --out nag_pr_2.pdbqt --log nag_pr_2.log
##проведем докинг, сделая подвижной часть белка (те самые 3 аминокислоты)
In [87]:
cmd.delete('all')
cmd.load('nag_pr_2.pdbqt')
cmd.load('my1.pdb')
cmd.do('''
show surface, my1
set transparency, 0.5
show sticks, nag_pr_2
split_states nag_pr_2, 1, 20, prefix=conf
rotate x, 50, all, 0
rotate y, -90, all, 0
zoom all
ray
png 6.png
''')
In [88]:
Image(filename='6.png')
Out[88]:
In []:
##стало не сильно лучше, но все-таки в праивльный карман лиганд попал уже в 2 моделях а не в 1 (из 20)
##я бы сказал, что докинг в целом не спраивлся
Previously modelled protein structure
Ligand structure
Docking result
Docking result with flexible side chains