В задании необходимо сравнить две формы белка - открытую (1urp) и закрытую (2dri). Затем посчитать их площади померхности и молекулярные площади.
from IPython.display import Image
Image('sup/pr7/open.png')
В открытой форме мы явно видим два домена соединённые снизу между собой. Также мы хорошо видим полость между доменами.
Image('sup/pr7/close.png')
В закрытой форме домены гораздо ближе друг к другу, и мы даже видим молекулу лиганда в кармане.
print('\t\tПоверхность\t\t\tПлощадь в открытой форме, Å^2\t\tПлощадь в закрытой форме, Å^2\n\
\tМолекулярная поверхность (MS)\t\t\t26087.775\t\t\t\t26154.506\n\
Поверхность, доступная растворителю (SAS)\t\t12339.258\t\t\t\t11684.573')
Удивительно на первый взгляд, что молекулярная площадь в закрытой форме больше. Но на самом деле в доменах есть полости, которые видимо увеличиваются при закрытии белка. Поверхность, доступная растворителю же ведёт себя, как и должна. MS > SAS, что вполне закономерно, ведь есть большая часть площади поверхности молекулы, куда не может достать растворитель.
В этом задании, при помощи сервиса fpocket посмотреть на объёмы карманов в открытой и закрытой формах.
Image('sup/pr7/close_pocket.png')
Image('sup/pr7/open_pocket.png')
Сразу видно, что карман в открытой форме в разы больше. Это видимо необходимо, для лучшего связывания лиганда. Видно, что в открытой форме доступ к центру белка открывается со многих сторон.
В этом задании при помощи программы mkdssp мы сгенерируем разметку вторичной структуры, но смотреть мы будем на экспонированность остатков в открытой и закрытой формах и посмотрим на остаток, изменивший этот параметр больше всего.
dssp1 = open('sup/pr7/1urp.dssp')
dssp_1urp = []
flag = False
for i in dssp1:
if flag:
dssp_1urp.append(int(i[35:38].strip()))
else:
if i[2] == '#':
flag = True
dssp1.close()
dssp2 = open('sup/pr7/2dri.dssp')
dssp_2dri = []
flag = False
for i in dssp2:
if flag:
dssp_2dri.append(int(i[35:38].strip()))
else:
if i[2] == '#':
flag = True
dssp2.close()
diff = []
for i in range(271):
diff.append(dssp_1urp[i] - dssp_2dri[i])
print(diff.index(max(diff)))
print(diff.index(min(diff)))
Получили остатки с наибольшей разницей в обе стороны. То есть это остаток, который открывается больше всего в открытой форме, и остаток, открывающийся в закрытой форме. Посмотрим на них.
Image('sup/pr7/max.png')
Остаток увеличивающий свою экспонированность при открытии. Закономерно расположен в самом центре кармана. При открытии он становится гораздо доступнее.
Image('sup/pr7/min.png')
И остаток увеличивающий экспонированность при закрытии. Так же не удивительно. Расположен с обратной стороны от кармана. При открытии белка, этот остаток "прижимает" с двух сторон, закрывая доступ к нему.