Учебная страница курса биоинформатики,
год поступления 2015
Гомологичное моделирование комплекса белка с лигандом
- Необходимо представить в отчёте результаты моделирования и результаты проверки качества структур.
- Необходимо представить обсуждение результата.
Традиционные ссылки на полезные ресурсы:
Уроки по работе с Modeller находятся здесь.
Вся работа по расчётам будет проходить на kodomo через jupyter notebook.
Цель данного занятия ознакомится с возможностями гомологичного моделирования комплекса белка с лигандом. В этом занятии мы будем пользоваться пакетом Modeller. Это программное обеспечение распространяется бесплатно для академических пользователей.
Вы будете работать с любым белком лизоцимом из списка. Используя известную структуру лизоцима форели как образец, Вам необходимо построить модель комплекса Вашего белка с лигандом.
Программе MODELLER для моделирования структуры белков, в качестве входных данных нужны: управляющий скрипт, файл pdb со структурой-образцом, файл выравнивания с дополнительной информацией.
- Загрузим модуль
- Зададим некторые параметры
- Скачаем белок заготовку
1 ! wget http://www.pdb.org/pdb/files/1lmp.pdb
и последовательность
1 ! wget http://www.uniprot.org/uniprot/PXXXX.fasta
- Создадим объект выравнивание:
1 alignm=modeller.alignment(env)
и добавим последовательность и структуру
1 alignm.append(file='PXXX.fasta', align_codes='all',alignment_format='FASTA')
2 ## создадим модель
3 mdl = modeller.model(env, file='ХХХХ.pdb', model_segment=('FIRST:'+'A', 'LAST:'+'A'))
4 ## и добавим в выравнивание
5 alignm.append_model(mdl, atom_files='ХХХ.pdb', align_codes='1lmp')
6 ## есть смысл поправить идентификаторы
7 alignm[0].code = '.....'
- Делаем выравнивание и сохраняем:
- Посмотрите содержимое all_in_one.ali, там всё хорошо?
- Построим модель:
1 ## Выбираем объект для моделирования
2 s = alignm[0]
3 pdb = alignm[1]
4
5 print s.code, pdb.code
6
7 ## Создаем объект automodel
8 a = modeller.automodel.automodel(env, alnfile='all_in_one.ali', knowns= pdb.co...... , sequence = s.code )
9
10 a.name='mod'+s.code
11 a.starting_model = 1
12 a.ending_model = 2
13 a.make()
- Надо посмотреть результат:
А ГДЕ ЛИГАНД??
- Оказывается надо добавить три остатка лиганда к последовательности
Подсказки как сделать:
- Поместите лиганд в другое место, переназначив объект automodel, это очень примерный код:
1 class mymodel(modeller.automodel.automodel):
2 def special_restraints(self, aln):
3 rsr = self.restraints
4 at = self.atoms
5 for x,y in [('CG:83','O6:228')]:
6 rsr.add(modeller.forms.gaussian(group=modeller.physical.xy_distance,
7 feature=modeller.features.distance(
8 at[x],at[y]),mean=3.0, stdev=0.1))
9
10 from modeller import *
11 from modeller.automodel import *
12 a = mymodel(env, ...
и да подсказка: надо удалить рестрейны которые генерируются автоматически: ( можно через файл рестрейнов)
43 atoms in HETATM/BLK residues constrained to protein atoms within 2.30 angstroms and protein CA atoms within 10.00 angstroms
- Постройте структуру лизоцима с лигандом где все аминокислоты аланин и сравните скор функцию с "нативной" последовательностью.
Доп. Найдите способ искать мутации для улучшения связывания по мотивам этого скрипта https://salilab.org/modeller/wiki/Mutate%20model