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.5.0.tar.gz (72.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.5.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (762.4 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

rust_sasa_python-0.5.0-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (787.0 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

rust_sasa_python-0.5.0-cp314-cp314-win_amd64.whl (549.7 kB view details)

Uploaded CPython 3.14Windows x86-64

rust_sasa_python-0.5.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (761.3 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.5.0-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl (784.8 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ i686

rust_sasa_python-0.5.0-cp314-cp314-macosx_11_0_arm64.whl (652.5 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

rust_sasa_python-0.5.0-cp314-cp314-macosx_10_12_x86_64.whl (673.5 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

rust_sasa_python-0.5.0-cp313-cp313-win_amd64.whl (549.2 kB view details)

Uploaded CPython 3.13Windows x86-64

rust_sasa_python-0.5.0-cp313-cp313-win32.whl (500.0 kB view details)

Uploaded CPython 3.13Windows x86

rust_sasa_python-0.5.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (761.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.5.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (784.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

rust_sasa_python-0.5.0-cp313-cp313-macosx_11_0_arm64.whl (653.2 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rust_sasa_python-0.5.0-cp313-cp313-macosx_10_12_x86_64.whl (673.6 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

rust_sasa_python-0.5.0-cp312-cp312-win_amd64.whl (549.5 kB view details)

Uploaded CPython 3.12Windows x86-64

rust_sasa_python-0.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (761.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.5.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (784.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

rust_sasa_python-0.5.0-cp312-cp312-macosx_11_0_arm64.whl (653.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rust_sasa_python-0.5.0-cp312-cp312-macosx_10_12_x86_64.whl (673.8 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

rust_sasa_python-0.5.0-cp311-cp311-win_amd64.whl (549.9 kB view details)

Uploaded CPython 3.11Windows x86-64

rust_sasa_python-0.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (761.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.5.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (785.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

rust_sasa_python-0.5.0-cp311-cp311-macosx_11_0_arm64.whl (655.6 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

rust_sasa_python-0.5.0-cp311-cp311-macosx_10_12_x86_64.whl (674.9 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for rust_sasa_python-0.5.0.tar.gz
Algorithm Hash digest
SHA256 952557ee6591d3ee21cd7d444e8de67dfd5c813e00f850f0f6a923ac809ab5fe
MD5 ae31fbd622f97ef073072f76d687a311
BLAKE2b-256 7612766a37d510801fe532a77675cc342eea980997c1d1a7892983127e7b1aa7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ac4960a37342b257ac803aa928615aa0a9dbdd32da313f663d134e3d22776307
MD5 519d8296f611c771ba0f4095dce73529
BLAKE2b-256 1b0f26be5428d71020367940a3ecc58f980ca8076e1d26eb90c133947f25454c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 421f30be2b1e814a9b578af1f2b290cad773b7cdf74556dda9cb3df0166e34cc
MD5 804b483a106882a3991cf31255bbc937
BLAKE2b-256 455633ce6c98495e77a2e956c3c40aadac38ebe56246003c56d0a4c3e637d643

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 2babc41979164bc26aa6e2b8ce2aa394afecb6d1828d7f3501e602ed2a61f7f1
MD5 ea4e36826a52b98f5ff56589b4f61ad6
BLAKE2b-256 a8e5ac46567ea12daad7c7ce5cca968b27d1b04af5dae6b977fe9ecdbfe1c4a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 481c07e1ee8a9dbea163156c4be772926ef00b88642280554b859d8319acd8a8
MD5 c4eb80e4dc9a53798b323567cfe5a6aa
BLAKE2b-256 80fe4263184804370512292241219cad0d8a519574628abea6db0fe03fff325f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6e7143acec8844ec11312e37a5ecf6913e0a9bdc77093ba22378ff5d9aa73995
MD5 026cd616f2e331b27d5dc1d866342b1f
BLAKE2b-256 702bdfd49c2d269d9065e7e58a0250b4eee83311a48b8d8901af780d636ee2cf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2ab93f5bda06ae255bae45a0cfa1aff5c4879a540f692b1c49d562b417cdfd0a
MD5 b916cee54d06ff21cb404d5a6a549eaa
BLAKE2b-256 404d3d59bf1b33d3c13ba8d583d274b557cd02f93527d0696b64a19dd2cdddb7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 530a5ba3fa2cbb653a3fcd5fbff23670c588c8ceaf77d1f7aabe271b47771751
MD5 a1a3ca1d90a15e2a503255ebdead7f00
BLAKE2b-256 e5efa565f752f9f7cd85b82177f2edb3b11779eb8f0612fcf842a4682af2336e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 460017e27a8a9b99a77c5fc488e1df713a60140c5d2451bff575e15bc6a7696c
MD5 37ed6c59e6781d050c2a18700e5b6090
BLAKE2b-256 5a01e67e7e4439497470f382d2308eb3200bc2dba0511a047f54296b0e4826ec

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 3537a65fb5fba5fa5efb35e6bedf9d144f2db719bd25fb6014b7310d509269d2
MD5 9b79c932a242523ce10bc3b8b206fd4d
BLAKE2b-256 585368a4e12d7ec4bc7bb6e2a58ab9ef794762f4e0661fbd7c87aa92452bf712

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ed6d082ba4507131e4d90a710f76ceebd52bae04adce1f1668f8bf9edddbfe72
MD5 a14e7083e43f28805e039975b7224b7d
BLAKE2b-256 2be777d9f91d0b18d2dd1803f088b36238384de2ca2e47cff4979ad796e5ea8f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 81f5d6c64069e6913beee527b73e46c948cbb4d1ffc4747f04521a823cc76ff4
MD5 556a32aa04e1f4b371b4cb8bc8685e71
BLAKE2b-256 08918c077f407516ab4e18843b221425956493ca511f1c89eb015b18194ece9c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7ee852962809616a784bbe909fcbde9872207f926ae094ec1c578b9d7330c113
MD5 799864c2830b8cbfd5912de65ce38b70
BLAKE2b-256 fef9ff70f59f4b41cc733a257e6bb054e08e3f29bd0279bd0db8f39d8351e93d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1c1f6cfca01133b14401f032bf28da207e28bb55c5798c689514fdb1bb401432
MD5 e03afd736992137a0873eb8fae8e6f3b
BLAKE2b-256 e2c432d923f40c81648fc5a809cfb5056c78900ab7a1a25e1407706d35c81d0f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 47323ec55059e60dbcf6c4afadea8e58f3b5128c13bca55a646dfc39b1c2fa4d
MD5 aae2832a013aa6768acdd0b407d55611
BLAKE2b-256 8c15d79f28aafeadcbe06e3ffa151514b18c8de2d6a63409876952c72b0b081d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1fae43bf8b82676308205aee6438cec2d38242c3b7fb8d2dd79e297f9fdc723e
MD5 a9640dd4456c4e43c1984f17ed7fe8b8
BLAKE2b-256 dd8adf60703fa69b5b8ef0ac73614161aedac69a7d2efa202eb9c240ffc390ee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 61e06ddb07a6dea0022a7de9fd37de6eb6b3b34467490727e3d0fe1a644c47a4
MD5 5ac8f5d09107844857cf9f8f5e993a2d
BLAKE2b-256 23d0d8ac0b7cfbb2c5b0955525d40fe0ed84bd13533cc3f0509344d76cc37b83

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3d03efb146f06615eb1dfe990e2639f5440adced5e08e88b39e06275440b0335
MD5 f658f154d73a2aa6cbc5573fd296a391
BLAKE2b-256 9ca92478683cd6f920608a8ec9edf02a5c34d5385b21425febc8eec10a4ace40

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e4e4990d763917967e81d487dffa873f00aeaac0c7d84403bd4136aec75e84b7
MD5 a524aaa5fdcaecfe8b00d9e96fb7050c
BLAKE2b-256 733b3f71fc84bfacee6affd0c9f6518c5b23d4f22f116d588bc2274d2ae8def4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 25cc62aaa63e030787600bdf1ab05d2d3ac8bacea41da293be7809992e15d903
MD5 33cf9878523d0ff25b4750b06ad6fd28
BLAKE2b-256 2cb71b290031f90055af37c1e8a01c34fc29fb1cba94f7855f8c577462ae06e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5e1523f180a5ba691006dd942e321a61723c57e20e98032d5a926e6df619a18a
MD5 54c4a082142e17a6361373de9c85dd7b
BLAKE2b-256 9321017f0473730b92aa227e81685edf32cd6001eb7686a00862b9169569d3aa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 70231bbde6114964254b2cfd1eafaba06fcb4171f75ef930510e2e08ee595ba1
MD5 0e82768091455f8f14612dd1f5df8798
BLAKE2b-256 ed4c6d17c090a3927e8df19466eedbeb8dfc8c77c74f68380d697d359e87f74a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dc2ea5a53e8733a75b768658eeeb5405502eab90ce476c3936d97463ded566c2
MD5 d672002838dec2630f25f34195c14605
BLAKE2b-256 defabc5182c676b1263315d56c08412f505ab159a2a4f259636267c1e5a65f70

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.5.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 58a64f468ebfa8ff4483d692a143e99d9a2c11d7cdf9d8174ca0e66ca8cb3743
MD5 4f6abfb4f1e6edf18bc9c6b5f9c7c7d3
BLAKE2b-256 57a84a8e99665037ec3363697247161899a6a13efd81a96a4ff28f92e34fc6fe

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