Я уже писала о том, как вызывать PyMOL из собственной программы на python, а сейчас - наоборот, как программу на python сделать функцией PyMOL. Надеюсь, вы уже смирились с тем, что самое интересное в PyMOL доступно через командную строку, и это вас не пугает.
Так как почти наверняка мы будем использовать в программе какие-то функции PyMOL, в скрипте под названием например myscript.py надо написать вот это:
from pymol import cmd
Дальше описываем функцию, которую хотим выполнять - для примера пусть это будет измерение доступной поверхности остатков 35-49 цепи A заданного файла:
def surf35_49(fname):
cmd.load(fname)
cmd.select("sel1","chain A and resi 35-49")
area = cmd.get_area("sel1")
print fname, area
И осталось определить новую команду PyMOL (пусть она будет называться также surf35_49) и привязать к ней эту функцию:
cmd.extend('surf35_49',surf35_49)
Все, теперь файл muscript.py готов. В одном файле, кстати, может быть описано несколько функций. Чтобы они стали доступны в PyMOL, надо ввести вот эту команду:
run myscript.py
Иногда по довольно загадочным причинам (загадочным для меня, так как я не очень в это вникала) это не работает, а
spawn myscript.py- работает.
После этого скрипт загружен в PyMOL, и для того чтобы применить нашу функцию к файлу file1.pdb достаточно в командной строке PyMOL ввести
surf35_49 file1.pdb
Вот по этому адресу можно посмотреть всякие полезные примеры скриптов: http://pldserver1.biochem.queensu.ca/~rlc/work/pymol/.
о как. т.е. посчитать SAA (solvent accesible aerea) это просто и удобно в паймоле?
ОтветитьУдалить«Было здорово узнать, что есть кто-то, кто знает, как упасть и снова встать. Мы всегда остаемся скромными и никогда не сдаемся, и за помощь г-на Бенджамина Ли в получении ссуды от его фирмы на расширение моего бизнеса в решающий момент. Поддержка, которую я получил от его ссудной фирмы, была довольно честной и привлекательной низкой ставкой взамен. Г-н Бенджамин Ли - кредитный специалист, работающий с группой инвесторов, которые готовы финансировать любой тип бизнеса или предоставлять ссуды для личного пользования, если их возврат гарантирован.
ОтветитьУдалитьВы можете связаться с их электронной почтой по адресу 247officedept@gmail.com или Whatsapp, мистер Ли, по телефону + 1-989-394-3740.