Skip to main content

Structure-based Models for Biomolecules using OpenMM

Project description

Citing OpenSMOG PyPI conda-forge ReadTheDocs SMOG server Update GitHub-Stars

Documentation | Install | Tutorials


OpenSMOG is a Python library for performing molecular dynamics simulations using Structure-Based Models. OpenSMOG uses the OpenMM. Python API, which supports a wide variety of potential energy functions, including those that are commonly employed in C-alpha and all-atom models. While it is possible to use this library in a standalone fashion, it is expected that users will generate input files using the SMOG2 software (version 2.4, or later, with the flag -OpenSMOG). Details on how to generate OpenSMOG-compatible force fields files can be found in the SMOG2 User Manual.


When using OpenSMOG and SMOG2, please use the following references.


The OpenSMOG library can be installed via conda or pip, or compiled from source (GitHub).

Install via conda

The code below will install OpenSMOG from conda-forge.

conda install -c conda-forge OpenSMOG

Install via pip

The code below will install OpenSMOG from PyPI.

pip install OpenSMOG

Install OpenMM

The OpenSMOG library uses OpenMM API to run the molecular dynamics simulations. These requirements can be met by installing the following packages from the conda-forge channel:

conda install -c conda-forge openmm

The following are libraries required for installing OpenSMOG:

Installing SMOG2

The inputs OpenSMOG simulations are generated using SMOG2 (version 2.4 and later). Here, there is a quick installation guide based on conda (Linux and Windows-WSL only).

First, download SMOG 2 (v2.4, or later) at

Second, create a new conda environment and activate it (called smog2.4, but name as appropriate):

conda create --name smog2.4 perl
conda activate smog2.4

Next, it is necessary to install a few Perl modules:

conda install -c bioconda perl-xml-simple perl-xml-libxml java-jdk
conda install -c eumetsat perl-pdl
perl -MCPAN -e 'install XML::Validator::Schema'

Add the Perl and smog2 path into the configure.smog2 file (described in the README that comes with SMOG 2).

which perl

Then load and test the smog2 installation:

source configure.smog2

As described in the SMOG 2 manual, it is highly recommended that you also download smog-check and run all checks before using the SMOG 2 software.

Verifying your installation

After you have installed OpenSMOG (and optionally SMOG 2), you can check to see that the code is functioning properly using OpenSMOGcheck. To run the check, you just need to run the following commands (from within python):

from OpenSMOG import SBM

If smog2 is in your path, then this will check compatibility of SMOG2 and OpenSMOG. If smog2 is not in your path, it will simply evaluate the energies for representative models/configurations and compare them to reference values.


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

OpenSMOG-1.1.1.tar.gz (501.5 kB view hashes)

Uploaded source

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