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.
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 |
|---|---|
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 |
|---|---|---|
Dicoordinated Ligands
| MeDuPhos | Box | Diphosphine |
|---|---|---|
| PHOX | Xantphos | Diimine |
|---|---|---|
| TADDOL | BINOL | Bipy |
|---|---|---|
Tetracoordinated Ligands
| Salen-Mn | Chiral salen-Mn | Zr-ONNO |
|---|---|---|
Zirconocenes
| C2 zirconocene | Substituted zirconocene | Cs zirconocene |
|---|---|---|
Acknowledgements
- The SambVca group (Cavallo et al.) — the %VBur methodology and topographic steric map convention that StericRender implements
- morfeus-ml — reference implementation used for validation
- xyzrender by @aligfellow — molecular rendering and SVG overlay
- Jonathan Di Pietro (@jonathandip) — zoom and radius concept, testing
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:
-
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 -
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 -
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1a1e2f354836f0e224964566a2f0cf1e94a43f4a0ffa0d11b19482a49b4d208a
|
|
| MD5 |
6828e2836f6c0fa96ee20c39ba8dbfa8
|
|
| BLAKE2b-256 |
2b2abbb3baa0bf2df1fcd9b1f810a2bd564bbf07e13966b91c1c2250504dccbb
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1aef341d5db30d6349e7434e3ac570c370d2f75716f94fa18954b15b93b0cb97
|
|
| MD5 |
0baed57b1b4726ac59d22f92ec58a06f
|
|
| BLAKE2b-256 |
387e44bbfe503f848a36800d70ef17510e36bfc82fcddb22c617952757da0527
|