Automatic filling of the Cij tensor based on symmetry: the cij.util.fill
module
- cij.util.fill.fill_cij(elast, system=None, ignore_residuals=False, ignore_rank=False, drop_atol=1e-08, residual_atol=0.1)
Fill Cij tensor components based on the symmetry constraints of the crystal system.
- Parameters
elast (
DataFrame
) – Elastic tensor components at different volume points as input.system (
Optional
[str
]) – Name of the crystal system whose symmetry is applied to fill the missing elastic tensor components. Should be Should be one of:triclinic
,monoclinic
,hexagonal
,trigonal6
,trigonal7
,orthorhombic
,tetragonal6
,tetragonal7
,cubic
.ignore_residuals (
bool
) – Keep filling the missing elastic tensor components based on the crystal system even if the disagreements exceeds tolerance.ignore_rank (
bool
) – Keep filling the missing elastic tensor components based on the crystal system even if not all necessary components are given.drop_atol (
float
) – Drop the elastic tensor components if the magnitude of the elastic tenor components if this components in all volume points are less than this value.residual_atol (
float
) – Disagreement allowed between the input elastic tensor components and constraints enforced by the symmetry of the system.
- Return type
DataFrame
- Returns
Elastic tensor components at different volume points with missing terms filled based on symmetry constraints of the crystall system.