If you use sire in your work, please cite the following paper:
@article{10.1063/5.0200458,
author = {Woods, Christopher J. and Hedges, Lester O. and Mulholland, Adrian J. and Malaisree, Maturos and Tosco, Paolo and Loeffler, Hannes H. and Suruzhon, Miroslav and Burman, Matthew and Bariami, Sofia and Bosisio, Stefano and Calabro, Gaetano and Clark, Finlay and Mey, Antonia S. J. S. and Michel, Julien},
title = "{Sire: An interoperability engine for prototyping algorithms and exchanging information between molecular simulation programs}",
journal = {The Journal of Chemical Physics},
volume = {160},
number = {20},
pages = {202503},
year = {2024},
month = {05},
abstract = "{Sire is a Python/C++ library that is used both to prototype new algorithms and as an interoperability engine for exchanging information between molecular simulation programs. It provides a collection of file parsers and information converters that together make it easier to combine and leverage the functionality of many other programs and libraries. This empowers researchers to use sire to write a single script that can, for example, load a molecule from a PDBx/mmCIF file via Gemmi, perform SMARTS searches via RDKit, parameterize molecules using BioSimSpace, run GPU-accelerated molecular dynamics via OpenMM, and then display the resulting dynamics trajectory in a NGLView Jupyter notebook 3D molecular viewer. This functionality is built on by BioSimSpace, which uses sire’s molecular information engine to interconvert with programs such as GROMACS, NAMD, Amber, and AmberTools for automated molecular parameterization and the running of molecular dynamics, metadynamics, and alchemical free energy workflows. Sire comes complete with a powerful molecular information search engine, plus trajectory loading and editing, analysis, and energy evaluation engines. This, when combined with an in-built computer algebra system, gives substantial flexibility to researchers to load, search for, edit, and combine molecular information from multiple sources and use that to drive novel algorithms by combining functionality from other programs. Sire is open source (GPL3) and is available via conda and at a free Jupyter notebook server at https://try.openbiosim.org. Sire is supported by the not-for-profit OpenBioSim community interest company.}",
issn = {0021-9606},
doi = {10.1063/5.0200458},
url = {https://doi.org/10.1063/5.0200458},
eprint = {https://pubs.aip.org/aip/jcp/article-pdf/doi/10.1063/5.0200458/19969848/202503\_1\_5.0200458.pdf},
}Sire is a molecular modelling framework that provides extensive functionality to manipulate representations of biomolecular systems.
It is used as a key component of BioSimSpace, and is distributed and supported as an open source community project by OpenBioSim.
For more information about how to use Sire, and about application built with Sire, please visit the Sire website.
The easiest way to install Sire is using our conda channel. Sire is built using dependencies from conda-forge, so please ensure that the channel takes strict priority. We recommend using miniforge3.
To create a new environment:
conda create -n openbiosim "python<3.13"
conda activate openbiosim
conda install -c conda-forge -c openbiosim sireTo install the latest development version you can use:
conda create -n openbiosim-dev "python<3.13"
conda activate openbiosim-dev
conda install -c conda-forge -c openbiosim/label/dev sireYou can install a specific version of sire by specifying the version number in the conda install command, e.g.
conda install -c conda-forge -c openbiosim sire==2024.1.0Note that limited space means that we can only keep a small number of versions of sire on the official openbiosim conda channel. Generally these are all point releases of the latest major version, plus the latest point release of the last major version.
We do provide an archive channel of all previous releases. You can search this archive channel for the release you are interested in using the following command:
conda search -c https://openbiosim.blob.core.windows.net/archive sireThis will return a list of all versions of sire available in the archive.
You can install a specific version from the archive using a command like:
conda install -c https://openbiosim.blob.core.windows.net/archive sire==2023.2.3However, as you are here, it is likely you want to download the latest, greatest version of the code, which you will need to compile. To compile sire, you need a git client to download the source and pixi to manage the build environment.
First, clone the sire source code and change into the directory:
git clone https://github.com/OpenBioSim/sire
cd sireNext, use pixi to create and activate the development environment. This will install all required dependencies, including compilers:
pixi install -e dev
pixi shell -e devNow compile and install sire:
python setup.py installA small word of warning, the compilation can easily take over an hour!
Other pixi environments are available depending on your needs:
pixi install -e default- core sire dependencies onlypixi install -e obs- include downstream OpenBioSim package dependenciespixi install -e emle- include emle-engine dependenciespixi install -e dev- all of the above plus test dependencies
Any additional startup commands can be specified in the pixi.sh file
in the root of the sire repository. This file is automatically sourced when
you activate the pixi environment, so you can add any additional environment
variables or startup commands here. (Note that you might see a warning if
you haven't created this file.)
For bug reports/suggestions/complaints please file an issue on GitHub.
Please visit the website for information on how to develop applications using sire.
Since sire is quite large, a build can take quite long and might not be neccessary
if a commit is only fixing a couple of typos. Simply add ci skip
to your commit message and GitHub actions will not invoke an autobuild.
Note that every time you commit to devel, it will trigger a build of sire,
full testing, construction of a Conda package and upload to our Anaconda
channel. Please think twice before committing directly to devel. You should
ideally be working in a _feature_ branch, and only commit to devel once you are
happy the code works on your branch. Use ci skip until you are happy that
you want to trigger a full build, test and deployment. This full pipeline will
take several hours to complete.
Have fun :-)