vitrum is a Python package designed for the generation, analysis, and simulation of disordered and glassy atomic structures. It provides a comprehensive suite of tools for structural characterization, diffusion analysis, and tools for machine learning-driven potential development.
🚧 Active development
vitrum is under active development. Before 2.0, a minor release may still remove or rename API that turned out to be wrong — every such change is listed in the changelog, and anything scheduled for removal is deprecated with a warning naming its replacement first where practical. From 2.0 onwards the public API follows semantic versioning.
📖 Documentation
Please see the docs folder for detailed documentation or check the online documentation.
📦 Installation
vitrum is available on PyPI:
pip install vitrum
To install dependencies for simulation workflows (atomate2, fireworks, jobflow):
pip install vitrum[workflows]
For the latest development version, clone the repository and install it in editable mode instead:
git clone https://github.com/R-Chr/vitrum.git
cd vitrum
pip install -e .
🚀 Examples
See the examples folder for runnable Jupyter notebooks demonstrating scattering/RDF analysis, Qn speciation, and random structure generation, among others.
🎯 Scope and Functionality
vitrum offers:
1. Structural Characterization
- Scattering Functions: Calculate partial and total Radial Distribution Functions (RDF) and Structure Factors ($S(q)$) for both Neutron and X-ray scattering (
vitrum.scattering). - Ring Analysis: Analyze ring size distributions and statistics in network glasses (
vitrum.rings). - Void/Cavity Analysis: Quantify free volume fraction and discrete cavity size distributions via a grid/probe-accessible-volume method (
vitrum.voids). - Topological Analysis: Compute persistent homology to identify medium-range order and topological features (
vitrum.persistent_homology). - Coordination & Angles: Analyze bond angle distributions and coordination environments (
vitrum.coordination).
2. Dynamics & Diffusion
- Diffusion Analysis: Calculate Mean Squared Displacement (MSD), diffusion coefficients, and Van Hove correlation functions (
vitrum.diffusion).
📑 Citation
If you use vitrum in your work, please cite it. Each GitHub release is archived on Zenodo with a version-specific DOI; see CITATION.cff for the citation metadata (GitHub's "Cite this repository" button uses this file automatically).
🤝 Contributing
Bug reports, test cases and pull requests are welcome. See CONTRIBUTING.md for the development setup and what a mergeable change looks like, and CODE_OF_CONDUCT.md for community expectations. Security issues should go through SECURITY.md rather than the public issue tracker.
👥 Author
Rasmus Christensen (rasmus.christensen.a1@tohoku.ac.jp)
⭐ Acknowledgements
vitrum relies on several powerful open-source packages:
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vitrum-1.1.0.tar.gz.
File metadata
- Download URL: vitrum-1.1.0.tar.gz
- Upload date:
- Size: 144.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
13f0f4d1a6c162bbf4907e92c93a41bae38e384d4d344f3cb3eb9470e080cf56
|
|
| MD5 |
6207df1256e5a4c006045a3bcc185161
|
|
| BLAKE2b-256 |
18810af2c90ce2bef46fadf9047afb60f3449006ab721e96976a897feeedaa76
|
Provenance
The following attestation bundles were made for vitrum-1.1.0.tar.gz:
Publisher:
publish.yml on R-Chr/vitrum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vitrum-1.1.0.tar.gz -
Subject digest:
13f0f4d1a6c162bbf4907e92c93a41bae38e384d4d344f3cb3eb9470e080cf56 - Sigstore transparency entry: 2500311815
- Sigstore integration time:
-
Permalink:
R-Chr/vitrum@21d6639c483161f316626fd86afdf5a2682579c5 -
Branch / Tag:
refs/tags/v.1.1.0 - Owner: https://github.com/R-Chr
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@21d6639c483161f316626fd86afdf5a2682579c5 -
Trigger Event:
release
-
Statement type:
File details
Details for the file vitrum-1.1.0-py3-none-any.whl.
File metadata
- Download URL: vitrum-1.1.0-py3-none-any.whl
- Upload date:
- Size: 111.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9360de6be5f188cf233ed0bef38531c115c300031d4ce882874e660b5dcca630
|
|
| MD5 |
1c9a864055a038f6d8acdf39209da6b6
|
|
| BLAKE2b-256 |
d16f63654feb83d7ab2c69fa1edecc4e94820866db4b165eaa98f695feb24131
|
Provenance
The following attestation bundles were made for vitrum-1.1.0-py3-none-any.whl:
Publisher:
publish.yml on R-Chr/vitrum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vitrum-1.1.0-py3-none-any.whl -
Subject digest:
9360de6be5f188cf233ed0bef38531c115c300031d4ce882874e660b5dcca630 - Sigstore transparency entry: 2500311830
- Sigstore integration time:
-
Permalink:
R-Chr/vitrum@21d6639c483161f316626fd86afdf5a2682579c5 -
Branch / Tag:
refs/tags/v.1.1.0 - Owner: https://github.com/R-Chr
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@21d6639c483161f316626fd86afdf5a2682579c5 -
Trigger Event:
release
-
Statement type: