Skip to main content

StericRender

StericRender: Topographic Steric Mapping with Molecular Visualisation

StericRender computes topographic steric maps and buried volume (%VBur) for any molecular structure, producing publication-quality SVG figures from the command line. It implements the SambVca methodology and uses xyzrender for oriented molecular overlays.

PyPI Python License Powered by: uv Code style: ruff Typing: ty CI Codecov DOI

zoomed out overlay

What it produces

  • Topographic steric maps (SVG, CSV, NPZ)
  • Buried volume (%VBur) with quadrant breakdowns (JSON)
  • Oriented molecular overlay SVG via xyzrender
  • Multi-frame XYZ batch processing
  • Three atomic radii sets: scaled-Bondi (default), Bondi, CSD
  • Configurable sphere radius, map radius, mesh spacing, colour palettes

CLI

stericrender complex.xyz \
  --origin 1 \
  --toward 2,3 \
  --flip-z \
  --config pmol \
  --overlay-opacity 0.72 \
  --map-palette sambvca \
  --color-range -3 3 \
  --output-prefix results/complex

The origin atom is automatically excluded from the steric analysis. Use --include-origin to override.

Installation

pip install stericrender
# latest development version:
pip install --upgrade git+https://github.com/JamesOBrien2/StericRender.git

Or with uv:

uv tool install stericrender

From source:

git clone https://github.com/JamesOBrien2/StericRender.git
cd StericRender
pip install -e .

Python API

import numpy as np
from stericrender.io import load_structure_frames, atoms_to_arrays
from stericrender.orientation import orient_positions
from stericrender.radii import radii_for_symbols
from stericrender import compute_buried_volume, compute_steric_map

frames = load_structure_frames("complex.xyz")
symbols, positions = atoms_to_arrays(frames[0].atoms)

# orient: atom 1 at origin, +z toward atom 2
oriented = orient_positions(positions, center_index=0, axis_indices=[1])
selected = [i for i, s in enumerate(symbols) if s != "H" and i != 0]
radii = np.array(radii_for_symbols([symbols[i] for i in selected]))

volume = compute_buried_volume(oriented.positions[selected], radii)
print(f"%VBur = {volume.percent_buried:.2f}")

steric_map = compute_steric_map(oriented.positions[selected], radii)
# steric_map.x, steric_map.y, steric_map.z — topographic grid arrays

Sphere radius and map radius

--sphere-radius scales the analysis sphere; --map-radius sets the display extent independently.

--sphere-radius 2 --map-radius 5
larger steric radius zoomed out overlay

Available flags

--include, --exclude, --include-origin, --frames, --radii, --include-hydrogens, --sphere-radius, --map-radius, --mesh, --config, --overlay-opacity, --overlay-all-atoms, --zoom, --stereo, --stereo-style, --no-contours, --no-colorbar, --no-vbur-label, --show-quadrants, --no-overlay

Gallery

Monocoordinated Ligands

PCy3 NHC-Ni NHC-Ir
complex 1 complex 2 complex 3

Dicoordinated Ligands

MeDuPhos Box Diphosphine
complex 4 complex 5 complex 6
PHOX Xantphos Diimine
complex 7 complex 8 complex 9
TADDOL BINOL Bipy
complex 10 complex 11 complex 12

Tetracoordinated Ligands

Salen-Mn Chiral salen-Mn Zr-ONNO
complex 13 complex 14 complex 15

Zirconocenes

C2 zirconocene Substituted zirconocene Cs zirconocene
complex 16 complex 17 complex 18

Acknowledgements

Citation

If you use StericRender in published research, cite the software version used. To cite the project as a whole:

James O'Brien, StericRender: Topographic Steric Mapping with Molecular Visualisation, computer software, Zenodo, 2026, https://doi.org/10.5281/zenodo.21475425

Machine-readable citation metadata is available in CITATION.cff. GitHub also provides APA and BibTeX entries through the Cite this repository menu. The DOI above represents all StericRender versions and always resolves to the latest release. For reproducibility, use the version-specific DOI shown on the relevant Zenodo release page.

Please also cite the methodological works on which StericRender builds:

  1. Laura Falivene, Raffaele Credendino, Albert Poater, Andrea Petta, Luigi Serra, Romina Oliva, Vittorio Scarano, and Luigi Cavallo,
    "SambVca 2. A Web Tool for Analyzing Catalytic Pockets with Topographic Steric Maps,"
    Organometallics 2016, 35, 2286–2293.
    DOI: 10.1021/acs.organomet.6b00371

  2. Sílvia Escayola, Naeimeh Bahri-Laleh, and Albert Poater,
    "%VBur index and steric maps: from predictive catalysis to machine learning,"
    Chemical Society Reviews 2024, 53, 853–882.
    DOI: 10.1039/D3CS00725A

  3. A. S. Goodfellow and B. N. Nguyen,
    "Graph-Based Internal Coordinate Analysis for Transition State Characterization", Journal of Chemical Theory and Computation 2026.
    DOI: 10.1021/acs.jctc.5c02073

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stericrender-1.1.1.tar.gz (7.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

stericrender-1.1.1-py3-none-any.whl (27.7 kB view details)

Uploaded Python 3

File details

Details for the file stericrender-1.1.1.tar.gz.

File metadata

  • Download URL: stericrender-1.1.1.tar.gz
  • Upload date:
  • Size: 7.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.30 {"installer":{"name":"uv","version":"0.11.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for stericrender-1.1.1.tar.gz
Algorithm Hash digest
SHA256 1a1e2f354836f0e224964566a2f0cf1e94a43f4a0ffa0d11b19482a49b4d208a
MD5 6828e2836f6c0fa96ee20c39ba8dbfa8
BLAKE2b-256 2b2abbb3baa0bf2df1fcd9b1f810a2bd564bbf07e13966b91c1c2250504dccbb

See more details on using hashes here.

File details

Details for the file stericrender-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: stericrender-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 27.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.30 {"installer":{"name":"uv","version":"0.11.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for stericrender-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1aef341d5db30d6349e7434e3ac570c370d2f75716f94fa18954b15b93b0cb97
MD5 0baed57b1b4726ac59d22f92ec58a06f
BLAKE2b-256 387e44bbfe503f848a36800d70ef17510e36bfc82fcddb22c617952757da0527

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.1.1 This release

2 files

1.0.0

2 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