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.5.tar.gz (174.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.5-cp313-cp313-win_amd64.whl (856.5 kB view details)

Uploaded CPython 3.13Windows x86-64

zsasa-0.2.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

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

zsasa-0.2.5-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (2.5 MB view details)

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

zsasa-0.2.5-cp313-cp313-macosx_11_0_x86_64.whl (761.8 kB view details)

Uploaded CPython 3.13macOS 11.0+ x86-64

zsasa-0.2.5-cp313-cp313-macosx_11_0_arm64.whl (667.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

zsasa-0.2.5-cp312-cp312-win_amd64.whl (856.5 kB view details)

Uploaded CPython 3.12Windows x86-64

zsasa-0.2.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

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

zsasa-0.2.5-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (2.5 MB view details)

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

zsasa-0.2.5-cp312-cp312-macosx_11_0_x86_64.whl (761.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ x86-64

zsasa-0.2.5-cp312-cp312-macosx_11_0_arm64.whl (667.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

zsasa-0.2.5-cp311-cp311-win_amd64.whl (856.5 kB view details)

Uploaded CPython 3.11Windows x86-64

zsasa-0.2.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

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

zsasa-0.2.5-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (2.5 MB view details)

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

zsasa-0.2.5-cp311-cp311-macosx_11_0_x86_64.whl (761.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ x86-64

zsasa-0.2.5-cp311-cp311-macosx_11_0_arm64.whl (667.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: zsasa-0.2.5.tar.gz
  • Upload date:
  • Size: 174.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.5.tar.gz
Algorithm Hash digest
SHA256 695c04e8cc9a69f0df065df6bb8f497311f2657ae6637d595b4752817f87f616
MD5 cd8dd17e8bc7f7564baed76c40a3b2ed
BLAKE2b-256 e3845b8acc5f9d35724407407685e1530e73783ff2480c2660a8aa3051d0f0db

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: zsasa-0.2.5-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 856.5 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.5-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 97a076ba8c65b9731b673ecb554adda5e028f8c01d12f2002f518617faca4e00
MD5 3fd22e64c3390db38a69e26e1abb09a0
BLAKE2b-256 6d4ea932ac5363d55943de3f77ba0bb96f2941635d5ae6c27d8f5bddbb10932c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f356eb4a11915c347e942e003e86d8659c985cf00362c6f38d26ec8aed2fde51
MD5 a8ec5a3896c1d5976be96bccdfd0708f
BLAKE2b-256 a480ba757c36875f7c289c43bb48f7caa98e2e25de25bf879004e18462f04dd2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b9c2efec0c5e456855388d15cccc7ea5428aa0b67314ada58204f8f313269947
MD5 f033cd5f05a8c670fb79c250f001e860
BLAKE2b-256 0d1f11440efe54e45a9f0dad5e9cd5bce29b7695342e78c5fda962b7a6c08798

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp313-cp313-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 0d313100c56352d6a9fc683bea2b8b7ba99d0586052ed45bb681425e9189e24b
MD5 2cf079cc9be5e6edf588146f2a0e5cc4
BLAKE2b-256 85b876c7b2b89531353a7c7aa17642101371b7b72ea6f1dfdc755a59cc680413

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4c6193a0336bc71fa13b7f929afee705b21099e2e74c3b25e322a137c94b27b4
MD5 9ac1101f43fe3e2ac108cf33ae84e9a9
BLAKE2b-256 0ec4821e939664f3afe5b175963d42ed8488e335470c41a30eea2e3789028f8a

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: zsasa-0.2.5-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 856.5 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.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 3796175d5eb5303f6c5de560c479342817d021729c2f16e419915bad2c104075
MD5 b324b1ba4bb5097d9a052137835b314d
BLAKE2b-256 0a30c6345a7fc4cf474f0f5f84727d9b4f8d87387e6f5da99615a7d8945f4451

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 59c40bcbcb074683c74fdc7f5d5e132c98165f84b86e001af3a06910891edb7f
MD5 f38703c6f8b85e4518d90b477b7576cb
BLAKE2b-256 19089c5fc97ee249a0fce948a21b0d7fad447f571c4b347432c305839f0b415c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f5fa7601db7960029e32896b75967bc893abcd850fdbc299eed977e9e5e35e93
MD5 edb4e59914944eefa2be0367d1d02cb9
BLAKE2b-256 dbef2b6f9f611c56ca8d5ecc60dcbf10db84f18d731d35fb7121af62a81467ff

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp312-cp312-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 890f90bf1c2da6bcf6d82194857478bee6a08e404a1da8156ac7d8481c8ab17e
MD5 a0d65ad372c93a5f1b672e0438cce0c4
BLAKE2b-256 8220c1e8aa14ca3790bb685e3213c194276753da801d5b06683e6f329080cc02

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 12a41ccfa41c26bb31b0380dce65846c25e103452393b3092e30332e6aade18b
MD5 de665d8e212d3d8c81990b24b6a796a5
BLAKE2b-256 c3a39f2eb6924a9491f4d142e3c83efde7874d24b5a306dde79dd326eaa72356

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: zsasa-0.2.5-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 856.5 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.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 2516e73ba824c1243f7463ff1050237fd2e3c266c6653ed3f89fad03672d57db
MD5 23e9c8337f1eb217444171fc943888ca
BLAKE2b-256 b6bf1bfd6cb90823e6e65064858921e2795ba480945f959e1b2e0bb16f58a114

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8c4ff62e069d9769fed4363c6a59eb684ae9179b92bce031049511c2033e1ef4
MD5 dab718f53e16abd70530f5f2572d276b
BLAKE2b-256 42bfd5ff020837f1744cc96d6dd223eced038b940f910177c1dcd22c6e59a543

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8425c7092e4177a9e5e928236a0320652aa9e9b0d6fd3c936b721c2477d485bb
MD5 9631c6879e0044ff80b6e7613a2efa68
BLAKE2b-256 514f58ef04ed24fa55c91e41d35d0f57eece5b90ee3ca3c25f4cdd65d461141f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 a49a27e03dc46267f9258f26a87cf14229cc522147ee4dec2bbe4d0d6ad482ba
MD5 4e6b232b8d77809ecaa923f851f86559
BLAKE2b-256 69b54a0097e43c84bd1f943062f4e33631834e9c6727e5fc81416710b6e4381e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1b6cabb49364a43f892eb5746db1183856e202f88cb79bfc35c16156968d5e1a
MD5 70ca13b0eec87bc631374b764b4732ab
BLAKE2b-256 9c8a08d8a0df146245cc8afdbf08ec2179801ce2c06bb79db4df22720425647f

See more details on using hashes here.

Provenance

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