ISiCLE, or the in silico chemical library engine, is a pipeline for high-accuracy chemical property calculation. ISiCLE takes an InChI or SMILES string as input, generates an initial 3D conformation, and subsequently optimizes this initial structure through molecular dynamics simulations and quantum chemistry optimizations. Finally, ISiCLE simulates desired properties (e.g. collision cross section, NMR chemical shifts) for each conformer yielded during molecular dynamics simulations to produce a single value, Boltzmann-weighted by relative Gibb's free energy, giving emphasis to properties from highly probable conformations.
ISiCLE is implemented using the Snakemake workflow management system, enabling scalability, portability, provenance, fault tolerance, and automatic job restarting. Snakemake provides a readable Python-based workflow definition language and execution environment that scales, without modification, from single-core workstations to compute clusters through as-available job queuing based on a task dependency graph.
conda to create a new virtual environment with required dependencies:
conda create -n isicle -c conda-forge -c bioconda -c ambermd python=3.7 openbabel=2.4.1 rdkit ambertools snakemake numpy pandas yaml statsmodels
Additionally, ensure the following third-party software is installed and added to your
Activate the virtual environment:
conda activate isicle
Install ISiCLE using
# clone/install git clone https://github.com/pnnl/isicle.git pip install isicle/ # direct pip install git+https://github.com/pnnl/isicle
For usage overview, use
isicle --help or
-h. Currently, available modules include
prep for input preparation,
ccs for collision cross section calculation,
shifts for NMR chemical shift calculation, and
export to save results. For all modules (except
export), a Snakemake configuration file in YAML format is required. ISiCLE will try to find
config.yaml in the current directory, else a configuration file must be specified through the
--config flag. Default workflow and cluster configurations are provided, but these are intended to be modified and supplied by the user to accomodate workflow-specific needs.
prep module, ISiCLE assumes the user starts with a text file with InChI or SMILES strings on each line. This ensures each input has a unique filname based on its InChI key identifier. We recommend using SMILES, as in some instances InChI processing can lead to unexpected results, though these occurences are rare. Detailed instructions can be accessed through the help flag (
isicle prep --help or
isicle prep input_list.txt
ccs module, the user must specify calculation mode (
standard), followed by any additional flags (see
isicle ccs --help or
-h). Before beginning a simulation, we recommend use of the
--dryrun flag to ensure the run is configured correctly. For desktop environments, we recommend using
isicle ccs lite --cores 4 --dryrun
slurm cluster environments,
standard mode can be used:
isicle ccs standard --cluster cluster.yaml --jobs 999 --dryrun
shifts module does not require selection of a calculation mode, but is otherwise configured the same way as the
ccs module. See
isicle shifts --help or
-h for a full list of options. We recommend use of supercomputing resources for the
isicle shifts --cluster cluster.yaml --jobs 999 --dryrun
Finally, results can be saved in a user-friendly format using the
export module. See
isicle export --help or
-h for a full list of options, noting that the export command differs by ISiCLE module. For example, to export
ccs standard results:
isicle export ccs standard results.tsv
If you would like to reference ISiCLE in an academic paper, we ask you include the following references:
- Colby, S.M., Thomas, D.G., Nuñez, J.R., Baxter, D.J., Glaesemann, K.R., Brown, J.M., Pirrung, M.A., Govind, N., Teeguarden, J.G., Metz, T.O. and Renslow, R.S., 2019. ISiCLE: A quantum chemistry pipeline for establishing in silico collision cross section libraries. Analytical Chemistry.
- Yesiltepe, Y., Nunez, J.R., Colby, S.M., Thomas, D.G., Borkum, M.I., Reardon, P.N., Washton, N.M., Metz, T.O., Teeguarden, J.T., Govind, N., and Renslow, R.S., 2018. An automated framework for NMR chemical shift calculations of small organic molecules. Journal of Cheminformatics.
- ISiCLE, version 0.1.0 http://github.com/pnnl/isicle (accessed Jun 2019)
The first describes ISiCLE for CCS, the second describes ISiCLE for NMR chemical shifts, and the third is to cite the software package (update version and access date appropriately).
This material was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government nor the United States Department of Energy, nor Battelle, nor any of their employees, nor any jurisdiction or organization that has cooperated in the development of these materials, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness or any information, apparatus, product, software, or process disclosed, or represents that its use would not infringe privately owned rights.
Reference herein to any specific commercial product, process, or service by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or any agency thereof, or Battelle Memorial Institute. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof.
PACIFIC NORTHWEST NATIONAL LABORATORY operated by BATTELLE for the UNITED STATES DEPARTMENT OF ENERGY under Contract DE-AC05-76RL01830