PythonMMGBSA
Program for running end point free energy calculations on protein-ligand complexes using AMBER and its associated MMPBSA.py program. Requires only a protein and ligand structure as input.
Install / Use
/learn @mlawrenz/PythonMMGBSAREADME
This program will calculate binding free energies for protein-ligand complexes using the end-state MMGBSA free energy method, and includes a ligand strain penalty.
These programs require python >=v.2.7, and numpy >=v.1.8.1 and scipy >= v.0.14 libraries, as well as the MMPBSA.py program suite from this paper:
Miller III, B. R., McGee Jr., T. D., Swails, J. M. Homeyer, N. Gohlke, H. and Roitberg, A. E. J. Chem. Theory Comput., 2012, 8 (9) pp 3314--3321
To use the program you just need to set this python distribution directoy and Amber14 in your path: For BASH: export AMBERHOME=/common/compchem/src/amber14/ export PATH = /home/mlawrenz/mpich-3.1.2-build/bin/:$PATH export PATH= /common/compchem/src/amber14/bin:${PATH} export PATH= /common/compchem/anaconda/bin/:${PATH} export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/common/compchem/src/amber14/lib
For CSH: set path = ( /home/mlawrenz/mpich-3.1.2-build/bin/ $path) set path = ( /common/compchem/anaconda/bin/ $path) set path = ( /common/compchem/src/amber14/bin/ $path) setenv AMBERHOME /common/compchem/src/amber14/ *make sure this overrides any existing AMBER installations (modeling.cshrc has amber7)
make sure mpich-3.1.2 comes before anaconda directory in path, because
anaconda python comes with a mpirun that is not compatible with AMBER
The main run script has a help menu callable by: RunMMGBSA.py -h
This script runs through 6 main modules for the free energy calculation workflow:
mol=PythonMMGBSA.ambermol(args) # mol object is initialized with input
mol.run_antechamber() # generates ligand AMBER parameters
mol.run_leap() # builds complete (solvated) complex topology file
mol.run_cpx_simulation() # runs minimization or MD simulation
mol.run_ligand_strain() # computes ligand strain energy
mol.run_mmgbsa(complex=True) # computes MMGBSA free energy of binding
mol.print_table() # prints results.tbl in the output directory
If any step fails, you can check the .err file for detailed error output. You can also skip any of these steps by copying RunMMGBSA.py and customizing it with commented out steps. Each step does depend on standard names and formats for files.
The script will print 3 directories per ligand, an antechamber-output (contains ligand-specific parameters, a leap-output (contains simulation topology and coordinate files), and the $jobname-directory with a prefix that you feed in, with appended details of the simulation, i.e. complex1-explicit-gb1-md (explicit solvent, gb=1 model in AMBER, and MD)
The scripts requires a jobname, protein and ligand files (make sure these correspond to the predicted or experimental bound state and that the ligand residue is named MOL), and the netcharge of the ligand for the AM1-BCC charge calculation method.
The default option will run an explicit solvent minimization with gb=1 (see AMBER manual) used for the free energy calculation.
The script does not automatically launch LSF jobs You must submit these yourself, with the required computing resources specified to LSF. An example submission script is /common/compchem/mlawrenz/PythonMMGBSA/example-submission-script.sh
Related Skills
node-connect
344.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
96.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
344.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
344.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
