Skip to main content

MMPB(GB)SA tools for calculate energy.

Project description

Uni-GBSA: An Automatic Workflow to Perform MM/GB(PB)SA Calculations for Virtual Screening==============================================================================[ChemRxiv]## BackgroudMolecular mechanics/Generalized-Born (Poisson–Boltzmann) surface area (MM/GB(PB)SA), which balance accuracy and efficiency, is a good choice for evaluating binding free energy in virtual screening. Uni-GBSA, an automatic workflow to perform MM/GB(PB)SA calculations from force field building, structure optimization to free energy calculation. ## Install### Install by condaTo run uni-GBSA, you need install some third-party software( acpype, gmx_MMPBSA, lickit, etc.).Bashconda create -n gbsa -c conda-forge acpype openmpi mpi4py gromacsconda activate gbsapip install unigbsa gmx_MMPBSA>=1.5.6 lickit### Install by dokcer imagesYou can build a dokcer image by this file or just pull from the docker hub docker pull dockerymh/unigbsa````PlaintextFROM continuumio/miniconda3# 1. create a enveriomentSHELL ["/bin/bash", "-c"]RUN conda create -n gbsa -c conda-forge acpype openmpi mpi4py gromacs \&& echo 'conda activate gbsa' >> ~/.bashrc \&& rm -rf /opt/conda/pkgs/* # 2. install unigbsaRUN source ~/.bashrc \ && pip install unigbsa gmx_MMPBSA>=1.5.6 lickit \&& rm -rf ~/.cache/*```## Usage & Examples### Usage```bash$ unigbsa-pipeline -husage: unigbsa-pipeline [-h] -i RECEPTOR [-l LIGAND [LIGAND ...]] [-c CONFIG] [-d LIGDIR] [-f PBSAFILE] [-o OUTFILE] [-nt THREAD] [--decomp] [--verbose] [-v]GBSA Calculation. Version: 0.0.9_devoptions: -h, --help show this help message and exit -i RECEPTOR Input protein file with pdb format. -l LIGAND [LIGAND ...] Ligand files to calculate binding energy. -c CONFIG Configue file, default: /opt/miniconda3/envs/test/lib/python3.10/site-packages/unigbsa-0.0.9.dev0-py3.10.egg/unigbsa/data/default.ini -d LIGDIR Floder contains many ligand files. file format: .mol or .sdf -f PBSAFILE gmx_MMPBSA input file. default=None -o OUTFILE Output file. -nt THREAD Set number of thread to run this program. --decomp Decompose the free energy. default:False --verbose Keep all the files. -v, --version show program's version number and exit```### Example```bash$ unigbsa-pipeline -i example/1ceb/1ceb_protein.pdb -l example/1ceb/1ceb_ligand.sdf -o BindingEnergy.csv10/08/2022 13:46:09 PM - INFO - Build protein topology.10/08/2022 13:46:10 PM - INFO - Build ligand topology: 1ceb_ligand1 molecule converted10/08/2022 13:46:13 PM - INFO - Running energy minimization: 1ceb_ligand10/08/2022 13:46:14 PM - INFO - Run the MMPB(GB)SA.10/08/2022 13:46:18 PM - INFO - Clean the results.================================================================================Results: Energy.csv Dec.csvFrames mode detal_G(kcal/mole) 1 gb -20.4421```## Other ToolsThis packge contains many command lines: unigbsa-scan, unigbsa-pipeline, unigbsa-traj, unigbsa-pbc, unigbsa-buildtop, unigbsa-buildsys, unigbsa-md.### unigbsa-scan>Scan best GB/PBSA parameters with experient data.```Bashusage: unigbsa-scan [-h] [-i RECEPTOR] [-pd PROTDIR] [-l LIGAND [LIGAND ...]] [-ld LIGDIR] -e E -c PARASFILE [-o OUTDIR] [-nt THREAD] [--verbose]GBSA Calculation.optional arguments: -h, --help show this help message and exit -i RECEPTOR Input protein file with pdb format. -pd PROTDIR Floder contains many protein files. file format: .pdb -l LIGAND [LIGAND ...] Ligand files to calculate binding energy. -ld LIGDIR Floder contains many ligand files. file format: .mol or .sdf -e E Experiment data file. -c PARASFILE Parameters to scan -o OUTDIR Output directory. -nt THREAD Set number of thread to run this program. --verbose Keep all the files.```>Example```Bashunigbsa-scan -i example/scan/protein.pdb -ld example/scan/ -e example/scan/ligands.csv -c example/scan/scan.json -o scan-demo -nt 4```### unigbsa-pipeline>A very simple pipeline to calculate the PBSA/GBSA value. You just need input a protein file and some ligands files. It will obtain the PBSA/GBSA value for this ligands.* If you want do minimization or MD simulation for the complex. Just use the ``unigbsa-pipeline`````Bashusage: unigbsa-pipeline [-h] -i RECEPTOR [-l LIGAND [LIGAND ...]] [-c CONFIG] [-d LIGDIR] [-f PBSAFILE] [-o OUTFILE] [-nt THREAD] [--decomp] [--verbose]GBSA Calculation.optional arguments: -h, --help show this help message and exit -i RECEPTOR Input protein file with pdb format. -l LIGAND [LIGAND ...] Ligand files to calculate binding energy. -c CONFIG Configue file, default: default.ini -d LIGDIR Floder contains many ligand files. file format: .mol or .sdf -f PBSAFILE gmx_MMPBSA input file. default=None -o OUTFILE Output file. -nt THREAD Set number of thread to run this program. --decomp Decompose the free energy. default:False --verbose Keep all the files.```You can change the parameters for calculations by settig a configue file(default.ini). ```; parameters for simulation[simulation]; input pose process method: ; input - just use input pose to calculation; em - run a simple energy minimizaion for the input poses; md - run a md simulation for the input posesmode = em; simulation box type: triclinic, cubic, dodecahedron, octahedronboxtype = triclinic; Distance between the solute and the simulation boxboxsize = 0.9; Specify salt concentration (mol/liter). This will add sufficient ions to reach up to the specified concentrationconc = 0.15; number of md simulation stepsnsteps = 500000; number of equilibrium simulation(nvt, npt) stepseqsteps = 50000; number of structure to save for the md simulationnframe = 100; protein forcefield (gromacs engine)proteinforcefield = amber03; ligand forcefield (acpype engine)ligandforcefield = gaff; ligand charge method: bcc, gasligandCharge = bcc; parameters for PBSA/GBSA calculation, support all the gmx_MMPBSA parameters[GBSA]; calculation namesys_name = GBSA; calculation mode, Separated by commas. gb,pb,decompositionmodes = gb; best parameters for PBSA/GBSA calculations obtained from Wang, Ercheng, et al. Chemical reviews 119.16 (2019): 9478-9508.igb = 2indi = 4.0exdi = 80.0```### unigbsa-traj>Calculate the PBSA/GBSA value for a md trajectory. Most important, you need to prepare a gromacs index.ndxfile which contains two groups namedRECEPTORandLIGAND`.unigbsa-traj -husage: unigbsa-traj [-h] -i INP -p TOP -ndx NDX [-m {gb,pb,pb+gb,gb+pb}] [-t TRAJ] [-indi INDI] [-dec] [-D]Free energy calcaulated by PBSA method.optional arguments: -h, --help show this help message and exit -i INP A pdb file or a tpr file for the trajectory. -p TOP Gromacs topol file for the system. -ndx NDX Gromacs index file, must contain recepror and ligand group. -m {gb,pb,pb+gb,gb+pb} Method to calculate: gb, pb, pb+gb. default:gb -t TRAJ A trajectory file contains many structure frames. File format: xtc, pdb, gro... -indi INDI External dielectric constant. detault: 1.0 -dec Decompose the energy. default:false -D DEBUG model, keep all the files.### unigbsa-buildtop>Build topology for protein or ligand by gromacs.Bashunigbsa-buildtop -husage: unigbsa-buildtop [-h] [-p PROTEIN] [-l LIGAND] [-pf PROTFORCE] [-lf {gaff,gaff2}] [-o OUTDIR] [-c] [-verbose]Build topology file for input file.optional arguments: -h, --help show this help message and exit -p PROTEIN Protein file or directory to build topology. -l LIGAND Ligand file or directory to build topology. -pf PROTFORCE Protein forcefield. -lf {gaff,gaff2} Ligand forcefiled: gaff or gaff2. -o OUTDIR A output directory. -c Combine the protein and ligand topology. Suppport for one protein and more ligands. default:True -verbose Keep the directory or not.### unigbsa-buildsys>Build simulation system for protein or ligand.```bashunigbsa-buildsys -husage: unigbsa-buildsys [-h] -p PROTEIN [-l LIGAND] [-pf PROTFORCE] [-lf {gaff,gaff2}] [-bt BOXTYPE] [-box BOX BOX BOX] [-d D] [-conc CONC] [-o OUTDIR]Build MD simulation for input file.optional arguments: -h, --help show this help message and exit -p PROTEIN Protein file for the simulation. -l LIGAND Ligand file or directory for the simulation. -pf PROTFORCE Protein forcefield. -lf {gaff,gaff2} Ligand forcefiled: gaff or gaff2. -bt BOXTYPE Simulation box type, default: triclinic -box BOX BOX BOX Simulation box size. -d D Distance between the solute and the box. -conc CONC Specify salt concentration (mol/liter). default=0.15 -o OUTDIR A output directory.```### unigbsa-md>Run a MD simulation for input protein or ligand.```Bashunigbsa-md -husage: unigbsa-md [-h] -p PROTEIN [-l LIGAND] [-pf PROTFORCE] [-lf {gaff,gaff2}] [-bt BOXTYPE] [-box BOX BOX BOX] [-d D] [-conc CONC] [-o OUTDIR] [-nstep NSTEP] [-nframe NFRAME] [-verbose]Run MD simulation for input file.optional arguments: -h, --help show this help message and exit -p PROTEIN Protein file for the simulation. -l LIGAND Ligand file or directory for the simulation. -pf PROTFORCE Protein forcefield. -lf {gaff,gaff2} Ligand forcefiled: gaff or gaff2. -bt BOXTYPE Simulation box type, default: triclinic -box BOX BOX BOX Simulation box size. -d D Distance between the solute and the box. -conc CONC Specify salt concentration (mol/liter). default=0.15 -o OUTDIR A output directory. -nstep NSTEP Simulation steps. default:2500 -nframe NFRAME Number of frame to save for the xtc file. default:100 -verbose Keep all the files in the simulation.```### unigbsa-pbc>Process PBC condition for the gromacs trajectory.```Bashunigbsa-pbc -husage: unigbsa-pbc [-h] -s TPR -f XTC [-o OUT] [-n NDX]Auto process PBC for gromacs MD trajector.optional arguments: -h, --help show this help message and exit -s TPR TPR file generated from gromacs or coordinate file. -f XTC Trajector file to process PBC. -o OUT Result file after processed PBC. -n NDX Index file contains the center and output group.```### More Examples* Give a protein and some ligand files. Obtain the PBSA with unigbsa-pipeline``````Bashunigbsa-pipeline -i ./example/2fvy/protein.pdb -l ./example/2fvy/BGC.mol2````* Calculate PBSA value with unigbsa-trajBashunigbsa-traj -i example/3f/complex.pdb -p example/3f/complex.top -ndx example/3f/index.ndx -m pb gb -t example/3f/complex.pdb```* Build topology for protein or ligand by gromacs. ``unigbsa-buildtopbashunigbsa-buildtop -p example/2fvy/protein.pdb -pf amber99sb -o topol # build gromacs topology for a single proteinunigbsa-buildtop -p example/2fvy/protein.pdb -pf amber99sb -l example/2fvy/BGC.mol2 -lf gaff -o 2fvy_topol -c # build gromacs topology for protein and ligand complex```* Build simulation system with ``unigbsa-buildsys``* Run MD simulation with ``unigbsa-md``* Process PBC condition with ``unigbsa-pbc``## Citation```plaintextYang M, Wang D, Zheng H. Uni-GBSA: An Automatic Workflow to Perform MM/GB(PB)SA Calculations for Virtual Screening. ChemRxiv. Cambridge: Cambridge Open Engage; 2022; This content is a preprint and has not been peer-reviewed.```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

unigbsa-0.1.2.tar.gz (406.7 kB view hashes)

Uploaded Source

Built Distribution

unigbsa-0.1.2-py3-none-any.whl (417.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page