get_elementary_deformations¶
- torch_sim.elastic.get_elementary_deformations(state, n_deform=5, max_strain_normal=0.01, max_strain_shear=0.06, bravais_type=None)[source]¶
Generate elementary deformations for elastic tensor calculation.
Creates a series of deformed structures based on the crystal symmetry. The deformations are limited to non-equivalent axes of the crystal as determined by its Bravais lattice type.
- Parameters:
state (SimState) – SimState containing the base structure to be deformed
n_deform (int) – Number of deformations per non-equivalent axis
max_strain_normal (float) – Maximum deformation magnitude
max_strain_shear (float) – Maximum deformation magnitude
bravais_type (BravaisType) – BravaisType enum specifying the crystal system. If None, defaults to lowest symmetry (triclinic)
- Returns:
Deformed structures
- Return type:
Notes
For normal strains (axes 0,1,2), deformations range from -max_strain_normal to +max_strain_normal
For shear strains (axes 3,4,5), deformations range from -max_strain_shear to +max_strain_shear
- Deformation axes are:
0,1,2: x,y,z cartesian deformations 3,4,5: yz,xz,xy shear deformations