Skip to main content

An ultra-fast package for computing Solvent Accessible Surface Area (SASA/ASA) for proteins

Project description

rust-sasa-python

A high-performance Python library for computing SASA (Solvent Accessible Surface Area) using Rust as the backend. This library provides a clean, Pythonic interface to the fast RustSASA calculation engine.

Features

  • 🦀 Pure Rust Backend: Leverages Rust's performance and safety.
  • ⚡️ Ludicrous Speed: 46X faster than Biopython, 7X faster than Freesasa.
  • 🐍 Pythonic Interface: Clean, intuitive API.
  • 🔧 Configurable: Customizable probe radius and sampling points.
  • 📁 PDB and mmCIF SUPPORT: Supports both PDB and mmCIF files.

Installation

pip install rust-sasa-python

Quick Start

import rust_sasa_python as sasa

# Simple calculation - use convenience function
result = sasa.calculate_protein_sasa("protein.pdb")
print(f"Total SASA: {result.total:.2f}")

# Builder pattern for more control
calculator = (sasa.SASACalculator("protein.pdb")
              .with_probe_radius(1.2)
              .with_n_points(2000))
result = calculator.calculate_protein()
print(f"Total SASA: {result.total:.2f}")
print(f"Polar SASA: {result.polar:.2f}")
print(f"Non-polar SASA: {result.non_polar:.2f}")

See DOCS for more information and API reference.

Contributing

Contributions are welcome! Please feel free to submit issues and pull requests.

License

This project is licensed under the MIT License.

Related Projects

  • RustSASA - The core Rust library.
  • DPXRust - Rust library for DPX calculations.

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

rust_sasa_python-0.2.1.tar.gz (69.1 kB view details)

Uploaded Source

Built Distributions

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

rust_sasa_python-0.2.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (645.2 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

rust_sasa_python-0.2.1-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (684.1 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

rust_sasa_python-0.2.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (644.9 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.2.1-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl (684.2 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ i686

rust_sasa_python-0.2.1-cp313-cp313-win_amd64.whl (456.2 kB view details)

Uploaded CPython 3.13Windows x86-64

rust_sasa_python-0.2.1-cp313-cp313-win32.whl (424.4 kB view details)

Uploaded CPython 3.13Windows x86

rust_sasa_python-0.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (644.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.2.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (683.9 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

rust_sasa_python-0.2.1-cp313-cp313-macosx_11_0_arm64.whl (563.3 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rust_sasa_python-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl (572.9 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

rust_sasa_python-0.2.1-cp312-cp312-win_amd64.whl (456.5 kB view details)

Uploaded CPython 3.12Windows x86-64

rust_sasa_python-0.2.1-cp312-cp312-win32.whl (424.4 kB view details)

Uploaded CPython 3.12Windows x86

rust_sasa_python-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (644.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.2.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (684.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

rust_sasa_python-0.2.1-cp312-cp312-macosx_11_0_arm64.whl (563.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rust_sasa_python-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl (572.7 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

rust_sasa_python-0.2.1-cp311-cp311-win_amd64.whl (456.4 kB view details)

Uploaded CPython 3.11Windows x86-64

rust_sasa_python-0.2.1-cp311-cp311-win32.whl (425.2 kB view details)

Uploaded CPython 3.11Windows x86

rust_sasa_python-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (645.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.2.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (685.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

rust_sasa_python-0.2.1-cp311-cp311-macosx_11_0_arm64.whl (566.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

rust_sasa_python-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl (575.5 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

Details for the file rust_sasa_python-0.2.1.tar.gz.

File metadata

  • Download URL: rust_sasa_python-0.2.1.tar.gz
  • Upload date:
  • Size: 69.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.1

File hashes

Hashes for rust_sasa_python-0.2.1.tar.gz
Algorithm Hash digest
SHA256 f0f1c92a68339ed345e60bc8cac37335087b100b9dcda25c36a99ba0bc070a92
MD5 888eafd6f28eae4dc7bc5569e84c3b7d
BLAKE2b-256 20c5ebcae4b0e111b1ce891d42aa776f502db9efb28a9f95e77d0186af43e8ff

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b621bf5f5582f7664eb2cf8b9592a03bc85c2a7540fc2e092b48b46c163dcfd5
MD5 eaa2f028447d57f0a18dc3beaad5813f
BLAKE2b-256 c68c52365a1d23b0c98e7fe429ae3565798f2df9cfbd34bd20196689ddf6fb08

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ac2de1ca6b59d07163c6af9fcce5fe4793df66e88ee19aba18ac6ee416b0596d
MD5 8481ee72527b0b1e57dc4345d39a5a64
BLAKE2b-256 8735e6c47ac046c529a3692ceb123a25cdb102557e978d47afbbff5b2f63644f

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bbeff0b56d89c42d036adc0e237405af74ac699a5d4c6bf0d6177574d7e74baf
MD5 722d8805009b7d0597e2a85418410e92
BLAKE2b-256 e41d42cff23d4ad20cfe3f282975e214af79c9a82f1f221e2977c9d39e3ce309

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 5a6144ef60589244b6c81b48ce0793e7fd41611f5fe1ec547b5b71771b48743c
MD5 55ffc265dc787da28839b9944e170f12
BLAKE2b-256 2b2828dca9b91072377869835b8479a3c07a776d0aa4645e8955539b6545986c

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e3a44aa05fdcc17e5f5f70feaa89a4d0196fb771a07a2c295a29de5f0cab5f15
MD5 e64a7db01ba9afa486dd62c62e4df193
BLAKE2b-256 146510def89ff40516dd97f91e2194de9ab7e8d0a8f051df023eabe6f7d2ece9

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp313-cp313-win32.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 83517774fbf33001074769be2ec29cf6c37106f234e2182eea421cc593f55057
MD5 88944ceefe3ac78e9e725d87d56afab5
BLAKE2b-256 ccbbe7804d1f2b6fa984326a65fef5b12d8711e957eab00194ec5ebff07a783e

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8cfaeadace259d482a1620f2084ce2935e66068670cd269e6663b457872e92ed
MD5 257e7e1e049598ad39394ab1f857baa1
BLAKE2b-256 67c0052d5e11cfe4db59d9e6d8ca5790b1b8c788538bd4cb53239209732395b1

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 c6e4e62b2335769fe97800b7ad624d658bb6744604f683c1829980400303d69a
MD5 426fae58d882eda91195af4a78fb6eea
BLAKE2b-256 1031fa84ac67ff5773c5d18caefd1cb035a473c16d462a4fb4019321b16e2dc9

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c46c06f473fcc8954421af55d348cfa37af5f6a3717dd7692425d6b39e0626d7
MD5 de2800e6dff69284d2cd40827fe35933
BLAKE2b-256 2326f2a85d37b0e89e388e610c9469fc8fb7dd42091ea5c91fdd6566f83c9fc1

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4b90cc4561daa9d058d5725ad537de4c3b4a683f46c784a4a23cb523254a7c68
MD5 bd689b4c4676b249f736d4ce40e6a2e9
BLAKE2b-256 ffca875d7a72cd80504a3ea307d821d55d2e5c8da8c6e5ddaf2c7dc9cc672849

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 51cee0bb4a1b44a3730554e2d7b6a8e6e4c9f17cd717e672d1e73cad92207055
MD5 98d1770c6075604d41cf760adc392e4b
BLAKE2b-256 227d8934b33967b9fccf624bd0251982832c1df4074d524290729f4dadfa4112

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp312-cp312-win32.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 fc14ebf70f568ec2f315799f69c2d871dda83fdfc327cab186b641a8eea36230
MD5 6832d394a77b02db23ccd79490991dc0
BLAKE2b-256 6f8cb4240f596510814bd48c61081787e4757057d1993004c6fce663948e7bd7

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f1a9537539c5a16f50b660679f7d2527f8118da5f87055f7bcbcb26f65f90160
MD5 d4608ce08cc05f75b44d65643e45e6cf
BLAKE2b-256 e0d1b83ef98078b0c920ef36807564f6ea6f62e50075ef2c7eea48541aec7453

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f68b430d6bde783496f289aa9d5c8293f2d555dde677bfa6b71945c823dadbb0
MD5 d96e8089ff3a9b811271969200d5d7ab
BLAKE2b-256 bc89f049a534b49d17e61decef6dc7d13c98ea3eaa38ac86711070ffedfccc7a

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 00e634a3f01bea96e8e23431b2618619201253893e6ace4b5244aa267f8c9187
MD5 2c1561925f4a3a04bf4fa909862fdd86
BLAKE2b-256 5b8df3b548922fd74ca71bc58e720a0fba3982b1b025d541ea9797eed6ef088b

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d0970dedc87f845e3f359941ef6a360c435d546ddcf1bdce6a63bfcd60f914ea
MD5 75ee1e4f486bbd51bbf0e9e2b3b89d25
BLAKE2b-256 dda02838e97c36bfdbc0ed82c45c44154182280751bec14fbc423aef1976332c

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8761e396e3b3b99189d35443858b3c59fc0b1c7b7764b2688071e587a7d3acee
MD5 8391f8e5c4fa11db89c9caa3a4c5302c
BLAKE2b-256 9a16e69cb4a08b5ea492593866f2c20f8bd197c88a625d67462cd82e9f62ec00

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 950d57104a11d9683e3dccb06cc5bea8fe085e166c290419dce6e310cc46d25f
MD5 c8ae727b6e095b9abfe852e5dba398bd
BLAKE2b-256 b7179f351746d0f5bea9a56af182ff9fe43832e08fbfb97a698e5cd18a1ded26

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 086ef103b719289195f36afe333214d6daf0a89aacd8a24b046efbced3fb1511
MD5 b850f7dffe8ab204e170bef2c4df7bc7
BLAKE2b-256 54bd0080bfde2f3fba1e2efc749b550ad64d2a294c26e7da03a6318474dce9ee

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 892a4f18f3f32417f351bb08dae9d6191ba3cb34d98f432ba88d9778f9ca7b9d
MD5 a2c205149ce9de8d90ac006f849f508c
BLAKE2b-256 f3a45e6a38f9e5cccff44fc2e05e1ab5f3fcf44ef70ca3a4fe1f6428ff789acf

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b602ac4d92f269209bdec77498c1e63fd0769497864d6775629e437f3c979b60
MD5 10d75205309bf12c9e1c57fba12f80e0
BLAKE2b-256 d9c4ee3d0f9ac2b1b0f6478b02ea67780ae0415988d46b3cc635e483c0c4ebea

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a935d1726211ff5737f1d29667f86d54b6096243d14a32cd07f07ed6de653b86
MD5 58e4fe323ff4d44faf59f29bc3915d2f
BLAKE2b-256 7b6638954011a6e4623da31788c3b0b9662c6a12e882588a1e5ed9d232b60344

See more details on using hashes here.

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