Given a set of mineral physics parameters and an equation of state we can calculate the density, bulk, and shear modulus for a given phase. However, as soon as we have a composite material (e.g., a rock), the determination of elastic properties become more complicated. The bulk and shear modulus of a rock are dependent on the specific geometry of the grains in the rock, so there is no general formula for its averaged elastic properties. Instead, we must choose from a number of averaging schemes if we want a single value, or use bounding methods to get a range of possible values. The module burnman.averaging_schemes provides a number of different average and bounding schemes for determining a composite rock’s physical parameters.
Bases: object
Base class defining an interface for determining average elastic properties of a rock. Given a list of volume fractions for the different mineral phases in a rock, as well as their bulk and shear moduli, an averaging will give back a single scalar values for the averages. New averaging schemes should define the functions average_bulk_moduli and average_shear_moduli, as specified here.
Average the bulk moduli \(K\) for a composite. This defines the interface for this method, and is not implemented in the base class.
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  K : float

Average the shear moduli \(G\) for a composite. This defines the interface for this method, and is not implemented in the base class.
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  G : float

Average the densities of a composite, given a list of volume fractions and densitites. This is implemented in the base class, as how to calculate it is not dependent on the geometry of the rock. The formula for density is given by
Parameters:  volumes : list of floats
densities : list of floats


Returns:  rho : float

thermal expansion coefficient of the mineral \(\alpha\). \([1/K]\)
Averages the heat capacities at constant volume \(C_V\) by molar fractions as in eqn. (16) in [IS92].
Parameters:  fractions : list of floats
c_v : list of floats


Returns:  c_v : float

Averages the heat capacities at constant pressure \(C_P\) by molar fractions.
Parameters:  fractions : list of floats
c_p : list of floats


Returns:  c_p : float

Bases: burnman.averaging_schemes.AveragingScheme
Class for computing the Voigt (isostrain) bound for elastic properties. This derives from burnman.averaging_schemes.averaging_scheme, and implements the burnman.averaging_schemes.averaging_scheme.average_bulk_moduli() and burnman.averaging_schemes.averaging_scheme.average_shear_moduli() functions.
Average the bulk moduli of a composite \(K\) with the Voigt (isostrain) bound, given by:
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  K : float

Average the shear moduli of a composite with the Voigt (isostrain) bound, given by:
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  G : float

Average the densities of a composite, given a list of volume fractions and densitites. This is implemented in the base class, as how to calculate it is not dependent on the geometry of the rock. The formula for density is given by
Parameters:  volumes : list of floats
densities : list of floats


Returns:  rho : float

Averages the heat capacities at constant pressure \(C_P\) by molar fractions.
Parameters:  fractions : list of floats
c_p : list of floats


Returns:  c_p : float

Averages the heat capacities at constant volume \(C_V\) by molar fractions as in eqn. (16) in [IS92].
Parameters:  fractions : list of floats
c_v : list of floats


Returns:  c_v : float

thermal expansion coefficient of the mineral \(\alpha\). \([1/K]\)
Bases: burnman.averaging_schemes.AveragingScheme
Class for computing the Reuss (isostress) bound for elastic properties. This derives from burnman.averaging_schemes.averaging_scheme, and implements the burnman.averaging_schemes.averaging_scheme.average_bulk_moduli() and burnman.averaging_schemes.averaging_scheme.average_shear_moduli() functions.
Average the bulk moduli of a composite with the Reuss (isostress) bound, given by:
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  K : float

Average the shear moduli of a composite with the Reuss (isostress) bound, given by:
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  G : float

Average the densities of a composite, given a list of volume fractions and densitites. This is implemented in the base class, as how to calculate it is not dependent on the geometry of the rock. The formula for density is given by
Parameters:  volumes : list of floats
densities : list of floats


Returns:  rho : float

Averages the heat capacities at constant pressure \(C_P\) by molar fractions.
Parameters:  fractions : list of floats
c_p : list of floats


Returns:  c_p : float

Averages the heat capacities at constant volume \(C_V\) by molar fractions as in eqn. (16) in [IS92].
Parameters:  fractions : list of floats
c_v : list of floats


Returns:  c_v : float

thermal expansion coefficient of the mineral \(\alpha\). \([1/K]\)
Bases: burnman.averaging_schemes.AveragingScheme
Class for computing the VoigtReussHill average for elastic properties. This derives from burnman.averaging_schemes.averaging_scheme, and implements the burnman.averaging_schemes.averaging_scheme.average_bulk_moduli() and burnman.averaging_schemes.averaging_scheme.average_shear_moduli() functions.
Average the bulk moduli of a composite with the VoigtReussHill average, given by:
This is simply a shorthand for an arithmetic average of the bounds given by burnman.averaging_schemes.voigt and burnman.averaging_schemes.reuss.
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  K : float

Average the shear moduli \(G\) of a composite with the VoigtReussHill average, given by:
This is simply a shorthand for an arithmetic average of the bounds given by burnman.averaging_schemes.voigt and burnman.averaging_schemes.reuss.
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  G : float

Average the densities of a composite, given a list of volume fractions and densitites. This is implemented in the base class, as how to calculate it is not dependent on the geometry of the rock. The formula for density is given by
Parameters:  volumes : list of floats
densities : list of floats


Returns:  rho : float

Averages the heat capacities at constant pressure \(C_P\) by molar fractions.
Parameters:  fractions : list of floats
c_p : list of floats


Returns:  c_p : float

Averages the heat capacities at constant volume \(C_V\) by molar fractions as in eqn. (16) in [IS92].
Parameters:  fractions : list of floats
c_v : list of floats


Returns:  c_v : float

thermal expansion coefficient of the mineral \(\alpha\). \([1/K]\)
Bases: burnman.averaging_schemes.AveragingScheme
Class for computing the upper HashinShtrikman bound for elastic properties. This derives from burnman.averaging_schemes.averaging_scheme, and implements the burnman.averaging_schemes.averaging_scheme.average_bulk_moduli() and burnman.averaging_schemes.averaging_scheme.average_shear_moduli() functions. Implements formulas from [WDOConnell76]. The HashinShtrikman bounds are tighter than the Voigt and Reuss bounds because they make the additional assumption that the orientation of the phases are statistically isotropic. In some cases this may be a good assumption, and in others it may not be.
Average the bulk moduli of a composite with the upper HashinShtrikman bound. Implements Formulas from [WDOConnell76], which are too lengthy to reproduce here.
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  K : float

Average the shear moduli of a composite with the upper HashinShtrikman bound. Implements Formulas from [WDOConnell76], which are too lengthy to reproduce here.
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  G : float

Average the densities of a composite, given a list of volume fractions and densitites. This is implemented in the base class, as how to calculate it is not dependent on the geometry of the rock. The formula for density is given by
Parameters:  volumes : list of floats
densities : list of floats


Returns:  rho : float

Averages the heat capacities at constant pressure \(C_P\) by molar fractions.
Parameters:  fractions : list of floats
c_p : list of floats


Returns:  c_p : float

Averages the heat capacities at constant volume \(C_V\) by molar fractions as in eqn. (16) in [IS92].
Parameters:  fractions : list of floats
c_v : list of floats


Returns:  c_v : float

thermal expansion coefficient of the mineral \(\alpha\). \([1/K]\)
Bases: burnman.averaging_schemes.AveragingScheme
Class for computing the lower HashinShtrikman bound for elastic properties. This derives from burnman.averaging_schemes.averaging_scheme, and implements the burnman.averaging_schemes.averaging_scheme.average_bulk_moduli() and burnman.averaging_schemes.averaging_scheme.average_shear_moduli() functions. Implements Formulas from [WDOConnell76]. The HashinShtrikman bounds are tighter than the Voigt and Reuss bounds because they make the additional assumption that the orientation of the phases are statistically isotropic. In some cases this may be a good assumption, and in others it may not be.
Average the bulk moduli of a composite with the lower HashinShtrikman bound. Implements Formulas from [WDOConnell76], which are too lengthy to reproduce here.
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  K : float

Average the shear moduli of a composite with the lower HashinShtrikman bound. Implements Formulas from [WDOConnell76], which are too lengthy to reproduce here.
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  G : float

Average the densities of a composite, given a list of volume fractions and densitites. This is implemented in the base class, as how to calculate it is not dependent on the geometry of the rock. The formula for density is given by
Parameters:  volumes : list of floats
densities : list of floats


Returns:  rho : float

Averages the heat capacities at constant pressure \(C_P\) by molar fractions.
Parameters:  fractions : list of floats
c_p : list of floats


Returns:  c_p : float

Averages the heat capacities at constant volume \(C_V\) by molar fractions as in eqn. (16) in [IS92].
Parameters:  fractions : list of floats
c_v : list of floats


Returns:  c_v : float

thermal expansion coefficient of the mineral \(\alpha\). \([1/K]\)
Bases: burnman.averaging_schemes.AveragingScheme
Class for computing arithmetic mean of the HashinShtrikman bounds on elastic properties. This derives from burnman.averaging_schemes.averaging_scheme, and implements the burnman.averaging_schemes.averaging_scheme.average_bulk_moduli() and burnman.averaging_schemes.averaging_scheme.average_shear_moduli() functions.
Average the bulk moduli of a composite with the arithmetic mean of the upper and lower HashinShtrikman bounds.
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  K : float

Average the bulk moduli of a composite with the arithmetic mean of the upper and lower HashinShtrikman bounds.
Parameters:  volumes : list of floats
bulk_moduli : list of floats
shear_moduli : list of floats


Returns:  G : float

Average the densities of a composite, given a list of volume fractions and densitites. This is implemented in the base class, as how to calculate it is not dependent on the geometry of the rock. The formula for density is given by
Parameters:  volumes : list of floats
densities : list of floats


Returns:  rho : float

Averages the heat capacities at constant pressure \(C_P\) by molar fractions.
Parameters:  fractions : list of floats
c_p : list of floats


Returns:  c_p : float

Averages the heat capacities at constant volume \(C_V\) by molar fractions as in eqn. (16) in [IS92].
Parameters:  fractions : list of floats
c_v : list of floats


Returns:  c_v : float

thermal expansion coefficient of the mineral \(\alpha\). \([1/K]\)