moltiverse
Moltiverse
Moltiverse is an open-source molecular conformer generator available as a command line application written in the modern Crystal language.
Moltiverse uses the robust ecosystem of open-source applications to process the molecules and perform conformational sampling. The conformer generation protocol consists of seven main steps:
- Molecular pre-processing: Conversion of SMILES code into three-dimensional coordinates using Open Babel.
- Structure spreading.
- Molecule parameterization with the GAFF2 force field using Amber Tools.
- Energetic minimization.
- Molecular sampling in vacuum with the M-eABF method using the NAMD molecular simulation engine.
- Structure clustering.
- Conformer ensemble refinement using electronic structure optimization calculations with XTB software.
Installation
Prerequisites
- NAMD 2.14 multicore software must be installed and the
namd2
executable should be in the system path.
Quick Install
To install Moltiverse and its dependencies:
curl -fsSL https://raw.githubusercontent.com/ucm-lbqc/moltiverse/master/INSTALL.sh | bash
This command creates a "moltiverse" conda environment. To use Moltiverse, activate the environment:
conda activate moltiverse
Verifying Installation
To check that dependencies and versions are working correctly:
moltiverse --check
moltiverse --version
Custom Installation
To install a specific release or select which dependencies to install, download the 'INSTALL.sh' file and execute it:
bash INSTALL.sh
Requirements
External software:
Usage
[!IMPORTANT] This application is still under development and is not ready for production. Please note that we have not yet released a version or documentation. But stay tuned, we will do it soon ;).
- Check the examples directory for example input files:
- molecule.smi: An SMI file containing a single SMILES code and molecule name.
- molecules.smi: An SMI file with multiple SMILES codes and molecule names.
- You can modify the SMI file with your own molecules. SMILES codes can be obtained from PubChem.
- Running the application:
moltiverse -l molecule.smi --procs 2 moltiverse -l molecules.smi --procs 2
This command executes the entire protocol, creating a folder for each molecule in the SMI file. Each folder will contain the final conformers in various formats. The output files are as follows:
*mm.pdb
and*mm.sdf
: Conformers after molecular mechanics (MM) optimization.*qm.pdb
and*qm.sdf
: Final conformers after quantum mechanics (QM) optimization. These represent the end result of the protocol.*.pdb
and*.sdf
(without suffix): Raw conformers. These are primarily for development purposes and should be avoided for analysis.
Note: For most analyses and applications, use the *qm.pdb
or *qm.sdf
files, as they represent the final, optimized conformers. The -P
or --procs
option assigns processor cores to run the protocol. For laptops or modest computers we recommend to use a small amount of cores (1 to 4) to avoid failures. For computing clusters, a higher number of cores is preferred.
-
To test moltiverse with a short testing protocol (not for production, just for testing), use:
moltiverse -l molecule.smi --procs 2 -p test
The testing protocol performs only 0.8 ns of simulaton divided into two RDGYR windows, generating ~800 structures. The full protocol "v1" performs 24 ns of simulation divided into 12 RDGYR windows, generating ~30000 structures.
- Visualization
The following Notebook can be useful to quickly visualize an output SDF file and calculate some properties.
[!IMPORTANT] The notebook uses RDKit to calculate the properties, and these may differ from those calculated with chem.cr in our benchmark. The notebook is only for quick visualization and analysis.
Citing
If you use moltiverse
in your research, please consider citing the following article:
To be added
Contributing
- Fork it (https://github.com/ucm-lbqc/moltiverse/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Contributors
- Mauricio Bedoya - creator and maintainer
- Francisco Adasme - maintainer
License
To be added
Support
To be added
moltiverse
- 9
- 0
- 6
- 0
- 3
- 15 days ago
- September 4, 2023
GNU General Public License v3.0
Sun, 17 Nov 2024 11:57:51 GMT