Моделирование эволюции гена.
На главную страницу четвертого семестра
((((А:50,(В:41,С:41):9):25,D:75):20,Е:95):20,F:115); - Модель судьбы гена, описанная
в виде скобочной формулы. Расстояния даны как число мутаций на 100 нуклеотидных остатков.
Изображение дерева, описанного заданной формулой.
| Листья дерева - A, B, C, D, E, F. Длины ветвей указаны цифрами.
|
Бескорневое дерево, описанное заданной формулой.
| Внутренние ветви: alpha, beta, gamma.
|
Описание разбиений в виде таблички.
|
Столбцы соответствуют листьям дерева, а строки -
ветвям дерева. Каждая строка, описывающая ветвь,
заполнена символами двух типов (. (точка) и * (звёздочка)).
Одним символом (.) помечены листья, находящиеся по
одну сторону от данной ветви, другим (*), по другую.
Поскольку ветвь, отделяющая один (любой!) лист от всех
остальных, есть в любом дереве, описание таких ветвей не
несёт полезной информации. Поэтому такое описание
было опущено.
|
Получение искусственных мутантных последовательностей, которые соответствуют
листьям и узлам дерева, считая, что в корне находится последовательность гена
белка ASSY_ECOLI.
Длина последовательности гена составляет 1344 н.о.
Для получения искусственных мутантных последовательностей необходимо было:
1. Создать файлы с естественными именами для каждой из мутантных
последовательностей (например, ABC.fasta для общего предка листьев A, B и C).
2. Необходимо было пересчитать длины ветвей в число мутаций, которые
надо было произвести при получении каждой последовательности из
ее предка. Формула для подсчета:
m=S*1344/100. m - число мутаций. S - длина ветви.
3. Для получения "мутантов" нужно было воспользоваться программой msbar пакета EMBOSS.
Необходимо было составить скрипт:
msbar infile outfile -point 4 -count n -auto
Вместо "infile" ставится имя файла с последовательностью, в которую надо
внести мутации, а вместо "outfile" - имя файла, в котором будет находится
измененная (мутантная) последовательность. Вместо n - число мутаций,
которое нужно внести. Файл был сохранен как текст UNIX.
Чтобы сделать скрипт исполняемым, необходимо выполнить (на kodomo-count) команду
chmod +x имя_скрипта
Скрипт, которым были получены мутантные последовательности, имеет вид:
msbar seq.fasta f.fasta -point 4 -count 1546 -auto
msbar seq.fasta abcde.fasta -point 4 -count 269 -auto
msbar abcde.fasta e.fasta -point 4 -count 1277 -auto
msbar abcde.fasta abcd.fasta -point 4 -count 269 -auto
msbar abcd.fasta d.fasta -point 4 -count 1008 -auto
msbar abcd.fasta abc.fasta -point 4 -count 336 -auto
msbar abc.fasta a.fasta -point 4 -count 672 -auto
msbar abc.fasta bc.fasta -point 4 -count 121 -auto
msbar bc.fasta c.fasta -point 4 -count 551 -auto
msbar bc.fasta b.fasta -point 4 -count 551 -auto
Где seq.fasta - последовательность гена белка ASSY_ECOLI.
Скрипт был запущен командой - ./имя_скрипта
Реконструирование дерева алгоритмами UPGMA, Neighbor-joining и
максимального правдоподобия.
Последовательности, соответствующие листьям дерева, были помещены в один файл
в виде "выравнивания" в fasta-формате.
1.Для реконструирования дерева алгоритмом максимального правдоподобия, была
запущена программа fdnaml:
fdnaml ali.fasta -ttratio 1 -auto, где ali.fasta соответствует
имени файла с выравниванием.
2.Реконструирование дерева алгоритмом UPGMA.
а). Сначала необходимо было посчитать попарные расстояния между последовательностями
программой fdnadist:
fdnadist ali.fasta -ttratio 1 -auto
б). Выходной файл необходимо подать на вход программе fneighbor:
fneighbor ali.fdnadist -treetype u -auto
3.Реконструирование дерева алгоритмом Neighbor-joining.
а). Сначала необходимо было посчитать попарные расстояния между последовательностями
программой fdnadist:
fdnadist ali.fasta -ttratio 1 -auto
б). Выходной файл переименовать и подать на вход программе fneighbor:
fneighbor ali.fdnadist -auto
Сравнение деревьев между собой и с правильным деревом.
| В левой части таблички приведите (в виде точек и звёздочек)
все ветви, встреченные во всех деревьях (исходном и трёх
реконструкциях), а в правой четыре столбца, соответствующие
четырём деревьям. Знаком "+" помечены, в каких
деревьях встретилась каждая из ветвей.
|
Таким образом, мы видим, что ветви во всех трех реконструкциях
определены правильно. Алгоритм UPGMA строит ультраметрические и укорененные
деревья, в то время как алгоритм Neighbor-joining и алгоритм максимального
подобия строят неультраметрические и неукорененные деревья.
©Трембицкая Влада