bruges.rockphysics.rockphysicsmodels module

rockphysicsmodels.py

A bunch of rock physics models. References are mentioned in docstrings of individual functions. Docstrings follow numpy/scipy convention.

Alessandro Amato del Monte, March 2019

bruges.rockphysics.rockphysicsmodels.constant_cement(K0, G0, phi, phi_cem=0.38, phi_c=0.4, Cn=8.6, Kc=37, Gc=45, scheme=2)[source]

Constant cement model, Avseth et al. (2000). This model describes the elastic behaviour (K=bulk and G=shear moduli) of high porosity dry sand with a certain initial cementation by interpolating with the lower Hashin-Shtrikman bound the two end members at zero porosity and critical porosity. The zero porosity end member has K and G equal to mineral. The high porosity end member has K and G given by the Contact Cement model. It is assumed that the porosity reduction is due to non-cementing material filling in the available pore space.

Parameters:
  • G0 (K0,) – Mineral bulk & shear modulus in GPa.
  • phi (float or array_like) – Porosity.
  • phi_cem (float, optional) – Porosity at initial cementation. Default: 0.38.
  • phi_c (float, optional) – Critical porosity. Default: 0.4.
  • Cn (float, optional) – Coordination number. Default: 8.6.
  • Gc (Kc,) – Cement bulk & shear modulus in GPa. Default: 37, 45.
  • scheme (int, optional) – Cementation scheme, can be either 1 or 2: 1: cement deposited at grain contacts 2: cement as uniform layer around grains. Default: 2.
Returns:

Kdry, Gdry – Dry rock bulk & shear modulus in GPa.

Return type:

float or array_like

References

Dvorkin et al. (2014), Seismic Reflections of Rock Properties, Cambridge University Press (p.30-31)

bruges.rockphysics.rockphysicsmodels.contact_cement(K0, G0, phi, phi_c=0.4, Cn=8.6, Kc=37, Gc=45, scheme=2)[source]

Contact cement or cemented sand model,. This model describes the elastic behaviour (K=bulk and G=shear moduli) of dry sand where cement is deposited at grain contacts. The cement properties can be modified as well as the type of cementation scheme.

Parameters:
  • G0 (K0,) – Mineral bulk & shear modulus in GPa.
  • phi (float or array_like) – Porosity.
  • phi_c (float, optional) – Critical porosity. Default: 0.4
  • Cn (float, optional) – Coordination number Default: 8.6.
  • Gc (Kc,) – Cement bulk & shear modulus in GPa. Default: 37, 45.
  • scheme (int, optional) – Cementation scheme, can be either 1 or 2: 1: cement deposited at grain contacts 2: cement as uniform layer around grains. Default: 2.
Returns:

Kdry, Gdry – Dry rock bulk & shear modulus in GPa.

Return type:

float or array_like

References

Dvorkin-Nur (1996), Elasticity of High-Porosity Sandstones: Theory for Two North Sea Data Sets. Geophysics 61, no. 5 (1996). Mavko et al. (2009), The Rock Physics Handbook, Cambridge University Press (p.255)

bruges.rockphysics.rockphysicsmodels.critical_porosity(K0, G0, phi, phi_c=0.4)[source]

Critical porosity model. This model describes the elastic behaviour (K=bulk and G=shear moduli) of dry sand for porosities below the critical porosity (phi_c). Above phi_c, the fluid phase is load-bearing, below phi_c the solid phase (mineral grains) is load-bearing. The equations here describe the variation of K and G for porosities below phi_c as straight lines. Critical porosity is usually 0.4 for sandstone, 0.7 for chalk, 0.02-0.03 for granites.

Parameters:
  • G0 (K0,) – Mineral bulk & shear modulus in GPa.
  • phi (float or array_like) – Porosity.
  • phi_c (float, optional) – Critical porosity. Default: 0.4
Returns:

Kdry, Gdry – Dry rock bulk & shear modulus in GPa.

Return type:

float or array_like

References

Mavko et al. (2009), The Rock Physics Handbook, Cambridge University Press (p.370)

bruges.rockphysics.rockphysicsmodels.hertz_mindlin(K0, G0, sigma, phi_c=0.4, Cn=8.6, f=1)[source]

Hertz-Mindlin model. This model describes the elastic behaviour (K=bulk and G=shear moduli) of a dry pack of spheres subject to a hydrostatic confining pressure.

Parameters:
  • G0 (K0,) – Mineral bulk & shear modulus in GPa.
  • phi (float or array_like) – Porosity.
  • sigma (float) – Effective stress in MPa.
  • phi_c (float, optional) – Critical porosity. Default: 0.4
  • Cn (float, optional) – Coordination number Default: 8.6.
  • f (float, optional) – Shear modulus correction factor, f=1 for dry pack with perfect adhesion between particles and f=0 for dry frictionless pack.
Returns:

Kdry, Gdry – Dry rock bulk & shear modulus in GPa.

Return type:

float or array_like

References

Mavko et al. (2009), The Rock Physics Handbook, Cambridge University Press (p.246)

bruges.rockphysics.rockphysicsmodels.increasing_cement(K0, G0, phi, phi_cem=0.38, phi_c=0.4, Cn=8.6, Kc=37, Gc=45, scheme=2)[source]

Increasing cement model (Modified Hashin-Shtrikman upper bound). This model describes the elastic behaviour (K=bulk and G=shear moduli) of a dry sand with a certain initial cementation by interpolating with the upper Hashin-Shtrikman bound the two end members at zero porosity and critical porosity. The zero porosity end member has K and G equal to mineral. The high porosity end member has K and G given by the Contact Cement model. Probably best to avoid using if for porosities>phi_cem. Need to check references.

Parameters:
  • G0 (K0,) – Mineral bulk & shear modulus in GPa.
  • phi (float or array_like) – Porosity.
  • phi_cem (float, optional) – Porosity at initial cementation. Default: 0.38.
  • phi_c (float, optional) – Critical porosity. Default: 0.4.
  • Cn (float, optional) – Coordination number. Default: 8.6.
  • Gc (Kc,) – Cement bulk & shear modulus in GPa. Default: 37, 45.
  • scheme (int, optional) – Cementation scheme, can be either 1 or 2: 1: cement deposited at grain contacts 2: cement as uniform layer around grains. Default: 2.
Returns:

Kdry, Gdry – dry rock bulk & shear modulus in GPa.

Return type:

float or array_like

bruges.rockphysics.rockphysicsmodels.soft_sand(K0, G0, phi, sigma, phi_c=0.4, Cn=8.6, f=1)[source]

Soft sand, or friable sand or uncemented sand model. This model describes the elastic behaviour (K=bulk and G=shear moduli) of poorly sorted dry sand by interpolating with the lower Hashin-Shtrikman bound the two end members at zero porosity and critical porosity. The zero porosity end member has K and G equal to mineral. The end member at critical porosity has K and G given by Hertz-Mindlin model.

Parameters:
  • G0 (K0,) – Mineral bulk & shear modulus in GPa.
  • phi (float or array_like) – Porosity.
  • sigma (float) – Effective stress in MPa.
  • phi_c (float, optional) – Critical porosity. Default: 0.4
  • Cn (float, optional) – Coordination number Default: 8.6.
  • f (float, optional) – Shear modulus correction factor, f=1 for dry pack with perfect adhesion between particles and f=0 for dry frictionless pack.
Returns:

Kdry, Gdry – Dry rock bulk & shear modulus in GPa.

Return type:

float or array_like

References

Mavko et al. (2009), The Rock Physics Handbook, Cambridge University Press (p.258)

bruges.rockphysics.rockphysicsmodels.stiff_sand(K0, G0, phi, sigma, phi_c=0.4, Cn=8.6, f=1)[source]

Stiff sand model. This model describes the elastic behaviour (K=bulk and G=shear moduli) of stiff dry sands by interpolating with the upper Hashin-Shtrikman bound the two end members at zero porosity and critical porosity. The zero porosity end member has K and G equal to mineral. The end member at critical porosity has K and G given by Hertz-Mindlin model.

Parameters:
  • G0 (K0,) – Mineral bulk & shear modulus in GPa.
  • phi (float or array_like) – Porosity.
  • sigma (float) – Effective stress in MPa.
  • phi_c (float, optional) – Critical porosity. Default: 0.4
  • Cn (float, optional) – Coordination number Default: 8.6.
  • f (float, optional) – Shear modulus correction factor, f=1 for dry pack with perfect adhesion between particles and f=0 for dry frictionless pack.
Returns:

Kdry, Gdry – Dry rock bulk & shear modulus in GPa

Return type:

float or array_like

References

Mavko et al. (2009), The Rock Physics Handbook, Cambridge University Press (p.260)

bruges.rockphysics.rockphysicsmodels.vernik_consol_sand(K0, G0, phi, sigma, b=10)[source]

Vernik & Kachanov Consolidated Sand Model. This model describes the elastic behaviour (K=bulk and G=shear moduli) of consolidated dry sand subject to a hydrostatic confining pressure as a continuous solid containing pores and cracks.

Parameters:
  • G0 (K0,) – Mineral bulk & shear modulus in GPa.
  • phi (float or array_like) – Porosity.
  • sigma (float) – Effective stress in MPa.
  • b (float, optional) – Slope parameter in pore shape empirical equation, range: 8-12. Default: 10.
Returns:

Kdry, Gdry – Dry rock bulk & shear modulus in GPa.

Return type:

float or array_like

References

Vernik & Kachanov (2010), Modeling elastic properties of siliciclastic rocks, Geophysics v.75 n.6

bruges.rockphysics.rockphysicsmodels.vernik_sand_diagenesis(K0, G0, phi, sigma, phi_c=0.36, phi_con=0.26, b=10, n=2.0, m=2.05)[source]

Vernik & Kachanov Sandstone Diagenesis Model. This model describes the elastic behaviour (K=bulk and G=shear moduli) of dry sand modeled as a continuous solid containing pores and cracks for porosities below phi_con (consolidation porosity) using Vernik’s Consolidated Sand Model, and as a granular material for porosities above phi_con using Vernik’s Soft Sand Model 1.

Parameters:
  • G0 (K0,) – Mineral bulk & shear modulus in GPa.
  • phi (float or array_like) – Porosity.
  • sigma (float) – Effective stress in MPa.
  • phi_c (float, optional) – Critical porosity, range 0.30-0.42. Default: 0.36.
  • phi_con (float, optional) – Consolidation porosity, range 0.22-0.30. Default: 0.26.
  • b (float, optional) – Slope parameter in pore shape empirical equation, range: 8-12. Default: 10.
  • m (n,) – Empirical factors. Default: 2.00, 2.05.
Returns:

Kdry, Gdry – Dry rock bulk & shear modulus in GPa.

Return type:

float or array_like

References

Vernik & Kachanov (2010), Modeling elastic properties of siliciclastic rocks, Geophysics v.75 n.6

bruges.rockphysics.rockphysicsmodels.vernik_shale(vclay, phi, rhom=2.73, rhob=1, Mqz=96, c33_clay=33.4, A=0.00284)[source]

Vernik & Kachanov Shale Model. This model describes the elastic behaviour in terms of velocities and density of inorganic shales.

Parameters:
  • vclay (float or array_like) – Dry clay content volume fraction.
  • phi (float or array_like) – Porosity, maximum 0.40.
  • rhom (float, optional) – Shale matrix density in g/cc. Default: 2.73.
  • rhob (float, optional) – Brine density in g/cc. Default: 1.
  • Mqz (float, optional) – P-wave elastic modulus of remaining minerals in GPa Default: 96.
  • c33_clay (float, optional) – Anisotropic clay constant in GPa. Default: 33.4.
  • A (float, optional) – Empirical coefficient for Vs. Default is good for illite/smectite/chlorite, can be raised up to .006 for kaolinite-rich clays. Default: 0.00284.
Returns:

vp, vs, density – P- and S-wave velocities in m/s, density in g/cc.

Return type:

float or array_like

Notes

Shale matrix density (rhom) averages 2.73 +/- 0.03 g/cc at porosities below 0.25. It gradually varies with compaction and smectite-to-illite transition. A more accurate estimate can be calculated with this equation: rhom = 2.76+0.001*((rho-2)-230*np.exp(-4*(rho-2)))

References

Vernik & Kachanov (2010), Modeling elastic properties of siliciclastic rocks, Geophysics v.75 n.6

bruges.rockphysics.rockphysicsmodels.vernik_soft_sand_1(K0, G0, phi, sigma, phi_c=0.36, phi_con=0.26, b=10, n=2.0, m=2.05)[source]

Vernik & Kachanov Soft Sand Model 1. This model describes the elastic behaviour (K=bulk and G=shear moduli) of dry sand modeled as a granular material. Only applicable for porosities between the low-porosity end-member (at the consolidation porosity phi_con) and the high-porosity end-member (at the critical porosity phi_c). The low-porosity end member is calculated with Vernik’s Consolidated Sand Model.

Parameters:
  • G0 (K0,) – Mineral bulk & shear modulus in GPa.
  • phi (float or array_like) – Porosity.
  • sigma (float) – Effective stress in MPa.
  • phi_c (float, optional) – Critical porosity, range 0.30-0.42. Default: 0.36.
  • phi_con (float, optional) – Consolidation porosity, range 0.22-0.30. Default: 0.26.
  • b (float, optional) – Slope parameter in pore shape empirical equation, range: 8-12. Default: 10.
  • m (n,) – Empirical factors. Default: 2.00, 2.05.
Returns:

Kdry, Gdry – Dry rock bulk & shear modulus in GPa.

Return type:

float or array_like

References

Vernik & Kachanov (2010), Modeling elastic properties of siliciclastic rocks, Geophysics v.75 n.6

bruges.rockphysics.rockphysicsmodels.vernik_soft_sand_2(K0, G0, phi, p=20, q=20)[source]

Vernik & Kachanov Soft Sand Model 2. This model describes the elastic behaviour (K=bulk and G=shear moduli) of dry sand modeled as a granular material. Applicable in the entire porosity range.

Parameters:
  • G0 (K0,) – Mineral bulk & shear modulus in GPa.
  • phi (float or array_like) – Porosity.
  • q (p,) – Pore shape factor for K and G, range: 10-45. Default: 20.
Returns:

Kdry, Gdry – Dry rock bulk & shear modulus in GPa.

Return type:

float or array_like

References

Vernik & Kachanov (2010), Modeling elastic properties of siliciclastic rocks, Geophysics v.75 n.6