zsasa
High-performance Solvent Accessible Surface Area (SASA) calculator in Zig. Up to 3x faster than FreeSASA C with f64 precision.
Quick Start
Python
pip install zsasa
# or
uv add zsasa
import numpy as np
from zsasa import calculate_sasa
coords = np.array([[0.0, 0.0, 0.0], [3.0, 0.0, 0.0]])
radii = np.array([1.5, 1.5])
result = calculate_sasa(coords, radii)
print(f"Total SASA: {result.total_area:.2f} Ų")
CLI
# One-line install
curl -fsSL https://raw.githubusercontent.com/N283T/zsasa/main/install.sh | sh
# Or with Nix
nix run github:N283T/zsasa -- calc structure.cif output.json
zsasa calc structure.cif output.json
Documentation
| Section | Description |
|---|---|
| Getting Started | Installation and first calculation |
| Comparison | How zsasa compares to FreeSASA, RustSASA, and Lahuta |
| Algorithms | SR vs LR algorithm comparison |
| Classifiers | Atom radius assignment |
| Trajectory Analysis | MD trajectory SASA |
| CLI Reference | Full CLI options |
| Python API | Python bindings documentation |
| Benchmarks | Performance and accuracy benchmarks |