The program and modules used in Atomevo platform
The modules and software used in this platform are all open source projects or academic free software, and the modules are secondary-developed. The modules used mainly include: (1) molecular docking software: AutoDock Vina (Linux 1.2 version, open source project) (Eberhardt et al. 2021); molecular Docking scoring software XScore (academic free, non-open source project) (Wang et al. 2002) protein–ligand interaction analysis tool Protein–Ligand Interaction Profiler (academic free, open source project, https://github.com/ssalentin/plip) (Salentin et al. 2015); chemical toolbox openbabel (open source project, https://github.com/openbabel/openbabel) (O’Boyle et al. 2011); GROMACS2019.1. (open source project) (Berendsen et al. 1995).
Implementation of Atomevo platform
The Atomevo web server consists of the user interface, the local server and the job backend. The user interface is implemented in https://atomevo.com. This interface allows user to upload the input files and the configure parameters (or files), as well as download the output files. The normal server is deployed in Ali Cloud Server and the advance server is deployed in our local server with Intel(R) Xeon(R) CPU E5-2690 v3, MSI RTX 2080 with 8 GB of RAM, MD1200 storage devices 72 TB and 64 GB RAM.
The job backend is developed using PHP technology. Thinkphp framework is used as a backend development framework and Medoo as a database framework. Axios is used to send the request to the background and Workerman is used to build the instant messaging framework.Vue.js is used to build progressive framework and Wepack module loader is used to convert the dependent module to static files which represents these packages. PhpSpreadsheet, a plug-in, is used to score statistics, and Handsontable, a tabular interactive plug-in in the footer, is used to organize, count, calculate and summarize the tables.
Implementation of protein homologous modeller module
We have created the Modeller module on the Atomevo platform to perform Homology Modeling online (https://atomevo.com/modeller).
The algorithm of the Modeller module includes several steps (Fig. 1): (1) input files (*.pdb, *.ali) for Modeller single-template modeling module calculation; (2) performing the Modeller calculation and obtaining the calculation results file (*.pdb, *.ali, *.ini, *.rsr, *.sch and *.pap files); and (3) output files and provide them to users for download.
The Modeller module is divided into three sub-modules: single-template modelling module, multi-template modelling module, and sequence alignment module. Its workflow includes the following steps (take a single-template modelling module as an example): (1) the user uploads the hydrogenated pdb file and the template ali file and submits a calculation task to the server; (2) after receiving the calculation request submitted by the user, the server creates a new calculation process and calls the calculation script of the Modeller single-template modelling module to calculation for protein homologous; and (3) when the calculation is completed, the server terminates the calculation process and moves the output file to a folder named after the task number, packs the folder, and sends the calculation file and task completion reminder mail to the user through the phpmailer module.
Implementation of the molecular docking module
To perform virtual screening of lipase by parallel module of Autodock Vina online, we have established the Autodock Vina module on the platform (https://atomevo.com/autodock-vina).
The Autodock Vina module includes two parts: Vina docking module and result analysis module.
The algorithm of the Autodock Vina module includes several steps (Fig. 2): (1) creating the vina configure file (conf.txt) by reading the parameters in the configure file (*.xlsx); (2) converting input file (*.pdb) to *.pdbqt; (3) making separate directories for AutoDock vina calculation; (4) running docking (vina –configure vinadock.conf); and (5) analyzing the result.
Results analysis module is showed as follows:
(1) Vina result analysis: the multimodel pdbqt files (*_out.pdbqt) are split into individual models files (*_out*.pdbqt) using the vina_split command. The docking result of each individual model (including affinity (kcal/mol), dist from rmsd rmsd l.b., best mode rmsd u.b.) is exported through phpexcel plug-in into the vina-score file (vina-score.xlsx).
(2) X-Score analysis: first, the individual models files (*_out*.pdbqt) are converted to *_out*.mol2 by openbabel software; second, the ligand files (*_out*.mol2) and the receptor files (*.pdb) are submitted to the X-Score software (Wang et al. 2002). X-Score is a “Scoring function”, which has its major applications to structure-based drug design studies. It computes a binding score for a given protein–ligand complex structure, and this binding score correlates to experimental binding constants well. Three individual empirical scoring results, including HPScore, HMScore, and HSScore are exported through phpexcel plug-in into the ledock-score file (ledock-score.xlsx).
The computing platform is divided into Molecular preprocessing module, docking computing module, Grading module, and protein–ligand interaction analysis module.
The molecular preprocessing module mainly consists of the Openbabel module. Its workflow includes the following steps: (1) the user sends a compute request to the background through Axios from the client. Then the structure file needed to be converted should be uploaded to the server. And then, the user can select the output file type and output settings. (2) The Thinkphp framework is called the Openbabel software for calculation when the server receives the request. And finally, the server tidies up the compressed output file through Linux’s compressed packaging commands.
The Docking computing module’s workflow includes several steps: (1) the client is used to submit computational requests through the network interface and upload the relevant ligands, receptor structures, and docking condition profiles; (2) when the server receives the request, the server runs the modules of AutoDock Vina for docking calculation; and (3) the Linux operating system’s file consolidation functions are used to settle the input file, output parameter file and pigeonhole to Input file, Output file, Parameter and Result separately.
The implementation method of molecular docking parallel computing: split the execution task of autodock_vina.php and create the Child process file named autodock_vina_chind.php. The Child process is in charge of the calculating and scoring operations between a single ligand and receptor. The result will be stored in the Redis. The calculation between a ligand and a receptor is performed in this file. When a new task is received, autodock_vina.php will use Popen (a php function) to perform autodock_vinachind.php subprocess file and return a file pointer to Parent process autodock_vina.php. The while loop condition formulation is used to wait for the end of Child process, and Fget (a php function) is used to determine if it is false and Pclose (a php function) is used to close all the completed subprocess files. Then the Child process continues to open until all the tasks in the configure.xlsx are completed. When all the Child processes are completed, the Parent process reads the data in Redis module to perform a series of operations, such as summarizing the data.
The Grading module’s workflow includes several steps: (1) the Grading module invokes the calculated results of the docking ligands (which requires mol2 format, otherwise use openbabel for conversion) and docking receptor file (which need pdb format, otherwise use openbabel for conversion) in the computing platform automatically; (2) the XScore is invoked to calculate through the Thinkphp framework and grade the results; and (3) the PhpSpreadsheet and Handsontable plug-in are invoked to summarize, sort out and output the docking scoring results of each group of docking calculations which is from XScore score result and the corresponding calculation module.
Molecular dynamic simulation detail for MT-CalB using Gromacs module
To exam the conformational stability of the receptor–ligand complex, the Gromacs model builder module is deployed on the Atomevo platform (https://atomevo.com/gromacs).
The algorithm detail of the Gromacs_model_builder module includes several steps (Fig. 3): (1) creating the Gromacs_model_builder configure file by reading the parameters in the configure.file (*.xlsx); (2) inputing files (*.gro, *.top, *.itp and *.mdp) for Gromacs_model_builder calculation; (3) performing the define box and dolvate, add ions and energy minimization calculation; (4) generating NVT.mdp, NPT.mdp and MD.mpt file for NVT ensemble, NPT ensemble and MD simulation; and (5) generating a shell script to enable user to run equilibration and production MD process in their own computer.
In this research, the MT-CalB with Chaulmoogric Acid (CA) ligands was placed into the center of a cubic, in which the MT-CalB–ligand complex was 1.5 nm apart from the box margin (with the size of 15.302 11.055 8.518 nm). Then, 15 Na + were added to the box to balance the electrical neutrality of the simulation system.
First, the simulation box was submitted to 50,000 steps of energy minimization (EM) at 303.15 K using Particle-Mesh Ewald method. Then, position-restrained MD simulation was performed to equilibrate the solvent and ions around the ligand–receptor molecule via NVT ensemble (constant Number of particles, Volume, and Temperature), following by NPT ensemble (constant Number of particles, Pressure, and Temperature) and 50 ns production MD.
Implementation of the G_MMPBSA module
To execute g_mmpbsa calculations on the assembly model of receptor and ligands online, we have established the g_mmpbsa module on the Atomevo (https://atomevo.com/g-mmpbsa).
Algorithm details: g_mmpbsa module includes several steps (Fig. 4): (1) creating the g_mmpbsa configure.file by reading the parameters in the configure.file (*.xlsx); (2) inputing files (*.tpr, *.xtc, and *.ndx) for g_mmpbsa calculation; (3) performing the g_mmpbsa calculation and obtaining the calculation results file (*.xvg and *.dat files); and (4) analysing the result *.xvg and *.dat files by performing with two python scripts (MmPbSaStat.py and MmPbSaDecomp.py) and the results are exported through phpexcel plug-in into the ledock-score file (g_mmpbsa_analysis.xlsx).
The Molecular mechanics Poisson–Boltzmann surface area (MMPBSA) analysis was performed by g_mmpbsa tool (Kumari et al. 2014). This paper analyzed the last 10 ns of the MT-CalB models that has been balanced.
Experimental verification of design results for MT-CalB
The DNA sequence which encoding the Mycobacterium smegmatis porin A (mSpA) signal peptide was fused with both Maltose Binding Protein (MBP) and TrxA domains at the N-terminal of CalB domain, and cloned into the expression vector pETDuet-1 simultaneously to form the recombinant plasmid mSpA-MT-CalB-pETDuet-1. The E. coli strain containing mSpA-MT-CalB-pETDuet-1 was inoculated in the Luria–Bertani (LB) fermentation medium and incubated at 37 °C with shaking at 180 rpm, then 0.3 mM of Isopropyl β-d-1-thiogalactopyranoside (IPTG) inducer was added, while OD reached 0.6. Then the fermentation was performed at 15 °C for 30 h. The MT-CalB protein was extracted from the bacterial periplasmic space. The lipase activity could be detected as follows: a given amount of MT-CalB protein was first mixed with 2 mL phosphate buffered saline solution (50 mM, pH 7.0) at 30 °C, and then 1 mL N-α-benzoyl d, l-arginine-pyritroaniline solution (3.679 mM) was added to start the reaction. Finally, 5.3 mL anhydrous ethanol was added to terminate the reaction. The release amount of p-nitroaniline (pNA) can be determined by 405 nm spectrophotometry.
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.