Crystallography
Crystallography encapsulates the crystal-symmetry data used by the orientation, symmetry-variant, and crystal-plasticity subsystems. It selects the symmetry family (cubic, hexagonal, …) at initialisation and exposes the corresponding symmetry operators, slip systems, and rotation helpers.
Key Classes and Concepts
Crystallography : public OPObject: owns the selected symmetry family and the derived operator set.
Usage
Input
Defined in the @Crystallography block.
text
@Crystallography
$CrystalSymmetry Crystal symmetry family : CUBIC| Token | Variable | Type | Default |
|---|---|---|---|
$CrystalSymmetry | symmetry keyword | string | CUBIC |
Accepted values follow the enumeration in include/Crystallography.h; CUBIC is the default. For hexagonal-symmetry cases, see how the interface-energy / mobility models (HEXBOETTGER, HEXSUN, HEXYANG — documented on Interface Properties) consume a compatible symmetry.
Output
No dedicated output. The symmetry state is read by SymmetryVariants, Orientations, and the crystal-plasticity machinery in Mechanics.
Example
cpp
#include "Crystallography.h"
Crystallography Cryst(OPSettings, InputFile);Dependencies
- SymmetryVariants — receives the symmetry operators.
- Orientations — reduces misorientations using the symmetry group.
- Mechanics — crystal-plasticity slip system rotations respect the chosen symmetry.