Kodomo

Пользователь

PyMol

Загрузка и сохранение файлов

Загрузка файла с электронной плотностью (ААл)

Множества

Отображения

Цвета

Расстояния

Операторы

Макросы

Скрипты и логи

Помощь

Установка PyMol под Windows

Другие варианты установки (С.А.С.)

Дополнительные материалы

Загрузка и сохранение

Синтаксис:

load "имя файла"

Примеры:

PyMOL> load H:/term7/data/fc.pdb
PyMOL> load $PYMOL_PATH/test/dat/pept.pdb

То же можно сделать через меню графического окна.

Сохранять файлы можно через меню, а можно в командной строке, так команда

PyMOL> save H:/term7/data/wat.pdb, resn HOH

сохранит только атомы воды в файл H:/term7/data/wat.pdb .

Чтобы не писать каждый раз полный путь к файлу, можно сделать активной рабочую директорию, например:

PyMOL> cd H:/term7/data

после чего писать только краткое имя файла.

Загрузка файла с электронной плотностью

Файл с электронной плотностью можно получить на сайте PDBe. Найдите по PDB ID свою структуру и на странице структуры (например, https://www.ebi.ac.uk/pdbe/entry/pdb/1crn для структуры 1CRN) откройте меню Downloads. Если в этом меню нет пункта "EDS map", выберите другую структуру. Если есть, сохраните в рабочую директорию файл с электронной плотностью (с расширением ccp4). Туда же сохраните сам PDB-файл.

В примерах PDB код 1x01.

Сделайте активной рабочую директорию, например:

PyMOL> cd H:/term7/EDS

Загрузите PDB-файл командой load:

PyMOL>  load pdb1x01.ent, 1x01

Загрузите файл с электронной плотностью той же командой load:

PyMOL>  load 1x01.ccp4, 1x01_map

Указывать "имя объекта" (после запятой) необходимо для того, чтобы объекты получили разные имена.

Визуализация электронной плотности

Для визуализации электронной плотности вокруг заданного множества атомов используются команды isomesh или isodot. Например:

PyMOL> isomesh new_surface, 1x01_map, 1.5, resi 15-17 and chain a, 2.5

Здесь:

 new_surface              # имя нового объекта с изображением поверхности 
 1x01_map                 # имя объекта с электронной плотностью 
 1.5                      # уровень - значение электронной плотности (в сигмах), по которому строится поверхность
 resi 15-17 and chain a   # множество атомов, электронную плотность вокруг которого надо изобразить
 2.5                      # (необязательный) аргумент "buffer".

Если не задать buffer, то будет изображена электронная плотность в наименьшем параллелепипеде (со сторонами, параллельными координатным осям), в который помещаются центры атомов данного множества. Если же задать ему значение, скажем, 2.5, то этот параллелепипед будет расширен на 2.5 ангстрема в каждую сторону.

Команда isodot имеет точно такой же синтаксис.

Изображения можно красить командой color (или из правого меню) и уничтожать командой delete.

Множества

Стандартные множества

название

краткая форма

значение

примеры

all

*

все атомы

none

пустое множество

visible

v.

Все атомы, тем или иным способом показанные в данный момент в графическом окне

hydro

h.

Все атомы водорода

hetatm

het

Все атомы, помеченные в PDB файле, как HETATM

resi

Остатки с данными номерами

resi 15-20

resn

Остатки с данными именами

resn lys+arg

chain

Цепи с данными идентификаторами

chain a+b

symbol

Атомы данных химических элементов

symbol c+s

name

Атомы с данными именами

name ca

Примеры:

PyMOL> color blue, all = PyMOL> color blue, *
PyMOL> hide hydro = PyMOL> hide h.
PyMOL> show spheres, hetatom = PyMOL> show spheres, het

Обозначения множеств

Синтаксис:

select "имя множества", "выделенное множество"

Примеры:

PyMOL> select akeeper, resi 1-10    #Выбирает 1-10 остатки и называет их akeeper
PyMOL> zoom akeeper                 #Взгляд камеры фиксируется на множестве akeeper
PyMOL> hide everything, akeeper     #множество akeeper не отображается
PyMOL> show spheres, akeeper        #Множество отображается в виде шаровой модели

В графическом окне справа есть меню, где отображаются множества, в нем можно делать с ними различные манипуляции

Можно манипулировать заданными множествами сколько угодно (пока вы их не удалите). В названиях могут быть только цифры, большие и маленькие латинские буквы и нижнее подчеркивание _

Когда удаляется группа, то атомы и связи остаются, просто они перестают так называться, когда же удаляются объекты, то они удаляются совсем, так что для их визуализации их необходимо снова загружать

Синтаксис:

delete "имя множества"
delete "имя объекта"

Примеры:

PyMOL> delete akeeper              # Множества akeeper нет, но все атомы на своих местах
PyMOL> delete resi 10-15           # Удаляются все атомы и связи остатков с 10 по 15

Группы атомов появляются в боковой панели вместе с объектами.

Выбранные группы атомов показаны россыпью розовых точек.

Группы продолжают работать даже после изменения в молекулярной структуре.

PyMOL> select bb, name c+o+n+ca     # создается множество bb
PyMOL> count_atoms bb               # PyMOL насчитал 52 атома в bb
PyMOL> remove resi 5                # все атомы из 5 остатка удаляются
PyMOL> count_atoms bb               # Теперь PyMOL насчитал 48 атомов в множестве bb

Отображения

Синтаксис::

hide "отображение"
show "отображение"

Примеры:

PyMOL>hide lines       # Объект из линий исчезает из окна
PyMOL>show sticks      # В окне появляется объект из палочек

другие виды отображения: ribbon, surface, mesh, cartoon, spheres, cell, dots

Цвета

Синтаксис:

color "цвет"
color "цвет", "выделенное множество"

Примеры:

PyMOL> color red               # Все отображаемые атомы красятся в красный цвет.
PyMOL> color red, name ca      # Только С-альфа атомы красятся в красный цвет.

Если нужно покрасить больше чем одно множество, их следует разделять запятыми.

Расстояния

Измерение расстояний между атомами двух множеств короче Х ангстрем

distance "имя группы растояний", "1 множество", "2 множество", "макс. длина в Ангстремах"
distance hbonds, all, all, 3.2   # Отмечаются расстояния между любыми двумя атомами, если они меньше 3,2 ангстрем

Операторы

Оператор

короткая запись

Что выбирается

not s1

! s1

Атомы, не включенные в s1

s1 and s2

s1 & s2

Атомы, включенные и в s1, и в s2

s1 or s2

s1 | s2

Атомы из s1 и из s2

s1 like s2

s1 l. s2

Атомы из s1 совпадающие именем с атомами из s2

s1 gap X

s1 gap X

Атомы на расстоянии больше Х ангстрем от множества s1

s1 around X

s1 a. X

Атомы на расстоянии меньше Х ангстрем от множества s1

s1 expand X

s1 e. X

Расширяет s1, включая все атомы на расстоянии меньше Х ангстрем от s1

s1 within X of s2

s1 w. X of s2

Атомы из s1 на расстоянии не большем, чем Х ангстрем от s2

neighbor s1

nbr. s1

Атомы, непосредственно связанные с s1

Примеры:

PyMOL> select bb, chain a and (not resi 125)           # Определяет множество bb как все атомы из цепи A, кроме 125 остатка
PyMOL> select bb, chain a gap 5 and chain a around 10  # Определяет множество bb как все атомы на расстоянии от 5 до 10 ангстрем от цепи A

Макросы

Макросы позволяют записать длинные записи коротко, так, например

PyMOL> color red, pept and segi lig and chain b and resi 142 and name ca

можно записать, как

PyMOL> color red, /pept/lig/b/142/ca

Макросы задаются следующим путем:

/object-name/segi-identifier/chain-identifier/resi-identifier/name-identifier

PyMol воспринимает макрос как одно слово, так что никаких пробелов между слэшами не должно быть.

Макросы иерархичны, и их можно начинать с любого подмножества

   /object-name/segi-identifier/chain-identifier/resi-identifier/name-identifier
   /object-name/segi-identifier/chain-identifier/resi-identifier
   /object-name/segi-identifier/chain-identifier
   /object-name/segi-identifier
   /object-name

Примеры:

PyMOL> zoom /pept
PyMOL> show spheres, /pept/lig/
PyMOL> show cartoon, /pept/lig/a
PyMOL> color pink, /pept/lig/a/10
PyMOL> color yellow, /pept/lig/a/10/ca

Если макрос не начинается со слэша, то иерархия идет в обратном порядке:

                                             resi-identifier/name-identifier
                            chain-identifier/resi-identifier/name-identifier
            segi-identifier/chain-identifier/resi-identifier/name-identifier
object-name/segi-identifier/chain-identifier/resi-identifier/name-identifier

также можно оставлять незаполненными промежуточные идентификаторы.

Примеры:

PyMOL> zoom 142/                     # Зум на остаток 142
PyMOL> show spheres, 156/ca          # С-альфа атом в 156 остатке отображается как сфера
PyMOL> show cartoon, a//             # Цепь А изображается в стиле cartoon
PyMOL> color pink, pept//b           # Цепь В из объекта pept красится в розовый цвет

Скрипты и логи

Скрипты в PyMol — всего лишь текстовые файлы с расширением .pml, чтобы запустить скрипт под windows, необходимо открыть в панели отдел file → run или же в командной строке. Синтаксис:

@script-file-name

Пример:

PyMOL> @my_script.pml

Лог файл — это файл, записывающий все действия, произведенные в командной строке Чтобы начать ведение лога, необходимо написать команду log_open <log-file-name>, и все действия будут записаны в этот лог-файл.

Помощь

Чтобы получить описание команды, надо набрать help "имя команды" Полный список команд можно получить, введя в командной строке help и нажать Enter

Установка PyMol под Windows

Читать тут http://www.pymolwiki.org/index.php/Windows_Install .

Вероятно, всё это лучше делать под административным аккаунтом..

  1. Поставить Python 2.7.15 (качать тут https://www.python.org/downloads/windows/ ). Если установлена более старая, чем 2.7.9, версия (например, 2.7.3) то можно вместо установки новой версии поставить программу pip:

    1. Cкачать тут https://pip.pypa.io/en/latest/installing.html скрипт get-pip.py.

    2. Запустить C:\Python27\python.exe get-pip.py
  2. Поставить Microsoft Visual C++ Compiler for Python 2.7 (качать тут http://www.microsoft.com/en-us/download/details.aspx?id=44266 ).

  3. Перезагрузить компьютер.
  4. Скачать подходящую версию с https://www.lfd.uci.edu/~gohlke/pythonlibs/#pymol (имеет значение, 32-битная у вас система или 64-битная, в первом случае надо выбирать wheel-файлы, кончающиеся на win32.whl, во втором — на ‑win_amd64.whl).

  5. Запустить C:\Python27\Scripts\pip.exe install <имя скачанного wheel-файла> .

  6. Создать ярлык к C:\Python27\Scripts\pymol.cmd, поместить его на рабочий стол или в меню Пуск.
  7. Проверить, что PyMol запускается и работает.

Другие варианты (С.А.С.)

Можно поставить себе "образовательный" вариант PyMol, см. https://pymol.org/edu/ .

Я поставил себе дома PyMol так: установил пакет Anaconda Python 2.7 version (см. https://www.anaconda.com/download/ ), затем запустил командную строку Anaconda под администратором и выполнил там команду:

conda install -c schrodinger pymol

При первом запуске PyMol предлагает купить лицензию, но этот этап можно пропустить, тогда в графическом окне постоянно присутствует надпись "No license file", которая, впрочем, совершенно не мешает. Как ни удивительно, после команд ray и png появляется картинка безо всяких надписей, так что этот вариант вполне годится для наших целей.

Дополнительно

Ещё одно краткое руководство по PyMol

Полный гайд по PyMol содержится по ссылке PyMol Users Manual

Огромное количество примеров, настроек и дополнительных функций — на PyMolWiki.

Main/PyMol (последним исправлял пользователь sas 2023-09-14 13:35:17)