Skip to main content

Fast SASA calculation using Zig

Project description

zsasa Python Bindings

Python bindings for zsasa — a high-performance SASA calculator in Zig.

Full Documentation

Installation

pip install zsasa
# or
uv add zsasa

Optional Dependencies

pip install zsasa[gemmi]      # Gemmi integration
pip install zsasa[biopython]  # BioPython integration
pip install zsasa[biotite]    # Biotite integration
pip install zsasa[all]        # All integrations

Quick Start

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} Ų")
# With structure file (gemmi)
from zsasa.integrations.gemmi import calculate_sasa_from_structure
result = calculate_sasa_from_structure("protein.cif")
print(f"Total: {result.total_area:.1f} Ų")

Features

  • Two algorithms: Shrake-Rupley and Lee-Richards, with bitmask LUT optimization
  • Selectable precision: f64 (default) or f32
  • Multi-threading: Automatic parallelization
  • Atom classification: NACCESS, ProtOr, OONS classifiers
  • Analysis: Per-residue aggregation, RSA, polar/nonpolar classification
  • Batch processing: process_directory() for proteome-scale datasets
  • MD trajectory: Native XTC/DCD readers, MDTraj and MDAnalysis integration
  • Integrations: Gemmi, BioPython, Biotite

See the full API reference for details.

Development

cd python
uv run --with pytest pytest tests/ -v    # Tests
ruff format . && ruff check --fix .      # Lint

License

MIT

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

zsasa-0.2.3.tar.gz (173.1 kB view details)

Uploaded Source

Built Distributions

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

zsasa-0.2.3-cp313-cp313-win_amd64.whl (351.0 kB view details)

Uploaded CPython 3.13Windows x86-64

zsasa-0.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (909.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

zsasa-0.2.3-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (860.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

zsasa-0.2.3-cp313-cp313-macosx_11_0_x86_64.whl (270.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ x86-64

zsasa-0.2.3-cp313-cp313-macosx_11_0_arm64.whl (248.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

zsasa-0.2.3-cp312-cp312-win_amd64.whl (351.0 kB view details)

Uploaded CPython 3.12Windows x86-64

zsasa-0.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (909.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

zsasa-0.2.3-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (860.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

zsasa-0.2.3-cp312-cp312-macosx_11_0_x86_64.whl (270.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ x86-64

zsasa-0.2.3-cp312-cp312-macosx_11_0_arm64.whl (248.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

zsasa-0.2.3-cp311-cp311-win_amd64.whl (351.0 kB view details)

Uploaded CPython 3.11Windows x86-64

zsasa-0.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (909.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

zsasa-0.2.3-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (860.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

zsasa-0.2.3-cp311-cp311-macosx_11_0_x86_64.whl (270.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ x86-64

zsasa-0.2.3-cp311-cp311-macosx_11_0_arm64.whl (248.5 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file zsasa-0.2.3.tar.gz.

File metadata

  • Download URL: zsasa-0.2.3.tar.gz
  • Upload date:
  • Size: 173.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for zsasa-0.2.3.tar.gz
Algorithm Hash digest
SHA256 79b3c745ca76c8dd5db1d698b133c05c6c4c69e59f1974e35038a521aead0c65
MD5 5c6003753a0e494267568206bdb54a49
BLAKE2b-256 15d754fb64478b33f5138ae5884800494fcb027e3140c6c41ef501763563789d

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3.tar.gz:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: zsasa-0.2.3-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 351.0 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for zsasa-0.2.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 25a5ea1954d8bcf74f2a1c50fac684f0ed9012367c1f04518ca4b4e8d5429d73
MD5 4697f1551d8e32113dc0c4be913ed41e
BLAKE2b-256 12fa4d7a4944b9664aa44a633c18a6e3ff45342ee9e46afbd97a3795df7f8012

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp313-cp313-win_amd64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7f324ff60bc52329839307bb268ea2c51df79a943197d91c9af3466271b9e9db
MD5 f7e34becfed64ed27598b9e476f44666
BLAKE2b-256 7c6696adc9cd43e48b942ae5018494bad4a82cfd426690cdbbf69db6eb0ff726

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c4b01c0bf669803771a3176596891d850a9a457169b05d9e47928178145444d4
MD5 23d99e2558b85f0adcf7b903560b3105
BLAKE2b-256 637ecdd99985da097c8fe1a384d543c248a2c7461094308133179a61b2e35c8d

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp313-cp313-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp313-cp313-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 7fd8da9c0ecae29a29985e2ce04db5ee9d221680b681c7211aeff3aa09f01bfd
MD5 e2be3fdccbd65c807dd9a353596cc78b
BLAKE2b-256 92c1749391ce6b29e158e1dcb1d0152625616228ce804ccb77a33b685ce7d8e9

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp313-cp313-macosx_11_0_x86_64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6508ed92b87c5442fd29b9237416c5a0bd0949f6f7b75d4ff96735bed4ba3e51
MD5 96eede7bf1543924ee7311b3c54726e1
BLAKE2b-256 f0626fb9421e517e3e4b37a254e5e6efe0897532f26b5ac0d7d3c7a7dca38998

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: zsasa-0.2.3-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 351.0 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for zsasa-0.2.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 fd25ce4a8f21e9f457af09099413e274acac0257fe955f0049e5317f201eb1fe
MD5 bc2e805ec11ed04c1361e11e53d05c10
BLAKE2b-256 32aa2cfcb053866f27fbcc423a21f68eead170330a526145c3c6186dc89e7a0a

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp312-cp312-win_amd64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2215e185ebabe418ebb05054f5e1179e08fbc504b3e0f5e435e4e0cb5dc4841d
MD5 ec5153be9b340f0bc55846ad3e5f2538
BLAKE2b-256 d1f67dfae1fa84cb3dd05fea2c2f9ec342732695fe3ed2f2530857ab8f5bea9d

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 427191c726cdb7e563ee23cd48d037935fce68b26c2cc03b984ef22d094a78b3
MD5 2022f6785a6235c5ee4874d4d0d25906
BLAKE2b-256 6ea22919fd05cf21eecca586b7780a978fed58a8fd06ebb6306ac426cd0546fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp312-cp312-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp312-cp312-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 0b3d1296730853fcc9e545fae05f7ce8bc031fe520a31fa5e027cb4dcfa463cc
MD5 92e50b0204e2989b294b53d6a4a15a6e
BLAKE2b-256 443b161753e5bf263bc3d7324bc8343796424998c1926fd6633a7bc5b278c1f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp312-cp312-macosx_11_0_x86_64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 181c1463dc7344a44ef8177678c860fcf69d2aaeda2e493dfefd6e55fa0c7658
MD5 8dd247b66d1945f0a3f0602c038a8127
BLAKE2b-256 61578e22bcbe3f3e4e7fe529ef16d65bec972746445a768e413fce582ebaec48

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: zsasa-0.2.3-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 351.0 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for zsasa-0.2.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d0ba195c5b17a27c579c5662ce8e1326dcca96806a68257b0688701a5b59e889
MD5 e34b8101ac2387e832979a0ffec20095
BLAKE2b-256 4530b3b1bb6934cb352098446b7f247123bb3b6d7266d1a5e2b41a6772b94055

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp311-cp311-win_amd64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 51f1f951cd108bb14278b66e0db6a8dc92ccac1a4c48a717095ad7926c591736
MD5 1528b3ffecfff44854e2d57978a9162e
BLAKE2b-256 713392ee7fec0a1edfc2b92b2d4fe5e8748535eeee09d89f96b09338acc93aa6

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0f1496bea2412c852e8cec48a857f4e81dc8a416c614ba69eafc8acd7635e269
MD5 ba0c97a31664eef5a8202d49acef2e7d
BLAKE2b-256 f9e539f511d79619d0b2312dbc3ead05225d457b6ac2718eab53b38592156bce

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp311-cp311-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 25e5240f2951fef78a6321f6d000cffaf4c0daa6116a93545bbd182fb2b0a4ed
MD5 510229b420516c9ae3865ab934bb6bd0
BLAKE2b-256 32427423f755860705827df4872cb10aa205d502873c24c7e47946a61d0e76f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp311-cp311-macosx_11_0_x86_64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zsasa-0.2.3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 739c0ac164d752c0cb57fd9d10fd4942770f4e3448c8b066208b9b8d92f1d74f
MD5 b161886643ffd43155e1692e1149d167
BLAKE2b-256 a346ea217c0ead8ba53a7ee69693d7806cb03737bcaafbfa45e501d9eaf9f90e

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.3-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on N283T/zsasa

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page