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

  • 🦀 Powered by RustSASA: Leverages Rust's performance and safety.
  • ⚡️ Ludicrous Speed: 63X faster than Biopython, 5X 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.4.0.tar.gz (70.9 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.4.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (742.0 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

rust_sasa_python-0.4.0-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (765.0 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

rust_sasa_python-0.4.0-cp314-cp314-win_amd64.whl (527.8 kB view details)

Uploaded CPython 3.14Windows x86-64

rust_sasa_python-0.4.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (741.3 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.4.0-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl (764.6 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ i686

rust_sasa_python-0.4.0-cp314-cp314-macosx_11_0_arm64.whl (628.5 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

rust_sasa_python-0.4.0-cp314-cp314-macosx_10_12_x86_64.whl (647.3 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

rust_sasa_python-0.4.0-cp313-cp313-win_amd64.whl (527.4 kB view details)

Uploaded CPython 3.13Windows x86-64

rust_sasa_python-0.4.0-cp313-cp313-win32.whl (478.8 kB view details)

Uploaded CPython 3.13Windows x86

rust_sasa_python-0.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (741.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.4.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (763.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

rust_sasa_python-0.4.0-cp313-cp313-macosx_11_0_arm64.whl (628.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rust_sasa_python-0.4.0-cp313-cp313-macosx_10_12_x86_64.whl (647.4 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

rust_sasa_python-0.4.0-cp312-cp312-win_amd64.whl (527.3 kB view details)

Uploaded CPython 3.12Windows x86-64

rust_sasa_python-0.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (741.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.4.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (763.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

rust_sasa_python-0.4.0-cp312-cp312-macosx_11_0_arm64.whl (628.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rust_sasa_python-0.4.0-cp312-cp312-macosx_10_12_x86_64.whl (647.2 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

rust_sasa_python-0.4.0-cp311-cp311-win_amd64.whl (528.2 kB view details)

Uploaded CPython 3.11Windows x86-64

rust_sasa_python-0.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (741.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.4.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (765.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

rust_sasa_python-0.4.0-cp311-cp311-macosx_11_0_arm64.whl (630.6 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

rust_sasa_python-0.4.0-cp311-cp311-macosx_10_12_x86_64.whl (647.5 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for rust_sasa_python-0.4.0.tar.gz
Algorithm Hash digest
SHA256 25cc4af542a39f8af1889c99fc4543c70416348289f00328a3e1f82e7a2d53e5
MD5 6a37f661d279d084f5adcf8dd7bdf78f
BLAKE2b-256 c391129f4bf4499c173b1e85b31e5aa3208ff72fc002bf465c5fb25a50d9b69b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b34ddc92f2fff61a7054c337b21d4ba5581cd95468d3b648eeeb14d7a5ece96a
MD5 9833ed43eed639e0260d3d5a5ee7496f
BLAKE2b-256 b20e203314ee231076b76c7f62bf88ba1d3b0e97d8aa6803d869bed50db205dc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d54e46624f633b792fba29051b4b2413cc2c9f30a4a8a9169d5a69405e0097d1
MD5 9d317bd434b13bad99b565914152283e
BLAKE2b-256 23ca4c248bea4c9b1a76fc902187dc833798427b2b4a80ac26c620e2f74cb5f8

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.4.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 a5e00d86866f079a8dbdfb49c753f6f65d08652be1e90ad81f7d8c7262dc289a
MD5 9c36a623e53a739ba9bf044f1e22ad9c
BLAKE2b-256 e2193638753baff6548a78005def6ad99d00a3132394256e8c1a927a810c536a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5fce793753be73b93f31189dc676aefa4f4fe3d0199353691ef22f237bbc8217
MD5 81f0c98ba58475ed9cba251f6f75d098
BLAKE2b-256 4bdf406a2f33ebace09f72537e8b8f36d4c23c0f8c87c9e0620f3bb1086f9cb9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 403c2a82ac7be25392bd5f38ea181e7bf8e83e6f1db7ad5fd85f711c6bd6efc4
MD5 5ea685be0ba7daeaf1ad5b759c8ca628
BLAKE2b-256 c6b5d69accb87642596eebfaeacfd86260a24a2be9d015b6b0a1a9862ddd5e2a

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.4.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e69df21c3e91ab0869a7b0b2e1ed2a484889cd89c7d013780ae311f38d5a0478
MD5 25820c542455322c83e1e2d410f71bff
BLAKE2b-256 68d0333c2b07c9a07275297f1b998c0872f7322987c3fb4e81a75e5db5e841cd

See more details on using hashes here.

File details

Details for the file rust_sasa_python-0.4.0-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8b2f1c376beeec2aa3a6ac53d17d01db3c913f3249a492dd1205821e263b3cbe
MD5 4fd629082a1db396847d6a1bcd463514
BLAKE2b-256 2e8597d2eda19f1f95c4adfbe919529190cc3190435d2aad11d2f50877072905

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7c3e6f9fc8f1548828f3c83ef4bbaf52b9b91fa9b1f19f1499f5dd27f345c386
MD5 0d98c2569271b47727e1d2eadc085a8e
BLAKE2b-256 3e32778ecb2ea0065718fa7559591d2bd7244cce95a3cc3cfe5d20e5268c20ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 4f8eed219ecb5bb3b739c93bb0758c1c6685e0cd4117d9dc83a7779c30aaf4e2
MD5 735a84e73516ca2356e169ab6e20a1fa
BLAKE2b-256 b7492717bc56e390e0a61f0e2925251fce54a0ed74fba48fe16f52db6c653afb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 00cc4b6180669054d69a41497bfd021514591a1f5b43877435b0a614443acccf
MD5 0f322012800965f3c1f873e8d8993f89
BLAKE2b-256 619c91c314062eb7104fa3f9219c84f2bcdc292b6d19fda43e9fe3c210718d31

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f26772f7300c5c18cbd66fd1ebcd2ff71781ca03c99b3f31b108b7625b7c02ac
MD5 ce4dce2ed77fc65012334e24a92b2ef9
BLAKE2b-256 0385ec7485846959bb5e61b63b63d930867a0ea1507de7bf4195e88712c96eb3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e981df7a7e1854db31d733f577f13e2fffc299da4367e06305e80e40c4185d28
MD5 ed6cf4f8ebf98c407bb8f44efb351bf2
BLAKE2b-256 0726c7509716ea59261dc706f5874981f4b99ed106b83f4c2e4937aa70f9cbab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 56f77554bde0318ee0eecdcf2d7ba105b2819a56c2790441825c0e5a81f77ef2
MD5 a44f4d90088d203d22bec4081c5af32b
BLAKE2b-256 c950a7cb572102b5f4f35d40a4c7d3ab316bc2d736a04d843a636201958b0748

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8c3352e37d9009f3a68e01432633b806fe44904cec7486bf77247dfb908e15c3
MD5 506986c3d182cd4e12723365955973ac
BLAKE2b-256 3d1dc8ceabebefad2f2dc1ba609e80a8716b63cf51f71d5e3e849f8dc3f82d49

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 489eee07396fde1fbffb8ae073bbf940126be7befa0cd7b8020e0f525f056f76
MD5 90b00da10559c3071711aec9169aea26
BLAKE2b-256 6a32be414c46f7313e15c3e4a425586a2633dc577c08abc837a0c1fc94a98949

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ba7808bb5efff9c920a6d4a7862856a9b17c98bef2590b50b7be853dcfc4da66
MD5 070a984c50b6958e1a4a8d6bee67d26d
BLAKE2b-256 e0a1b6270ddd30ca02fc5160a63fd87243e7bd7917dc25f333d94a181d48cbff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ab81d6c2c188d7e8d10758f13dc0434b8e1751c06f50ede6e9f1ba63b6027b14
MD5 67a84d83ffe0231688cd72be578a428c
BLAKE2b-256 1d0f762ced03b6750af20515ae70a812328824b1b8bc5f3e2afdfc57835f4072

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 5258a27ed667e2c83858c6cfdce296423860b9a2020623e5ff859ba6e83aa35e
MD5 262f24e587576f29c3a034261fb7ad6e
BLAKE2b-256 6c9995ed23dd570dabd8efb00aec4270d24a1e9cf9fdc6b8d604a429eae81bcb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e8ad011f79b42c1c3971d74707e32ba7dcd16859eeafe728fcb1d82c0ae69177
MD5 ed022acc83c264082be1144f2126e9af
BLAKE2b-256 435e946a133cdcf928186e454f280f993af9d9dc7aa1d9fdb2984b719a525cc1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1e051ab6b7d6b958c1e91f748736ad3c811ced7c6a3abab39ecf995071a8d98c
MD5 b11465796cb6b496ce5ac40aca40423c
BLAKE2b-256 e04aa05b525feecf1db30641f85ffb6e96d9e559a134582105bdfd7a4bf4a41e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 544bb687459636b77255b14b8ce58021a121c9968f96d8e113d6ccbf3b633cf3
MD5 bc0744b34c8bde7df99eb48faec35733
BLAKE2b-256 32844671cb356a6f628801fb705b4b59314a34d14f1551fb6d24d9cb96e692de

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 35f0ac283ec9db7eaa304785de63bdfe4cbfcde19cd626458b6adf49da301333
MD5 b506357bde2607271d03cc79d3707187
BLAKE2b-256 75b697821f9f0436610d388173028ea2a741bafafe021b72fed4d74779702867

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.4.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cc0036e2691699bfac8a0fd84edc4c867a08dea3ec9c9ad1d4f5aea9024b4e71
MD5 8b4c3b49b04e8617b7e37accf4ecde3c
BLAKE2b-256 1e1b9eeebdfc07b668f018afbd5e6739763abf35fd65e21dd18ba63201a8d3cd

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