GromacsWrapper是一个调用Gromacs工具的封装Python包,其能够完美的通过python脚本来运行gromacs工具。其相比shell脚本在错误处理和结构检测中更具优势,同时其模块化以及代码的循环利用也是该软件包的一大特色
其支持的gromacs版本有(v4.6.x, v5.x, and 2016.x)
笔者写这篇文章时版本为0.6.2,版本更新请查看最新文档

一、安装

1.快速安装

建议使用这个方法,简单方便:

1
pip install GromacsWrapper

2.手动安装

如果你更加喜欢下载安装,可以进入https://github.com/Becksteinlab/GromacsWrapper/releases下载安装,笔者写此篇文章时版本为0.6.2

1
pip install GromacsWrapper-0.6.2.tar.gz

或者下载下来本地安装:

1
2
3
tar -zxvf GromacsWrapper-0.6.2.tar.gz
cd GromacsWrapper-0.6.2
python setup.py install

3.要求

GromacsWrapper包需要使用python2.7版本,同时需要numpy,matplotlib以及scipyRecSQL的支持,同时官网强烈推荐ipython的安装,所以强烈建议下载一个Anconda
若还没有使用过anconda建议看一下先前的一篇文章
我们仅需要创建一个新的python环境,然后pip RecSQL,conda安装以上包即可。

简单代码可以参考如下,也可以当作是一个温故知新吧:

1
2
3
4
5
6
7
#配置环境与安装
conda create --name gromacsw python=2.7 matplotlib scipy numpy jupyter
#激活环境
source activate gromacsw
#安装剩余依赖与软件
pip install recsql
pip install GromacsWrapper

二、设置

GromacsWrapper安装好以后我们需要对其进行设置,从而能够使得其来阅读与操作。
gromacswarapper.cfg在模块根目录可以查看到,例如我安装的位于miniconda3/envs/gromacsw/lib/python2.7/site-packages/gromacs/templates目录下。在首次导入时,将会提示你进行设置,设置的方法也非常的简单。

1
2
import gromacs
gromacs.config.setup()

其将会在~/.gromacswrapper.cfg创建一个设置文件,同时会创建一个~/.gromacswapper的目录文件,那么你可以对其进行编辑了,以下为具体的设置内容与解释:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
[DEFAULT]
# 存储用户模板与rc文件.
configdir = ~/.gromacswrapper
# 存储用户系统脚本.
qscriptdir = %(configdir)s/qscripts
# 存储用户模板例如mdp文件.
templatesdir = %(configdir)s/templates
# 存储用户管理设置文件
managerdir = %(configdir)s/managers
[Gromacs]
# gromacs安装的版本.
# gromacs路径
## GMXRC = /usr/local/gromacs/bin/GMXRC
#如果为空默认先搜索gromacs5,然后是gromacs4
##release = 5.1.2
# Gromacs工具所有的工具名
#编辑此列表仅在重新加载软件包时才起作用。.
# - for Gromacs 4: Generated with 'ls [^Gac]*' from the Gromacs bin dir
## tools = ...
# - 对于Gromacs5版本,仅需设置如下即可
## tools = gmx gmx_d
# 哪些工具可用作为 gromacs.NAME
# 一般不需要修改
## groups = tools
[Logging]
# 在当前目录下写下什么日志文件
logfilename = gromacs.log
# 日志文件等级 (see Python's logging module for details)
#
# ERROR only fatal errors
# WARN only warnings
# INFO interesting messages
# DEBUG everything
#
# 写在屏幕上什么内容
loglevel_console = INFO
# file 什么消息写在日志文件中
loglevel_file = DEBUG

其中版本可以通过gmx -version(5X版本)查看,GMXRC路径可以搜索一下,若是apt-get安装我的是/usr/share/gromacs/shell-specific/GMXRC仅供参考。

最后我们可以检测一下是否设置好

1
gromacs.config.check_setup()

不出意外的话返回的为True