⚗️ vitrum
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. As of 1.0, the public API follows semantic versioning — breaking changes will be reflected in a major version bump and noted in the changelog.
📖 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). - 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).
3. Machine Learning & Workflows
- BALACE Framework: A Batch Active Learning framework for Atomistic Simulations (
vitrum.batch_active) (requiresworkflowsdependencies).- Automated workflow for training Machine Learning Interatomic Potentials (MLIPs) based on ACE .
- Integration with VASP and LAMMPS for data generation and active learning loops.
- Job management via Fireworks and Jobflow.
📑 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).
(DOI badge above is a placeholder — update it with the DOI Zenodo mints for the next release.)
👥 Author
Rasmus Christensen (rasmusc@bio.aau.dk)
⭐ 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.0.1.tar.gz.
File metadata
- Download URL: vitrum-1.0.1.tar.gz
- Upload date:
- Size: 46.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db6e147f449597368a16ad6c57be7c3938b8f2467bd3023aa7b65d99e085887e
|
|
| MD5 |
8dbe87e4d2cbfd2979e0baf1eb8cbe15
|
|
| BLAKE2b-256 |
72b0b3e227dc2d0395a80eccf24f2a4b7e84b824099d3797a6d7eb0066bceae6
|
Provenance
The following attestation bundles were made for vitrum-1.0.1.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.0.1.tar.gz -
Subject digest:
db6e147f449597368a16ad6c57be7c3938b8f2467bd3023aa7b65d99e085887e - Sigstore transparency entry: 2171228273
- Sigstore integration time:
-
Permalink:
R-Chr/vitrum@f7d284b48f4c0e2b50049a2634ad5176e559c535 -
Branch / Tag:
refs/tags/v.1.0.1 - Owner: https://github.com/R-Chr
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@f7d284b48f4c0e2b50049a2634ad5176e559c535 -
Trigger Event:
release
-
Statement type:
File details
Details for the file vitrum-1.0.1-py3-none-any.whl.
File metadata
- Download URL: vitrum-1.0.1-py3-none-any.whl
- Upload date:
- Size: 53.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62ceade2036033e1fa051f3f938e627e7e7c856e326868b92c3d5b94cd55ba0a
|
|
| MD5 |
5a544e43dfc38d3c1d756c63756103cc
|
|
| BLAKE2b-256 |
0a381aa44ab9c76a94fe200d9e0abcf7a9bf5d0228dd2b73058562b0e963559f
|
Provenance
The following attestation bundles were made for vitrum-1.0.1-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.0.1-py3-none-any.whl -
Subject digest:
62ceade2036033e1fa051f3f938e627e7e7c856e326868b92c3d5b94cd55ba0a - Sigstore transparency entry: 2171228285
- Sigstore integration time:
-
Permalink:
R-Chr/vitrum@f7d284b48f4c0e2b50049a2634ad5176e559c535 -
Branch / Tag:
refs/tags/v.1.0.1 - Owner: https://github.com/R-Chr
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@f7d284b48f4c0e2b50049a2634ad5176e559c535 -
Trigger Event:
release
-
Statement type: