Skip to main content

⚗️ 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) (requires workflows dependencies).
    • 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

(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

vitrum-1.0.1.tar.gz (46.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vitrum-1.0.1-py3-none-any.whl (53.5 kB view details)

Uploaded Python 3

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

Hashes for vitrum-1.0.1.tar.gz
Algorithm Hash digest
SHA256 db6e147f449597368a16ad6c57be7c3938b8f2467bd3023aa7b65d99e085887e
MD5 8dbe87e4d2cbfd2979e0baf1eb8cbe15
BLAKE2b-256 72b0b3e227dc2d0395a80eccf24f2a4b7e84b824099d3797a6d7eb0066bceae6

See more details on using hashes here.

Provenance

The following attestation bundles were made for vitrum-1.0.1.tar.gz:

Publisher: publish.yml on R-Chr/vitrum

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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

Hashes for vitrum-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 62ceade2036033e1fa051f3f938e627e7e7c856e326868b92c3d5b94cd55ba0a
MD5 5a544e43dfc38d3c1d756c63756103cc
BLAKE2b-256 0a381aa44ab9c76a94fe200d9e0abcf7a9bf5d0228dd2b73058562b0e963559f

See more details on using hashes here.

Provenance

The following attestation bundles were made for vitrum-1.0.1-py3-none-any.whl:

Publisher: publish.yml on R-Chr/vitrum

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.1.0

2 files

This release

1.0.1 This release

2 files

1.0.0

2 files

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