Skip to main content

ConformAtlas

Mapping conformational landscapes from molecular simulations

Python 3.10 | 3.11 | 3.12 CI Documentation DOI 10.5281/zenodo.22847857 License: MIT

Installation · Quick start · Outputs · Documentation · Citation


ConformAtlas turns molecular dynamics trajectories into a quantitative map of conformational space: principal components, a free-energy landscape with error bars, the metastable states on it, the barriers and rates between them, and a verdict on whether the sampling supports those numbers. It runs as a single command (conformatlas analyze) and as a Python library, reads anything MDAnalysis can open, and ships with a validation suite that checks every numerical component against analytical results or an independent implementation.

Free-energy landscape of influenza neuraminidase bound to zanamivir
Influenza A/H1N1 neuraminidase bound to zanamivir, 2001 frames at 300 K: free-energy landscape on the first two Cα principal components with three watershed states (48 / 41 / 11 %). Unmodified figures/fel_2d_3d.png from a single conformatlas analyze run; see the tutorial.

Features

Decompositions Cartesian PCA after Kabsch superposition, backbone / side-chain / nucleic dihedral PCA, TICA with implied timescales; landscapes on any component pair, on RMSD vs Rg, or on user-supplied collective variables
Free-energy landscape Boltzmann inversion at the simulation temperature (kJ/mol), automatic grid resolution, unsampled bins left empty; agrees with gmx sham on the same input
Uncertainty Circular block bootstrap within replicates: standard deviation and 95 % CI of every bin, state population, state free energy and barrier
States and kinetics Watershed segmentation with barrier-based merging, saddle-point barriers, transition matrix, dwell times, mean first-passage times; optional Markov state model (microstates, reversible estimator, implied-timescale scan, Chapman–Kolmogorov test, PCCA+)
Convergence Statistical inefficiency and effective sample size, equilibration detection, first/second-half subspace overlap, cosine content, population stability per replicate
Structures Representative and average structures per state, RMSF profiles, per-residue mode contributions, NMWiz mode files, dynamic cross-correlation maps, ligand–residue contacts
Comparisons Any number of systems projected into a shared PCA space: ΔΔG maps with uncertainty, population differences with bootstrap confidence intervals and p-values, landscape overlap metrics
Enhanced sampling conformatlas reweight turns PLUMED metadynamics or umbrella-sampling output into per-frame weights (final bias, Tiwary–Parrinello, WHAM, MBAR) for a reweighted landscape
Scale Streaming two-pass PCA engine with memory independent of trajectory length, multi-replicate aware, HDF5 results container, re-analysis of saved results without re-reading trajectories
Reporting Self-contained HTML report with interactive landscape and 3-D structure viewer, publication-ready PNG/SVG/PDF figures, optional PDF report

Installation

pip install conformatlas            # core (includes MDAnalysis)
pip install "conformatlas[all]"     # + interactive figures, HDF5, progress bars, PDF report

From source:

git clone https://github.com/AtharvaTilewale/ConformAtlas.git
cd ConformAtlas
pip install -e ".[dev]"
conformatlas doctor                 # checks Python dependencies and GROMACS (optional)

Requires Python ≥ 3.10. GROMACS is optional and only needed for --pca-backend gromacs.

Quick start

Analyse one system (any number of replicates):

conformatlas analyze -s topology.gro -f rep1.xtc -f rep2.xtc -f rep3.xtc -T 300 -o results/WT

Protein–ligand complex, discarding the equilibration phase and adding a Markov state model:

conformatlas analyze -s md.gro -f md_noPBC.xtc -n index.ndx \
    --cov-group C-alpha --lig ZMR -T 300 \
    --equilibration auto --bootstrap 200 --msm \
    -o results/complex

Compare conditions (wild type vs mutant, apo vs holo, …) in a shared PCA space:

conformatlas compare --config comparison.yaml -o results/comparison

Try it on the bundled synthetic two-state peptide:

conformatlas example -o demo
conformatlas analyze -s demo/WT/topology.pdb -f demo/WT/rep1.xtc -f demo/WT/rep2.xtc -T 300 --bins 32 --smooth-sigma 1.0 -o demo/results

Every option can live in a YAML file (conformatlas init-config --type analyze -o run.yaml). Trajectories must be made whole across periodic boundaries first (gmx trjconv -pbc mol). The full option reference is in docs/cli.md.

From Python:

from conformatlas import api

ens  = api.load_trajectories("topology.gro", ["rep1.xtc", "rep2.xtc"], group="C-alpha")
pcs  = api.pca(ens)
land = api.landscape(pcs, temperature=300)
st   = api.states(land)
fig, ax, _ = api.plot_landscape(land, states=st.states)

What you get

results/
├── report.html         # interactive landscape, structure viewer, interpretation
├── summary.json        # state populations and minima, convergence assessment
├── pca/                # eigenvalues, projections, eigenvectors, modes.nmd, mode contributions
├── fel/                # free-energy grid, probability, bootstrap SD and CI
├── states/             # basins, frame assignments, barriers, state ΔG, representative structures
├── statistics/         # populations with block SD/SEM and bootstrap 95 % CI
├── kinetics/  msm/     # transition matrices, dwell times, MFPT; MSM diagnostics (--msm)
├── convergence/        # RMSIP, N_eff, equilibration, cosine content, population stability
├── residues/           # DCCM, state differences, ligand contacts (--residue-analysis)
└── figures/            # 2-D/3-D landscapes, uncertainty maps, kinetics, MSM, DCCM panels

Units: Å, ps, kJ/mol. The complete file manifest is in docs/outputs.md.

Validation

validation/validate.py compares every numerical component with an analytical result or an independent implementation — MDAnalysis, GROMACS (covar, anaeig, sham), pymbar, deeptime, SciPy and ProDy — and writes the report that is published as docs/benchmarks.md (147/147 checks). Components that are conventions rather than derivations (convergence thresholds, grid heuristics, MSM lag selection) are labelled as such in docs/methods.md.

Boltzmann inversion assumes an unbiased equilibrium ensemble; for biased simulations use conformatlas reweight and --weights-file. See the FAQ for this and other pitfalls.

Documentation

Full documentation: conformatlas.readthedocs.io

Getting started Reference Background
Installation Command line Methods
Quickstart Python API Interpreting results
Tutorial: neuraminidase–zanamivir Output files Convergence diagnostics
FAQ Comparing systems Validation and benchmarks

Citation

@software{conformatlas2026,
  author  = {Tilewale, Atharva and Patel, Dhaval},
  title   = {ConformAtlas: mapping conformational landscapes from molecular simulations},
  year    = {2026},
  version = {1.0.2},
  doi     = {10.5281/zenodo.22847857},
  url     = {https://github.com/AtharvaTilewale/ConformAtlas}
}

The DOI 10.5281/zenodo.22847857 is the Zenodo concept DOI: it covers every release and resolves to the latest one. Each release also has its own version DOI, listed on the Zenodo record, for citing the exact version you used. A machine-readable citation is in CITATION.cff.

Contributing

Bug reports, feature requests and pull requests are welcome — see CONTRIBUTING.md. Please run ruff check, the test suite and validation/validate.py before opening a pull request.

Authors and license

Developed by Atharva Tilewale and Dhaval Patel. Released under the MIT License.

Metadata

Release files for conformatlas 1.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for conformatlas 1.0.2
File Size Uploaded
conformatlas-1.0.2.tar.gz 590.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for conformatlas 1.0.2
File Interpreter ABI Platform
conformatlas-1.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 1.2 MB

Release files / conformatlas-1.0.2.tar.gz

Download URL conformatlas-1.0.2.tar.gz
Size 590.3 kB
Tags Source
SHA-256 checksum
How to use checksums
a475fa5c5a8229a1900182f41619ad2e5308ba8df1003c67d33c56fec3a1f398
BLAKE2b-256 checksum
How to use checksums
e44f97d9386a21fcd7008fec1cf8875000521cb2e6626852ed95efbaf40d6f39
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 12, 2026.

Transparency log

Release files / conformatlas-1.0.2-py3-none-any.whl

Download URL conformatlas-1.0.2-py3-none-any.whl
Size 602.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e514c774196c4aac817d248189eccd67e78f0e5368857a8be9f4c4bbf430b476
BLAKE2b-256 checksum
How to use checksums
e763f42d7b72a07c7fc096ee667b98ae226da98171fe5e7ee9205349d758154f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 12, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page