gmx_MMPBSA安装在python3下,依赖于GROMACS(4.x.x或5.x.x、20xx.x)和AmberTools20或21。gmx_MMPBSA在GROMACS 4.6.7,5.1.2,2018.3,2020.4,2021.3版本中测试通过。
gmx_MMPBSA v1.5.x 包含了许多新功能,部分代码已经完全重写,因此它与以前的版本不兼容。
我个人比较喜欢conda安装,所以在此之前服务器上要已经安装anaconda。gmx_MMPBSA官网上提供了两种安装方法,我按照自己的安装步骤写一下(安装ambertools参考链接):
# Create a new environment and activate it
conda create -n gmxMMPBSA python=3.9 -y -q #这里python版本3.7也可以
conda activate gmxMMPBSA
# Install mpi4py
conda install -c conda-forge mpi4py=3.1.3 -y -q
# Install AmberTools
conda install -c conda-forge ambertools=22 compilers
# Install PyQt5 required to use the GUI analyzer tool (gmx_MMPBSA_ana). Not needed for HPC
python -m pip install pyqt5 # 安装PyQt5时会因为网络连接不好而中断,中断后再次安装即可
# Install gmx_MMPBSA
python -m pip install gmx_MMPBSA
在gmxMMPBSA环境下运行acpype生成小分子的拓扑文件,会报错:
找不到mopac.sh,大神的暴力破解方法:acpype.py中3185行把mopac替换成sqm即可
(gmxMMPBSA) [user@localhost acpype]$ ./acpype.py -i UNK_bcc_gaff.mol2
============================================================================
| ACPYPE: AnteChamber PYthon Parser interfacE v. 0 0 Rev: 0 (c) 2023 AWSdS |
============================================================================
WARNING: no 'babel' executable, no PDB file as input can be used!
==> ... charge set to 0
WARNING: Old version of antechamber. Strongly consider upgrading to AmberTools
WARNING: Setting mopac for antechamber
==> Executing Antechamber...
++++++++++start_quote+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Welcome to antechamber 22.0: molecular input file processor.
Info: acdoctor mode is on: check and diagnose problems in the input file.
Info: The atom type is set to gaff; the options available to the -at flag are
gaff, gaff2, amber, bcc, and sybyl.
-- Check Format for mol2 File --
Status: pass
Info: Ignoring Mol2 record type (@<TRIPOS>SUBSTRUCTURE).
Info: Finished reading file (UNK_bcc_gaff.mol2); atoms read (23), bonds read (22).
Info: Determining atomic numbers from atomic symbols which are case sensitive.
-- Check Unusual Elements --
Status: pass
-- Check Open Valences --
Status: pass
-- Check Geometry --
for those bonded
for those not bonded
Status: pass
-- Check Weird Bonds --
Status: pass
-- Check Number of Units --
Status: pass
acdoctor mode has completed checking the input file.
Running: /home/user/anaconda3/envs/gmxMMPBSA/bin/bondtype -j full -i ANTECHAMBER_BOND_TYPE.AC0 -o ANTECHAMBER_BOND_TYPE.AC -f ac
Running: /home/user/anaconda3/envs/gmxMMPBSA/bin/atomtype -i ANTECHAMBER_AC.AC0 -o ANTECHAMBER_AC.AC -p gaff
Info: Total number of electrons: 96; net charge: 0
Running: /home/user/anaconda3/envs/gmxMMPBSA/bin/mopac.sh
sh: /home/user/anaconda3/envs/gmxMMPBSA/bin/mopac.sh: No such file or directory
/home/user/anaconda3/envs/gmxMMPBSA/bin/wrapped_progs/antechamber: Fatal Error!
Cannot properly run "/home/user/anaconda3/envs/gmxMMPBSA/bin/mopac.sh".
++++++++++end_quote+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ERROR: Antechamber failed
++++++++++start_quote+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Cannot open file (UNK_bcc_gaff_bcc_gaff.mol2) with mode (r).
No such file or directory
++++++++++end_quote+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ERROR: Parmchk failed
ERROR: Tleap failed
==> Removing temporary files...
ACPYPE FAILED: [Errno 2] No such file or directory: 'UNK_bcc_gaff_AC.prmtop'
Total time of execution: less than a second
修改acpype.py后运行正常
(gmxMMPBSA) [user@localhost acpype]$ ./acpype.py -i UNK_bcc_gaff.mol2
============================================================================
| ACPYPE: AnteChamber PYthon Parser interfacE v. 0 0 Rev: 0 (c) 2023 AWSdS |
============================================================================
WARNING: no 'babel' executable, no PDB file as input can be used!
==> ... charge set to 0
WARNING: Old version of antechamber. Strongly consider upgrading to AmberTools
WARNING: Setting mopac for antechamber
==> Executing Antechamber...
==> * Antechamber OK *
==> * Parmchk OK *
==> Executing Tleap...
++++++++++start_quote+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Checking 'UNK'....
Checking parameters for unit 'UNK'.
Checking for bond parameters.
Checking for angle parameters.
Unit is OK.
++++++++++end_quote+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
==> * Tleap OK *
==> Removing temporary files...
==> Writing NEW PDB file
==> Writing CNS/XPLOR files
==> Writing GROMACS files
==> Writing GMX dihedrals for GMX 4.5 and higher.
==> Writing CHARMM files
==> Writing pickle file UNK_bcc_gaff.pkl
Total time of execution: 4s