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.2.tar.gz (69.8 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.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (650.0 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

rust_sasa_python-0.2.2-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (690.5 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

rust_sasa_python-0.2.2-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (649.2 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.2.2-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl (688.6 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ i686

rust_sasa_python-0.2.2-cp313-cp313-win_amd64.whl (459.2 kB view details)

Uploaded CPython 3.13Windows x86-64

rust_sasa_python-0.2.2-cp313-cp313-win32.whl (427.3 kB view details)

Uploaded CPython 3.13Windows x86

rust_sasa_python-0.2.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (649.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.2.2-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (688.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

rust_sasa_python-0.2.2-cp313-cp313-macosx_11_0_arm64.whl (566.8 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rust_sasa_python-0.2.2-cp313-cp313-macosx_10_12_x86_64.whl (577.3 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

rust_sasa_python-0.2.2-cp312-cp312-win_amd64.whl (459.4 kB view details)

Uploaded CPython 3.12Windows x86-64

rust_sasa_python-0.2.2-cp312-cp312-win32.whl (427.7 kB view details)

Uploaded CPython 3.12Windows x86

rust_sasa_python-0.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (649.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.2.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (688.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

rust_sasa_python-0.2.2-cp312-cp312-macosx_11_0_arm64.whl (566.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rust_sasa_python-0.2.2-cp312-cp312-macosx_10_12_x86_64.whl (577.1 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

rust_sasa_python-0.2.2-cp311-cp311-win_amd64.whl (459.6 kB view details)

Uploaded CPython 3.11Windows x86-64

rust_sasa_python-0.2.2-cp311-cp311-win32.whl (428.6 kB view details)

Uploaded CPython 3.11Windows x86

rust_sasa_python-0.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (649.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

rust_sasa_python-0.2.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (690.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

rust_sasa_python-0.2.2-cp311-cp311-macosx_11_0_arm64.whl (569.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

rust_sasa_python-0.2.2-cp311-cp311-macosx_10_12_x86_64.whl (581.2 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for rust_sasa_python-0.2.2.tar.gz
Algorithm Hash digest
SHA256 5a06dd65cbb3c6dc8a0e77b8f2fd95104a3e919b7e87bd4b3282b9438152b32b
MD5 ccba0898ce89c69f062697d2815e260a
BLAKE2b-256 ce43c3b6376be84ff5fe7e08992cebb4f85122939fb98933bb036b761c4030c2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3b6a2333bf36af91b61099cfc2b2582265244197debdacd13806082a785d066e
MD5 ebaa55de947fc4b9fb17b0d48fcccedb
BLAKE2b-256 d176f8c0a8ed7b8efb4f50027e68d53ff6e8a045566f223a5346bcff5e700b06

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2c1f3d4753a56a674e1dae01deb16260bcd7e11bbb3fccab4ad179ceb1cc3718
MD5 b47c3eb673b42988f2b1153ad04794cb
BLAKE2b-256 bd9af87086861dca7b55e819e3d1fd58e8c25fcedf2b5c2825af6aeff37f9c8a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d86458e00cb097be56f083534a4554592ca0b063a2f00e42507b2b6a1d1659f6
MD5 2881e3f7e1f2c4beb57ae6a5778eb012
BLAKE2b-256 207fae32ff40da2e899679bc9abf14426e060576edaa866d5a0958e8974fe251

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 455d8214bfb8ea45bfd16f37e681282068a6fb69014739da1001c91f710e3507
MD5 99e07ad88b089b9e2a2913fc0c8fdd34
BLAKE2b-256 989eed2f5969b43ef19927cdf66be2f2e2b328fc1a541ff58c8bfd4d743997a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 422ca529ae1f461809ce0058a194081ee6ed691469c9c40ddc4b2ae962e6b089
MD5 7141fa5e8cca5f12f98a8a8ddd4d4f05
BLAKE2b-256 8630919a9cc1a726442de4a9eef0064cd29dc76e1a29b9ee51d2603925ba4640

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 e436868b84e013bbab153f3b3c3830283742dbc7475f057684d1c63db2d27671
MD5 d28f9d4e3451983c26573b94d9019bde
BLAKE2b-256 0d2bc78dc98642d7511162e55a328c08505cd624540e602f22581f5ef2623510

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1ed8da90a0dc8658ae35f87c886027d1d9be111d24900e58e72d96152d3f4ddc
MD5 17e361681f453bb29d3de818fbc1c05e
BLAKE2b-256 463f866dee0567dfbaeb1c77ff4ca4c33424281fd194f946010eb6ccdabbe644

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d561a72101a191a3e6c8c349127926725c48125cf923eb75e397a1c8a7bb79f8
MD5 c597106167aedf8e31629e7ae0e10058
BLAKE2b-256 226547bb074edcb2028960f369570369471a60c4ffc99f6d2fa9534ce40cabff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3c283c5c07048254ad1bda11762b7034886096aa17a97d00af5cfd9a1a7afe88
MD5 d4690eca58a0684eff1ce34884004d4a
BLAKE2b-256 49a17cb78fdbbe2e910e8720ebaf6bbebb273a19becfdfd883a26617c4209992

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 303666f7401cdfa15a4637e9613f641f35b431f6aa253a0b50318b92c43d7546
MD5 cf34df10b8478f470fbf7ab9f03ac3de
BLAKE2b-256 a38c4e1d572c48486a2a0623f94c7392388d5b47926374147eae3edf3fd223e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c1d0f9135b7a1874f0355af45d8f935754fa7221bd954f0f333219181771227d
MD5 6f2d89d825e0ac10ec9d715444a63e63
BLAKE2b-256 571c3891d14598eab51ec5dd7b127087a89ebb6f6a36e0cc8e41323c6dc429c9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 86a5c4621f0d32b030acf43789385a33f622d0cebee84582ef319b447a0924ff
MD5 cc991d4211313e6dbe084033116e424a
BLAKE2b-256 e5545eadec563682b7d3939c40502d20230343a46deac28fef2d4dbb812c2f86

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 52bbffd8f03ab95347b9a1f4a501510d3ae64c6499c4fd021cf7bf520b5f6b5a
MD5 7f1611323d5823a689ab32b0d00e1cb0
BLAKE2b-256 5f6092b650a364c20454bea142677fc3bb623d0bad2f11d00454cc7c7a6cfad1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d6a5089fa0a9d658d948031db8cf3317a92d8f04122a87746978d8fc28dacd59
MD5 dcc3c8791c57cda2bf8f19aaccb3b804
BLAKE2b-256 e99272d22dee64b98cf6b8572861227983c15ff42d1955f9159ce930b4f36367

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2534c99e7914ee3ee5d1393608c7a856da8c3d475d1a430005384863d465ff97
MD5 d784824e2305ad92b3c13e11fccc4af0
BLAKE2b-256 1033aaec32fa50f2f2aa94acadc877c5fa8dffcbac17dee5a1391225f984d5e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 527abbf382419efd2a7eb35f76be2a8f41f5d9c69b215ed886ad380a0cc2368f
MD5 e1a2833b0fc43054e5643e00d9d4019c
BLAKE2b-256 42b05efa0ee84b893785c62617e5be0efb5a16cf08662081104d3ea1caac0ea0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 10958c8e4746d0abcd2b122dafc8716125381f047f97becfd472551ef19db97a
MD5 f54e75b75675a1f912a8694bc6200913
BLAKE2b-256 d6b5124d5ba7788c0c78121737bdc8595796a3d8af822e86b065b94f209d7b7a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 3af1f96422921308d4df8bbe48a754834615689aad91855590b99f3d1e1f4d17
MD5 aa0ec127b5ec41ef7b027385b19f77f0
BLAKE2b-256 50ef50ca5ef539a86d4768f65ed85fc6734d6ba40f8645bce2553288a6eb6c83

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4b76579f20ecfbee793212cee0e1277a24c0a5bce5dd2f9cbe15f914ae766520
MD5 8c9bacb3520d4d677f501b1aab167ce7
BLAKE2b-256 eeaf408cd038b23f45424d321b6f174bce08adab2bd9b5778aa146521f8582d0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f98f32dbd39b67039d3c2dfe8dfa6b407ccb2bb15cef072b80f6590145749232
MD5 ab64d3f932c6879e4e8c39a3a9318042
BLAKE2b-256 ad3d22ddd269386dd28ef08afe73aab7c9df89711987207e5302d9787a14f7a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 93e2e30d9aa05f7a2203c096031348c0387b87a6fd701f7ae61842399d0abc30
MD5 c051ce9b71e9beeb728ce211030bb5d2
BLAKE2b-256 62d1706651cf549349ab49d747c6c653b345636e7e523ece8f1c1576e3f1b35d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rust_sasa_python-0.2.2-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2e45705c2b5fea0d0a7deca27bc8565b58ae1ac35ba854733fa3a51fc5cc7f94
MD5 088b2aeb7b6ff02c811031355b87a864
BLAKE2b-256 7495dbcafa6f7c8942eeaa0bab8ffac39346afaad1e6e6685fa5bcc0603b2012

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