VOLT
Open Source Ecosystem

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

RepositoryDescriptionLinks
SpatialAssemblerVolt's 3D model assembler. npm install @voltstack/spatial-assemblerGitHub · npm
HeadlessRasterizerRasterize GLB models without a browser. npm install @voltstack/headless-rasterizerGitHub · npm
CoreToolkitCore 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
LammpsIOHigh-performance parser & utilities for LAMMPS trajectory frames. npm install @voltstack/lammps-ioGitHub · npm
VoltSDKThe SDK to interact with the Volt APIs. npm install @voltstack/voltclient (npm) or pip install voltsdk (PyPI)GitHub · npm · PyPI
ClusterDaemonThe 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-clientGitHub · npm
VoltPlatform for research teams and materials scientists.GitHub
docs.voltcloud.devDocs for VOLT Labs Open-Source Software Ecosystem.GitHub

Foundational Algorithms

RepositoryDescriptionLinks
OpenDXAA modified DXA! Supports multiple structure identification methods including PTM, CNA, and Diamond structure analysis. Identifies dislocation lines, computes Bu…GitHub
GrainSegmentationAlgorithms for detects and segments grain boundaries in polycrystalline materials. Identifies individual grains, computes grain orientations, and extracts grain…GitHub
ElasticStrainComputes elastic strain tensors by mapping local atomic environments to reference crystal structures. Separates elastic from plastic deformation and calculates …GitHub
DisplacementsAnalysisCalculates atomic displacement vectors between reference and deformed configurations. Tracks atom movements, identifies displaced atoms, and computes displaceme…GitHub
CoordinationAnalysisComputes coordination numbers and nearest neighbor statistics for each atom. Analyzes local atomic environments and detects under/over-coordinated atoms indicat…GitHub
CentrosymmetryParameterCalculates the centrosymmetry parameter (CSP) for each atom to detect point defects, surfaces, and dislocation cores. Useful for visualizing crystal defects in …GitHub
AtomicStrainComputes per-atom strain tensors from atomic configurations. Calculates Green-Lagrangian strain, von Mises strain, and principal strains for deformation analysi…GitHub
StructureIdentificationAlgorithms for crystal structure identification in atomistic simulations. Classifies atoms by local structural environment to detect BCC, FCC, HCP, diamond cubi…GitHub
ClusterAnalysisGroups particles into clusters based on distance cutoff or bond topology. Identifies connected components, computes cluster sizes, centers of mass, and gyration…GitHub
AdaptiveCommonNeighborAnalysisRuns 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
PolyhedralTemplateMatchingRuns 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
LineReconstructionDXAReconstructs dislocation lines via DXA using cluster tables produced by ACNA/CNA or PTM.GitHub
PatternStructureMatcherRuns 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:

  1. Independent implementations. VOLT's algorithms are not 1:1 replicas of OVITO's.
  2. Compiler optimization flags. Release builds can introduce small numerical differences.
  3. 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.
  4. Different parallelization stacks. Repeated runs of the same algorithm may produce non-deterministic results within small tolerances.
  5. 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

  1. Fork the relevant repository.
  2. Create a branch for the change.
  3. 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.

On this page