Shear Matrix Strain
Group: Lattice | Class: ShearMatrixCard
What the card does
Generate off-diagonal deformations by scanning xy, yz, and xz shear-matrix components, each with an independent minimum, maximum, and step.
With symmetric=true, matching lower-triangular entries are filled to form a symmetric strain-like path.
Example workflow
Scenario: Predicted C44 is 40% below DFT
An fcc Al NEP reproduces C11 and C12 but predicts only 60% of the DFT C44. Its training set contains axial strains but no off-diagonal shear states.
Diagnosis: Shear elastic constants derive from off-diagonal strain response. Add cells with controlled shear components so that response is interpolated.
Input: A relaxed fcc Al cell.
Objective: Scan symmetric xy shear from -3% to +3% in 1% steps.
Parameters:
xy_range=[-3, 3, 1]yz_range=[0,0,1](one zero point; the step must be nonzero)xz_range=[0,0,1]symmetric=true
Output: Seven structures with xy from -0.03 to +0.03 and zero yz/xz components.
How to verify that training-set quality improved:
After labeling and retraining, recompute the elastic tensor; C44 should approach the DFT reference.
Inspect resulting cell angles and confirm that nonorthogonality remains in the intended range.
If C44 improves but C55/C66 do not, scan yz and xz separately.
Open all three ranges only when joint coverage is needed; output is Nxy × Nyz × Nxz.
When to add this card
Add it when:
Shear modulus or off-diagonal elastic response is systematically wrong
Training lacks nonorthogonal cells
Stress-strain response along shear directions is needed
Do not add it when:
Only volume and axial strain are needed; use
Lattice StrainShear should be controlled through crystallographic angles; use
Shear Angle StrainThe system is molecular and shear would distort intramolecular topology without molecular protection
Parameters
XY Range(xy_range)
tuple[float, float, float], default (-5.0,5.0,1.0). xy scan as [min,max,step] in percent; 5 means matrix component 0.05. Use [0,0,1] for an inactive channel.
YZ Range(yz_range)
tuple[float,float,float], default (-5.0,5.0,1.0). yz scan with the same syntax; use [0,0,1] when inactive.
XZ Range(xz_range)
tuple[float,float,float], default (-5.0,5.0,1.0). xz scan with the same syntax; use [0,0,1] when inactive.
Output is Nxy × Nyz × Nxz. Three default 11-point channels produce 1,331 structures. Validate one channel first.
Symmetric(symmetric)
bool, default true. Mirror upper-triangular components into the lower triangle, for example S[1,0]=S[0,1]. Disable only for an intentionally asymmetric deformation path.
Identify Organic(identify_organic)
bool, default false. Enable molecular protection for molecular crystals; leave disabled for purely inorganic systems.
Recommended presets
Single-component elastic sampling (xy only, ±3%, symmetric)
{
"class": "ShearMatrixCard",
"check_state": true,
"xy_range": [-3, 3, 1],
"yz_range": [0, 0, 1],
"xz_range": [0, 0, 1],
"symmetric": true,
"identify_organic": false
}
Two-component shear coverage (xy and yz, ±5%, symmetric, about 121 outputs)
{
"class": "ShearMatrixCard",
"check_state": true,
"xy_range": [-5, 5, 1],
"yz_range": [-5, 5, 1],
"xz_range": [0, 0, 1],
"symmetric": true,
"identify_organic": false
}
Three-channel study (±6%, step 2%, asymmetric, about 343 outputs)
{
"class": "ShearMatrixCard",
"check_state": true,
"xy_range": [-6, 6, 2],
"yz_range": [-6, 6, 2],
"xz_range": [-6, 6, 2],
"symmetric": false,
"identify_organic": false
}
Recommended combinations
Lattice Strain->Shear Matrix Strain: cover axial response before shear tensor componentsShear Matrix Strain->Atomic Perturb: add coordinate noise after a shear deformationSuper Cell->Shear Matrix Strain: shear at the intended cell scale
Common questions
No output. Every step must be positive; use [0,0,1] for an inactive component.
Output explodes. Three channels form a Cartesian product. Validate one channel and estimate the total before adding more.
Geometry becomes implausible. Excessive shear can make the lattice ill-conditioned. Inspect nearest-neighbor distances and the cell determinant, increasing beyond ±5% gradually.
Matrix or angle shear? Matrix shear directly controls Cartesian off-diagonal components and aligns with elastic-tensor calculations. Angle shear controls alpha, beta, and gamma and aligns with crystallographic descriptions. They are distinct paths and may be complementary.
Output labels
Shr(xy={sxy}%,yz={syz}%,xz={sxz}%,sym={0|1})
Reproducibility
Deterministic: all components are scanned on a fixed grid.