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.8.tar.gz (176.4 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.8-cp313-cp313-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.13Windows x86-64

zsasa-0.2.8-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.0 MB view details)

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

zsasa-0.2.8-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (2.9 MB view details)

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

zsasa-0.2.8-cp313-cp313-macosx_11_0_x86_64.whl (882.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ x86-64

zsasa-0.2.8-cp313-cp313-macosx_11_0_arm64.whl (775.7 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

zsasa-0.2.8-cp312-cp312-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.12Windows x86-64

zsasa-0.2.8-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.0 MB view details)

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

zsasa-0.2.8-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (2.9 MB view details)

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

zsasa-0.2.8-cp312-cp312-macosx_11_0_x86_64.whl (882.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ x86-64

zsasa-0.2.8-cp312-cp312-macosx_11_0_arm64.whl (775.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

zsasa-0.2.8-cp311-cp311-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.11Windows x86-64

zsasa-0.2.8-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.0 MB view details)

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

zsasa-0.2.8-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (2.9 MB view details)

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

zsasa-0.2.8-cp311-cp311-macosx_11_0_x86_64.whl (882.6 kB view details)

Uploaded CPython 3.11macOS 11.0+ x86-64

zsasa-0.2.8-cp311-cp311-macosx_11_0_arm64.whl (775.7 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: zsasa-0.2.8.tar.gz
  • Upload date:
  • Size: 176.4 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.8.tar.gz
Algorithm Hash digest
SHA256 b51bd30e8badac5d0d9e288d79276f66980c7a23b8ab25ed4b8b17743de04729
MD5 671097b74968659d009365904153b46a
BLAKE2b-256 2067983b4f5c0b3bb3ba6d8e46a739c6cbe626a224b24da53b554bfdb91bd619

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8.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.8-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: zsasa-0.2.8-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • 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.8-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 82aae2d54027ce341c6feb5e1b530ccd376ac00c56584052a4acbb863efd1466
MD5 563bdbe068e41944095378962a087eb8
BLAKE2b-256 0903940360c8b39f6041320397c4967a2f1ae8ae2f380d7a6bacbba359669c1c

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 32d65e2f4c12584c161ca1410cd5139d5913355358d692829ea0be0b54eaac23
MD5 935527d2c701e560bbd912c2b3389596
BLAKE2b-256 590635270048d99b9319c0a282ea4f37d412dd6fdcec4433278ab824708c09e4

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1750ba5b3e60cd099a64aebff1fabf2d1b3bca597fa52c7aea66513b8dd23864
MD5 5c51272cb6cd2bafc006fbe6ffaf38ba
BLAKE2b-256 9ee7368d31643d93c5d5ef7f418b4f3784a05482c11e16607cfb1ebe3432b9fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp313-cp313-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp313-cp313-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 a4cfa13d30f8cf21941a1b716d12ecc3591e6408cbc988f7fd6656106d717550
MD5 6b18e3a50a1c66bd5c3c25ce5a422edf
BLAKE2b-256 11abcc5fd6cc4701a05ca701138dca6c53fbbadda103868fc2a45a85ea15bee6

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ccecc8435f9deb36a8bd55bfa9b7dd2eb517be476f29fc7ea475f8efad3fe13a
MD5 71f8093c3ad0bc049f526f7674952ccf
BLAKE2b-256 60cb7e61e0e0b47d5d6bf84ac068555d94321a37479e43356462f414ac6c73e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: zsasa-0.2.8-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • 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.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0484e575583bd0ab35e5ec72f361b3ccf0b61f3ca35c2aea87d822c92b59d55b
MD5 115652b408856eaadd9a4c1ef339eed4
BLAKE2b-256 571a4301979e30232ddec7815c1c4b8d5cc3f42778bb8621544b370558dc3529

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 987aae768341784e794af4c133d548fa22da33c774446202fab20d10dc3a1a5f
MD5 768e07782fb5d34384499452f592a363
BLAKE2b-256 a6fe1162bd08955325119f22087a897220277dcc78211d7f1865d0d9c3fa4b92

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6bfee2b85261c041059d57512adf7732acd25c24954c3f14c45289e129f828da
MD5 a3e299f7f7a9e9b1bb7d791a46f2429b
BLAKE2b-256 d0bfb2317273585021f58a67ea5963ff4d5eb25eacc41e3aaf65a204fc91b342

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp312-cp312-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp312-cp312-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 01bcab3d0c40552f7e86f01bdc0072601c4e14abe38f9dfa85230f9af4ea8c67
MD5 003343dde9ef6066cb82eb27bad1b72e
BLAKE2b-256 81905b538e979b63a056500d88b304a123f3bd2204d85748d0ec9fb546061f9f

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 90e2b4f79cdfecd337b8d2208961fbc343d59c1dc03297d5f7c7e5b8aa802b01
MD5 d64e10e85e447f5ddf4ffaa04a2065ca
BLAKE2b-256 e90a79ac86aa072fe85ac189dc829a21fd2d83dc6ef7d06cc1e7448b3c7532f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: zsasa-0.2.8-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • 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.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3684c0fd211856507099627051f728af69e14b6722a5132e2cd06bbc1fb8b1d0
MD5 a506da63296abf44a72de3d837375c8a
BLAKE2b-256 ec4900974f11c27e70e26d95b76d3f53ae4d8c211312ffc240b69873e42225bf

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2a66607bb671512ee133c146aa32526ecf5fb35ab55faa8114870efb06ddb9b9
MD5 782c3e6b9391ef4f293996b69abebf3b
BLAKE2b-256 9a1968b22c5e11e428e5f5838353bbd0d22ae0de9160b3f80255bc312c919ad5

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6a65e63498a78f494f09f44ab5055f773c0bae8c89e1da539eb72bc5dc70ee44
MD5 f73696bd759d8eec547da71977dfd571
BLAKE2b-256 7c328a720baf585451e45eb300373f1ed8a4a4604cbfac498086257424b8e733

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp311-cp311-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 16db69fb53581678570bbe7d200d37101e93e2e87737181a3651d1f36b64bb16
MD5 a4aa52310ff66e4ca96373729f4f7c8e
BLAKE2b-256 001d54aef760d1a32f5da93d2b61911935d3beada23a81f5b3e2257fb74b021e

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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.8-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zsasa-0.2.8-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e4819bf6d303fc951cb70f842a6f9d32d38b9cc5e4de494fbac63e7af415cb0c
MD5 12c0546e07c194068dfef35515b6450c
BLAKE2b-256 fdab7c28fd12b28b8bf072f37a3c6d451f36c71b2dd4a86fb651f3c6053e34fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for zsasa-0.2.8-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