VOLT
Plugins

Elastic Strain

Compute crystal-referenced elastic strain by mapping local environments to an ideal lattice.

Overview

Elastic Strain is the right tool when your system can still be meaningfully compared to an ideal crystal lattice. Instead of comparing a frame to an arbitrary reference configuration, it tries to map local environments onto a chosen crystal structure and then computes elastic strain measures from that mapping.

That makes it a better fit for lattice-referenced deformation analysis than for fully general plastic or highly disordered systems.

Parameters

ParameterTypeDefaultDescription
latticeConstantfloatLattice constant a0. Required.
crystalStructurestringBCCReference crystal structure type. Options: FCC, BCC, HCP, SC, CUBIC_DIAMOND, HEX_DIAMOND.
caRatiofloat1.0c/a ratio for HCP and hexagonal crystals.
pushForwardboolfalsePush strain to the spatial frame.
calcDeformationGradientbooltrueCompute deformation gradient F.
calcStrainTensorsbooltrueCompute strain tensors.
identificationModestringPTMStructure identification mode. Options: CNA, PTM.
rmsdfloat0.10RMSD cutoff for PTM classification.

Practical notes

  • latticeConstant is mandatory in practice, not just conceptually important.
  • Atoms that cannot be mapped cleanly to the expected crystal context are emitted with zero-valued strain properties.
  • This plugin does not perform a full elastic-versus-plastic decomposition in the broad continuum-mechanics sense. It computes elastic strain relative to an ideal lattice when that mapping is possible.

Output

{outputBase}_elastic_strain.msgpack

type StrainTensor = [float, float, float, float, float, float];
type DeformationGradient = [float, float, float, float, float, float, float, float, float];

interface PerAtomProperties {
    id: int;
    volumetric_strain: float;
    strain_tensor?: StrainTensor;
    deformation_gradient?: DeformationGradient;
}

interface ElasticStrainOutput {
    main_listing: {
        average_volumetric_strain: float;
    };
    "per-atom-properties": PerAtomProperties[];
}

{outputBase}_atoms.msgpack

Grouped atoms by structure family for visualization and downstream context.

See Also

On this page