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.4.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.4-cp313-cp313-win_amd64.whl (353.0 kB view details)

Uploaded CPython 3.13Windows x86-64

zsasa-0.2.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (917.9 kB view details)

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

zsasa-0.2.4-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (870.7 kB view details)

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

zsasa-0.2.4-cp313-cp313-macosx_11_0_x86_64.whl (272.8 kB view details)

Uploaded CPython 3.13macOS 11.0+ x86-64

zsasa-0.2.4-cp313-cp313-macosx_11_0_arm64.whl (250.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

zsasa-0.2.4-cp312-cp312-win_amd64.whl (353.0 kB view details)

Uploaded CPython 3.12Windows x86-64

zsasa-0.2.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (917.9 kB view details)

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

zsasa-0.2.4-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (870.7 kB view details)

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

zsasa-0.2.4-cp312-cp312-macosx_11_0_x86_64.whl (272.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ x86-64

zsasa-0.2.4-cp312-cp312-macosx_11_0_arm64.whl (250.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

zsasa-0.2.4-cp311-cp311-win_amd64.whl (353.0 kB view details)

Uploaded CPython 3.11Windows x86-64

zsasa-0.2.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (917.9 kB view details)

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

zsasa-0.2.4-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (870.7 kB view details)

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

zsasa-0.2.4-cp311-cp311-macosx_11_0_x86_64.whl (272.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ x86-64

zsasa-0.2.4-cp311-cp311-macosx_11_0_arm64.whl (250.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: zsasa-0.2.4.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.4.tar.gz
Algorithm Hash digest
SHA256 9970c218cda8ec21d2579569ba869873297319c9f5a393b8b26b0291455f7924
MD5 c2cae9029b4e515053369110f53873fb
BLAKE2b-256 1fdb40b482e56eb23b3c944530a58a2a8f8f1e98d521082da4a5b8bed5b2e79e

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: zsasa-0.2.4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 353.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.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 02f143ff25828fec180aa369cda453c0ad1404e8e4f2ced8b9b4bcfb3f73acb9
MD5 380a8ee0447d8adc0c43f205a2e23adc
BLAKE2b-256 6a03f4499a8d54474ce0386f2f0af809406ae8a4d0b530126b2e17dc491acdcc

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d42b3e21f80d650c2137ecd5061ea34efd0efbf0940f96a6e6b4284a0b6a44c8
MD5 6d794e650c22c0244db189bb53bda31b
BLAKE2b-256 ac63c47bc40cfb1f2d34395772c65534b05fa8571a0e973615f07109ec08572c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 160a261d9560f041e3633f7fc41ba469c2d1a8e3b6b04534e147f7e756fb5693
MD5 9d76834c94e9bd615a22471c4824115d
BLAKE2b-256 5a4e2f56b6dd1fa9d10bb9f9bc14ce65d11341ff3f7d99e066e4fdbc843aa808

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp313-cp313-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 dba060cf1b145f1b82c103647e864a74c6cee6e2bfea63685067a6c55b1ce4e7
MD5 cbeeef3cc826fc0098af48f8c24525c9
BLAKE2b-256 4367ee1df0ad13ab997c36aa42d624be70304c3326b9923e7357f34e848cee7f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 53c41a687683a5692db7a47927addd9b8f0b7e0d4e064f7ace645f7a56384482
MD5 957d738339b69c1a2234e5d690187be8
BLAKE2b-256 1614c5eb4772b32d84f1164b6a4503422023dbc09b5cc1e8db87f0a7f4ae6615

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: zsasa-0.2.4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 353.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.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 6a426c6d606aa4c70f5d56f76519cc0940966d89f1167d2a0489598865c0a7c0
MD5 341a34e7781ceed43dca5fbc3832964c
BLAKE2b-256 4935484669f15815e14dffcd2ba491a86fef092567f9189eb9d51a38604a8397

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5629f99c2d06d40aaceb94851a60ef73c27d8d2788fc5bbaccb8487d8f75e290
MD5 532e87a2729d7dc3dc25515bca149cbe
BLAKE2b-256 e49141d58b73c217889dace4385204dc64fa4d1f216c2b5b99c6ab4d1068f547

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0a0c1b81b7c19864393fafa1a141a4a91ded82125083820766161d3bf5fb4823
MD5 7cecfb3b88a10211805264514f596f70
BLAKE2b-256 30d35c62df8219717d503d6bc875a6d617d8d4e6a3480f61518a6af61452a4e8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp312-cp312-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 27be83db944f04f00d86ba2c92b37175883428660fc5caee1fe3c4ba84d17c43
MD5 17c92bf2bf4fb15b1eb3fba1872fc987
BLAKE2b-256 03c560021c09c6e78b3215f67c5047f447ce42d26f4fccacf5c2b98bc683e0c5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ed5aa9d33010f1121285752686ae91613e3c1eda40e7746eddc289967e310339
MD5 a2cd5d123ce0d80d3787f1463fa13014
BLAKE2b-256 9b281d1eb98df8fbb27d8c5fc1b0d5b2a51812b397abe79b4a602e34966f4cc3

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: zsasa-0.2.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 353.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.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 fdb106451abef56512ba3de16d2b668050078eab7b630ffa38d5a8aec3e7b8d7
MD5 b744dea35aacbe3945294d5665ca7408
BLAKE2b-256 dccac90c9d876f06862c85facf2bc151aafc27be95bf9261f27af811bde2bf29

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4f665d4ff1a2e267de46506d8231f4f3b187c0b0ba5583d115ba74a9e4380c44
MD5 dc0d875b3d3ec704dd6c2d3912fb8261
BLAKE2b-256 c41e3bb9f1ed87396e84e46a4aabe7286ff6bf56a5b6ef19f0b7b94086a3ddc9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ad9fa530bc5cf215a6150301bd79d3c0c59b51fd7f8901eeabbcdc94fd837ada
MD5 9f27646cea83a72a25e47243def49593
BLAKE2b-256 1b014275b7bf04005731287bd14f07d29b5b3ad9fdb7886151f034787acd7b62

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 c1e0332ebcba4ec5f833118bf7e5f885bd78d72939a8753b3eb63f59f09ffb74
MD5 d3a2e7922df01c7be0475c5d31214a4c
BLAKE2b-256 33faf685ea1567c5824801b7339d482bd26cc025fede1453e80b836c96d43ea2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for zsasa-0.2.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b84e2e314171a522362eef22bbb8b28584f1aafe638b51b9368b68616fb59dce
MD5 07010d8df1a42f0926d0f9c5959128ad
BLAKE2b-256 b6fab7791ad860bedbe64fe6b17ab048c02c5e3611cdb688a25d8a46e7ccbc62

See more details on using hashes here.

Provenance

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