Skip to main content

Surfacia

Molecular surface descriptors, predictive modeling and chemical interpretation.

Surfacia connects SMILES → 3D → xTB/Gaussian → Multiwfn → descriptors → ML/SHAP. Choose whole-molecule, molecular-surface or local regions to relate a model's predictions to chemical structure. It analyzes molecular surfaces; it does not by itself simulate an electrode or a solid catalyst interface.

Start with your data

Install and check your version

python -m pip install --upgrade "surfacia[viz]"
python -c "import surfacia; print(surfacia.__version__)"
surfacia --help

The current version is 4.0.0. Upgrade an existing 3.0.3 installation to remove the former candidate-ranking extension. Check the printed version after installing. For development from GitHub source:

git clone https://github.com/sym823808458/Surfacia.git
cd Surfacia
python -m pip install -e ".[viz]"

Use a separate environment, preferably Python 3.10–3.12. The package declares Python >=3.9. The ML compatibility ranges remain xgboost>=2.1.4,<3 and shap>=0.48,<0.49. The full quantum workflow additionally needs independently installed/licensed xTB, Gaussian (g16, formchk) and Multiwfn. The descriptor-table tutorial does not need these external tools.

A runnable example

From the repository, after installing dependencies:

python examples/descriptor_table/make_data.py
surfacia ml-analysis -i examples/descriptor_table/descriptors.csv --manual --manual-features Full --test-samples "6,12,18,24,30,36" --epoch 32 --cores 1 --train-test-split 0.85 --no-generate-fitting

The six features and target are computed with RDKit. This is a reproducible software tutorial, not a quantum-surface benchmark or experimental logP validation. The current CLI uses XGBoost regression and repeated random splits. The manual documents its evaluation boundaries and distinguishes it from a frozen research benchmark. Ordinary SHAP is retained; attribution alone does not prove causality.

Upgrade from 3.0.3

The former Go Beyond/SPES candidate-ranking extension is removed from current source: no automatic ranking CSVs, ranking dashboard layer, --spes-csv option, or surfacia.ml.spes API. Original regression predictions and SHAP interpretation remain. See migration notes. The major version marks removed interfaces, not a new quantum method. Historical releases and manuscript archives remain available through their original records.

Maintain and cite

  • Maintenance: update docs/cases and build/release checks.
  • Release audit: GitHub, PyPI and Read the Docs findings.
  • Issues
  • Author: Yuming Su / 苏禹铭 · 823808458@qq.com
  • License: MIT. Cite the exact software version and commit; no publication DOI is assigned here.

Metadata

Release files for surfacia 4.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for surfacia 4.0.0
File Size Uploaded Provenance
surfacia-4.0.0.tar.gz 526.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for surfacia 4.0.0
File Interpreter ABI Platform
surfacia-4.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 669.2 kB

Release files / surfacia-4.0.0.tar.gz

Download URL surfacia-4.0.0.tar.gz
Size 526.5 kB
Tags Source
SHA-256 checksum
How to use checksums
06a73e88f535992efeda18dd9a7e2e7fc983bc8e36d856086b8517bb4ad8bf9f
BLAKE2b-256 checksum
How to use checksums
3928649a473c21f41c57b41869c132886b4aa1b8efc366e90cc28af3e4db529a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release files / surfacia-4.0.0-py3-none-any.whl

Download URL surfacia-4.0.0-py3-none-any.whl
Size 142.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
06cd1090cb2ef0014d5d7c34ccc1d1914ba6a98eea2771e59f65c9393e57d02e
BLAKE2b-256 checksum
How to use checksums
2ab502eaf67af74fc1e853031404cf4731ebee1da0ce19d0aa3c6edd26da9baf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Security for surfacia 4.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page