Open Source Ecosystem
Repositories, foundational algorithms, and SDKs published by VOLT Labs.
VOLT is built on the open-source repositories below — shared libraries and SDKs, the cluster daemon, and the foundational scientific algorithms behind the bundled plugins.
VOLT Labs Ecosystem
| Repository | Description | Links |
|---|---|---|
| SpatialAssembler | Volt's 3D model assembler. npm install @voltstack/spatial-assembler | GitHub · npm |
| HeadlessRasterizer | Rasterize GLB models without a browser. npm install @voltstack/headless-rasterizer | GitHub · npm |
| CoreToolkit | Core C++ library providing math primitives (Vector3, Matrix3, Quaternion), spatial data structures (KD-tree-style nearest-neighbor finder, cutoff/grid neighbor finder), simulation cell handling, and parallel a… | GitHub |
| LammpsIO | High-performance parser & utilities for LAMMPS trajectory frames. npm install @voltstack/lammps-io | GitHub · npm |
| VoltSDK | The SDK to interact with the Volt APIs. npm install @voltstack/voltclient (npm) or pip install voltsdk (PyPI) | GitHub · npm · PyPI |
| ClusterDaemon | The compute node for your Volt Team. The daemon service itself is private/unpublished. Connect from code via the separate SDK client: npm install @voltstack/daemon-cluster-client | GitHub · npm |
| Volt | Platform for research teams and materials scientists. | GitHub |
| docs.voltcloud.dev | Docs for VOLT Labs Open-Source Software Ecosystem. | GitHub |
Foundational Algorithms
| Repository | Description | Links |
|---|---|---|
| OpenDXA | A modified DXA! Supports multiple structure identification methods including PTM, CNA, and Diamond structure analysis. Identifies dislocation lines, computes Bu… | GitHub |
| GrainSegmentation | Algorithms for detects and segments grain boundaries in polycrystalline materials. Identifies individual grains, computes grain orientations, and extracts grain… | GitHub |
| ElasticStrain | Computes elastic strain tensors by mapping local atomic environments to reference crystal structures. Separates elastic from plastic deformation and calculates … | GitHub |
| DisplacementsAnalysis | Calculates atomic displacement vectors between reference and deformed configurations. Tracks atom movements, identifies displaced atoms, and computes displaceme… | GitHub |
| CoordinationAnalysis | Computes coordination numbers and nearest neighbor statistics for each atom. Analyzes local atomic environments and detects under/over-coordinated atoms indicat… | GitHub |
| CentrosymmetryParameter | Calculates the centrosymmetry parameter (CSP) for each atom to detect point defects, surfaces, and dislocation cores. Useful for visualizing crystal defects in … | GitHub |
| AtomicStrain | Computes per-atom strain tensors from atomic configurations. Calculates Green-Lagrangian strain, von Mises strain, and principal strains for deformation analysi… | GitHub |
| StructureIdentification | Algorithms for crystal structure identification in atomistic simulations. Classifies atoms by local structural environment to detect BCC, FCC, HCP, diamond cubi… | GitHub |
| ClusterAnalysis | Groups particles into clusters based on distance cutoff or bond topology. Identifies connected components, computes cluster sizes, centers of mass, and gyration… | GitHub |
| AdaptiveCommonNeighborAnalysis | Runs ACNA/CNA, exports per-atom structure type, and generates cluster graph artifacts (clusters table and cluster transitions table) consumed by OpenDXA and other downstream plugins. | GitHub |
| PolyhedralTemplateMatching | Runs PTM to classify atoms by local structural environment. Exports per-atom structure type and cluster graph artifacts consumed by OpenDXA and downstream plugins. Supports BCC, FCC, HCP, SC, cubic diamond, and hex diamond targets with a configurable RMSD threshold. | GitHub |
| LineReconstructionDXA | Reconstructs dislocation lines via DXA using cluster tables produced by ACNA/CNA or PTM. | GitHub |
| PatternStructureMatcher | Runs pattern structure matching from user-defined reference patterns and exports a reconstructed-state artifact consumible by OpenDXA. | GitHub |
Comparison with OVITO
Each plugin executes one Foundational Algorithm, distributed through the Registry and pulled on demand by the ClusterDaemon when an analysis runs.
OVITO — the most widely used and cited tool for analyzing LAMMPS simulations — is the reference for result comparison. VOLT's Foundational Algorithms and the plugins built on them are independent implementations. For CoordinationAnalysis, VOLT and OVITO produce identical results; for more complex algorithms such as OpenDXA or ElasticStrain, results may differ:
- Independent implementations. VOLT's algorithms are not 1:1 replicas of OVITO's.
- Compiler optimization flags. Release builds can introduce small numerical differences.
- Undefined behavior risk. When the numerical difference under (2) is significant, it may indicate UB. During OpenDXA development, UB was caused by compiler optimizations applied to technically correct code.
- Different parallelization stacks. Repeated runs of the same algorithm may produce non-deterministic results within small tolerances.
- Complex algorithms are sensitive. In GrainSegmentation, OpenDXA, or structure identification methods like CNA and PTM, single-line changes can produce large divergence. The current cluster construction in OpenDXA differs from OVITO's DislocationAnalysisEngine: results are nearly identical with CNA but not guaranteed to match with PTM or other structure identification algorithms.
Benchmarks comparing VOLT and OVITO results on the same timestep are planned.
Contributing
- Fork the relevant repository.
- Create a branch for the change.
- Submit a pull request with a clear description.
Refer to CONTRIBUTING.md in each repository for repository-specific guidelines.
AI-powered agents are available in the .github directory of the Volt repository for feature work and bug fixes. Do not use AI for the Foundational Algorithms — these are non-trivial algorithms, and current models tend to hallucinate when working with them.
License
VOLT Labs open-source projects are released under the MIT License unless otherwise specified in the repository.