Инсталиране и използване на pymbar под CentOS 7 и 8Съдържание:
1. Предварителна информацияPymbar е Python модул, реализиращ метода MBAR ("Multistate Bennett Acceptance Ratio"). Този модул може да взаимодейства с библиотеките на OpenMM през Python модула simtk (последния е част от пакета OpenMM). Което означава, че за да можете да използвате това взаимодействие (когато е нужно) то pymbar, трябва да имат достъп до работеща инсталация на OpenMM.
2. Изтегляне на изходния код на pymbar и инсталирането му с Intel Python 3Инсталирането на Intel Python 3 е описано в документа "Инсталиране на Intel Python 3 под CentOS 7 и 8". Изходният код на библиотеката може да бъде изтеглен от страницата на проекта: https://github.com/choderalab/pymbar/releases Препоръчително е да изтеглите и компилирате последната стабилна версия на кода на проекта. За примера тук се предполага, че това е 3.0.5. По времето, по което вие посетите страницата на проекта, там може да има по-нова стабилна версия. Изтеглянето и разпакетирането на кода може да стнане по следния начин: $ mkdir ~/build $ cd ~/build $ wget https://github.com/choderalab/pymbar/archive/3.0.5.tar.gz -O pymbar-3.0.5.tar.gz $ tar xvf pymbar-3.0.5.tar.gz Влезте в новосъздадената при разпакетирането директория: $ cd ~/build/pymbar-3.0.5 и в нея изпълнете (може да коригирате директориите, които са зададени като стойност на променливите $ mkdir -p /usr/unite/python-3.7.4-pymbar-3.0.5-intel/lib/python3.7/site-packages $ PATH=/opt/intel/intelpython3/bin:$PATH PYTHONPATH=/usr/unite/python-3.7.4-pymbar-3.0.5-intel/lib/python3.7/site-packages python3 setup.py install --prefix=/usr/unite/python-3.7.4-pymbar-3.0.5-intel По подобен случай може да компилирате и инсталирате кода с използването на Python версия различна от Intel Python 3. Просто коригирайте стойността на променливата
3. Тест за взаимодействие на инсталирания модул с бибилотеките на OpenMMВАЖНО! С малки изключения този тест може да бъде извършен с всяка поддържана в момента версия на Python, дори тази, която идва с дистрибуцията и която има на разположение съвремена версия на модулите scipy и numpy. За да извършите теста е нужно да създадете директория, в която да копирате и стартирате скрипта $ mkdir ~/test $ cd ~/test $ cp /usr/unite/openmm-7.4.1-intel/examples/argon-chemical-potential.py . $ sed -i 's/from timeseries import/from pymbar.timeseries import/'g argon-chemical-potential.py $ PATH=/opt/intel/intelpython3/bin:$PATH PYTHONPATH=/usr/unite/python-3.7.4-simtk-intel/lib/python3.7/site-packages:/usr/unite/python-3.7.4-pymbar/lib/python3.7/site-packages python3 argon-chemical-potential.py При успешно изпълнение на теста (това е последния команден ред по-горе), ще бъде изведена информация за свободната енергия: Free energy differences (in kT) [[ 0. 1.06371584 3.99126798 4.89827915 5.04677385] [-1.06371584 0. 2.92755214 3.83456331 3.98305801] [-3.99126798 -2.92755214 0. 0.90701117 1.05550587] [-4.89827915 -3.83456331 -0.90701117 0. 0.1484947 ] [-5.04677385 -3.98305801 -1.05550587 -0.1484947 0. ]] Statistical errors (in kT) [[0. 0.06880369 0.38841223 0.54633586 0.57776226] [0.06880369 0. 0.35282101 0.52041725 0.55333789] [0.38841223 0.35282101 0. 0.25914328 0.31795684] [0.54633586 0.52041725 0.25914328 0. 0.11670137] [0.57776226 0.55333789 0.31795684 0.11670137 0. ]] Free energy of inserting argon particle: 5.047 +- 0.578 kT
4. Тестове включени в инсталационния пакет на модулаЗа да извършите тези тестове ще са ви нужни допълнителни модули, които може да инсталирате само времено, в рамките на виртуална среда за Python. За да създадете виртуалната среда, изпълнете следното: $ sudo dnf install python3-virtualenv $ virtualenv -p /opt/intel/intelpython3/bin/python3 ~/tmp/virtenv $ source ~/tmp/virtenv/bin/activate След като изпълните последния команден ред, ще забележите, че в началото на реда на командния интерпретатор ще се появи (virtenv) [test@wks-1 virtenv]$ Не излизайте от виртуалната среда по време на изпълнение на тестовете по-долу! В директория alchemical-free-energy constant-force-optical-trap harmonic-oscillators heat-capacity parallel-tempering-2dpmf umbrella-sampling-pmf Обърнете внимание, че директория Всички тестове в останалите 5 поддиректории се извършват във виртуалната Python среда, в която влизате според инструкциите дадени по-горе. Ако при изпълнението на тестовете не сте в тази среда, то няма да може да следвате примерите, които са дадени по-долу. Изпълнете тестовете в реда показан по-долу:
Можете да излезете от виртуалната Python среда чрез Ctrl-D |
Последна актуализация: 4 март 2020
2020 УНИТе, Веселин Колев