Anisotropic Materials

Anisotropic Material Base Class

class burnman.classes.anisotropy.AnisotropicMaterial(rho, cijs)[source]

Bases: Material

A base class for anisotropic elastic materials. The base class is initialised with a density and a full isentropic stiffness tensor in Voigt notation. It can then be interrogated to find the values of different properties, such as bounds on seismic velocities. There are also several functions which can be called to calculate properties along directions oriented with respect to the isentropic elastic tensor.

See [MHS11] and https://docs.materialsproject.org/methodology/elasticity/ for mathematical descriptions of each function.

property density

Returns the density of this material.

Note

Needs to be implemented in derived classes. Aliased with rho().

Returns:

The density of this material in [kg/m^3].

Return type:

float

property isentropic_bulk_modulus_voigt
Returns:

The Voigt bound on the isentropic bulk modulus [Pa].

Return type:

float

property isentropic_bulk_modulus_reuss
Returns:

The Reuss bound on the isentropic bulk modulus [Pa].

Return type:

float

property isentropic_bulk_modulus_vrh
Returns:

The Voigt-Reuss-Hill average of the isentropic bulk modulus [Pa].

Return type:

float

property isentropic_shear_modulus_voigt
Returns:

The Voigt bound on the isentropic shear modulus [Pa].

Return type:

float

property isentropic_shear_modulus_reuss
Returns:

The Reuss bound on the isentropic shear modulus [Pa].

Return type:

float

property isentropic_shear_modulus_vrh
Returns:

The Voigt-Reuss-Hill average of the isentropic shear modulus [Pa].

Return type:

float

property isentropic_universal_elastic_anisotropy
Returns:

The universal elastic anisotropy [unitless]

Return type:

float

property isentropic_isotropic_poisson_ratio
Returns:

The isotropic Poisson ratio (mu) [unitless]. A metric of the lateral response to loading.

Return type:

float

christoffel_tensor(propagation_direction)[source]
Returns:

The Christoffel tensor from an elastic stiffness tensor and a propagation direction for a seismic wave relative to the stiffness tensor: T_ik = C_ijkl n_j n_l.

Return type:

float

isentropic_linear_compressibility(direction)[source]
Returns:

The linear isentropic compressibility in a given direction relative to the stiffness tensor [1/Pa].

Return type:

float

isentropic_youngs_modulus(direction)[source]
Returns:

The isentropic Youngs modulus in a given direction relative to the stiffness tensor [Pa].

Return type:

float

isentropic_shear_modulus(plane_normal, shear_direction)[source]
Returns:

The isentropic shear modulus on a plane in a given shear direction relative to the stiffness tensor [Pa].

Return type:

float

isentropic_poissons_ratio(axial_direction, lateral_direction)[source]
Returns:

The isentropic poisson ratio given loading and response directions relative to the stiffness tensor [unitless].

Return type:

float

wave_velocities(propagation_direction)[source]
Returns:

The compressional wave velocity, and two shear wave velocities in a given propagation direction [m/s].

Return type:

list, containing the wave speeds and directions of particle motion relative to the stiffness tensor

Derived classes

class burnman.classes.anisotropy.IsotropicMaterial(rho, cijs)[source]

Bases: AnisotropicMaterial

A class derived from the AnisotropicMaterial base class Initialization takes two input parameters; rho and [C12, C44] (i.e. lambda and mu, the Lame parameters)

class burnman.classes.anisotropy.CubicMaterial(rho, cijs)[source]

Bases: AnisotropicMaterial

A class derived from the AnisotropicMaterial base class Initialization takes two input parameters; rho and [C11, C12, C44]

class burnman.classes.anisotropy.HexagonalMaterial(rho, cijs)[source]

Bases: AnisotropicMaterial

A class derived from the AnisotropicMaterial base class Initialization takes two input parameters; rho and [C11, C12, C13, C33, C44]

class burnman.classes.anisotropy.TetragonalMaterial(rho, cijs)[source]

Bases: AnisotropicMaterial

A class derived from the AnisotropicMaterial base class Initialization takes two input parameters; rho and [C11, C12, C13, C33, C44, C66] or [C11, C12, C13, C16, C33, C44, C66]

class burnman.classes.anisotropy.RhombohedralMaterial(rho, cijs)[source]

Bases: AnisotropicMaterial

A class derived from the AnisotropicMaterial base class Initialization takes two input parameters; rho and [C11, C12, C13, C14, C33, C44, C66] or [C11, C12, C13, C14, C15, C33, C44, C66]

class burnman.classes.anisotropy.OrthorhombicMaterial(rho, cijs)[source]

Bases: AnisotropicMaterial

A class derived from the AnisotropicMaterial base class Initialization takes two input parameters; rho and [C11, C12, C13, C22, C23, C33, C44, C55, C66]

class burnman.classes.anisotropy.MonoclinicMaterial(rho, cijs)[source]

Bases: AnisotropicMaterial

A class derived from the AnisotropicMaterial base class Initialization takes two input parameters; rho and [C11, C12, C13, C15, C22, C23, C25, C33, C35, C44, C46, C55, C66]

class burnman.classes.anisotropy.TriclinicMaterial(rho, cijs)[source]

Bases: AnisotropicMaterial

A class derived from the AnisotropicMaterial base class Initialization takes two input parameters; rho and [Cij, where 1<=i<=6 and i<=j<=6]