atomistics.workflows.elastic.elastic_moduli.ElasticProperties#

class atomistics.workflows.elastic.elastic_moduli.ElasticProperties(elastic_matrix: ndarray)[source]#

Bases: object

__init__(elastic_matrix: ndarray)[source]#

Initialize the ElasticProperties class.

Parameters:

elastic_matrix (np.ndarray) – The elastic matrix.

Methods

AVR()

Calculate the average value ratio (AVR) of the shear modulus.

__init__(elastic_matrix)

Initialize the ElasticProperties class.

bulkmodul_hill()

Calculate the Hill average of the bulk modulus.

bulkmodul_reuss()

Calculate the Reuss average of the bulk modulus.

bulkmodul_voigt()

Calculate the bulk modulus in Voigt notation.

elastic_matrix()

Get the elastic matrix.

elastic_matrix_eigval()

Calculate the eigenvalues and eigenvectors of the elastic matrix.

elastic_matrix_inverse()

Calculate the inverse of the elastic matrix.

poissonsratio_hill()

Calculate the Poisson's ratio using Hill's approximation.

poissonsratio_reuss()

Calculate the Poisson's ratio using the Reuss approximation.

poissonsratio_voigt()

Calculate the Poisson's ratio using the Voigt approximation.

shearmodul_hill()

Calculate the shear modulus using the Hill approximation.

shearmodul_reuss()

Calculate the Reuss average of the shear modulus.

shearmodul_voigt()

Calculate the shear modulus in Voigt notation.

to_dict([output_keys])

Convert the ElasticProperties object to a dictionary.

youngsmodul_hill()

Calculate the Young's modulus using the Hill approximation.

youngsmodul_reuss()

Calculate the Young's modulus using the Reuss approximation.

youngsmodul_voigt()

Calculate the Young's modulus using the Voigt approximation.

AVR() float[source]#

Calculate the average value ratio (AVR) of the shear modulus.

Returns:

The average value ratio (AVR) of the shear modulus.

Return type:

float

bulkmodul_hill() float[source]#

Calculate the Hill average of the bulk modulus.

Returns:

The Hill average of the bulk modulus.

Return type:

float

bulkmodul_reuss() float[source]#

Calculate the Reuss average of the bulk modulus.

Returns:

The Reuss average of the bulk modulus.

Return type:

float

bulkmodul_voigt() float[source]#

Calculate the bulk modulus in Voigt notation.

Returns:

The bulk modulus in Voigt notation.

Return type:

float

elastic_matrix() ndarray[source]#

Get the elastic matrix.

Returns:

The elastic matrix.

Return type:

np.ndarray

elastic_matrix_eigval() tuple[ndarray, ndarray][source]#

Calculate the eigenvalues and eigenvectors of the elastic matrix.

Returns:

The eigenvalues and eigenvectors of the elastic matrix.

Return type:

Tuple[np.ndarray, np.ndarray]

elastic_matrix_inverse() ndarray[source]#

Calculate the inverse of the elastic matrix.

Returns:

The inverse of the elastic matrix.

Return type:

np.ndarray

poissonsratio_hill() float[source]#

Calculate the Poisson’s ratio using Hill’s approximation.

Returns:

The Poisson’s ratio calculated using Hill’s approximation.

Return type:

float

poissonsratio_reuss() float[source]#

Calculate the Poisson’s ratio using the Reuss approximation.

Returns:

The Poisson’s ratio calculated using the Reuss approximation.

Return type:

float

poissonsratio_voigt() float[source]#

Calculate the Poisson’s ratio using the Voigt approximation.

Returns:

The Poisson’s ratio calculated using the Voigt approximation.

Return type:

float

shearmodul_hill() float[source]#

Calculate the shear modulus using the Hill approximation.

Returns:

The shear modulus calculated using the Hill approximation.

Return type:

float

shearmodul_reuss() float[source]#

Calculate the Reuss average of the shear modulus.

Returns:

The Reuss average of the shear modulus.

Return type:

float

shearmodul_voigt() float[source]#

Calculate the shear modulus in Voigt notation.

Returns:

The shear modulus in Voigt notation.

Return type:

float

to_dict(output_keys: tuple = ('elastic_matrix', 'elastic_matrix_inverse', 'bulkmodul_voigt', 'bulkmodul_reuss', 'bulkmodul_hill', 'shearmodul_voigt', 'shearmodul_reuss', 'shearmodul_hill', 'youngsmodul_voigt', 'youngsmodul_reuss', 'youngsmodul_hill', 'poissonsratio_voigt', 'poissonsratio_reuss', 'poissonsratio_hill', 'AVR', 'elastic_matrix_eigval')) dict[source]#

Convert the ElasticProperties object to a dictionary.

Parameters:

output_keys (tuple) – The keys to include in the output dictionary.

Returns:

The ElasticProperties object as a dictionary.

Return type:

dict

youngsmodul_hill() float[source]#

Calculate the Young’s modulus using the Hill approximation.

Returns:

The calculated Young’s modulus.

Return type:

float

youngsmodul_reuss() float[source]#

Calculate the Young’s modulus using the Reuss approximation.

Returns:

The calculated Young’s modulus.

Return type:

float

youngsmodul_voigt() float[source]#

Calculate the Young’s modulus using the Voigt approximation.

Returns:

The calculated Young’s modulus.

Return type:

float