Rock Physics#
This section contains documentation for the Rock Physics module.
Elastic Constants#
- stoneforge.rock_physics.elastic_constants.poisson(method: str, **kwargs)#
Computes the Poisson ratio using two elastic moduli.
Parameters#
- methodstr
- The two elastic moduli used to the estimation. Should be one of:
“k_and_g” for bulk and shear moduli
“vp_and_vs” for P-wave and S-wave velocities
“e_and_k” for Young’s and bulk moduli
In the case where “k_and_g” is selected, the kwargs must contain both k and g parameters (kwargs = [“k”:36, “g”:45])
Returns#
- vint, float, array_like
Poisson ratio.
References#
Cambridge University Press.
Fluid Substitution#
- stoneforge.rock_physics.fluid_substitution.gassmann(phi: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], ks: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], method: str = 'gassmann_subs', **kwargs) ndarray #
Compute Gassmann’ equations.
- This is a façade for the methods:
kdry
ksat
gassmann_subs
Parameters#
- phiarray_like
Porosity log.
- ksarray_like
Bulk modulus of solid phase.
- kdryarray_like
Bulk modulus of the dry-rock. Required if method is ksat.
- ksatAarray_like
Bulk modulus of the rock saturated with fluid A. Required if method is ksat or gassmann_subs.
- kfluidAarray_like
Bulk modulus of the fluid A. Required if method is kdry or gassmann_subs.
- kfluidBarray_like
Bulk modulus of the fluid B. Required if method is ksat or gassmann_subs.
- methodstr, optional
- Name of the method to be used. Should be one of
‘kdry’
‘ksat’
‘ksat_direct’
If not given, default method is ‘gassmann_subs’.
Returns#
- ksatarray_like
Bulk modulus of the rock saturated with fluid B.
- stoneforge.rock_physics.fluid_substitution.gassmann_subs(phi: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], ks: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], ksatA: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], kfluidA: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], kfluidB: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes]) ndarray #
Fluid substitution using Gassmann’ equation without calculating dry-rock bulk modulus [1]_.
Parameters#
- phiarray_like
Porosity log.
- ksarray_like
Bulk modulus of solid phase.
- ksatAarray_like
Bulk modulus of the rock saturated with fluid A.
- kfluidAarray_like
Bulk modulus of the fluid A.
- kfluidBarray_like
Bulk modulus of the fluid B.
Returns#
- ksatarray_like
Bulk modulus of rock saturated with fluid B.
References#
[1] Avseth, Per, Tapan Mukerji, and Gary Mavko. Quantitative seismic
interpretation: Applying rock physics tools to reduce interpretation risk. Cambridge university press, 2005.
- stoneforge.rock_physics.fluid_substitution.kdry(phi: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], ks: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], ksatA: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], kfluidA: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes]) ndarray #
Calculate the dry-rock bulk modulus using Gassmann’ [1]_ equation .
Parameters#
- phiarray_like
Porosity log.
- ksarray_like
Bulk modulus of solid phase.
- ksatAarray_like
Bulk modulus of the rock saturated with fluid A.
- kfluidAarray_like
Bulk modulus of the fluid A.
Returns#
- kdryarray_like
Dry-rock bulk modulus.
References#
[1] Dvorkin, J.; Gutierrez, M. A.; Grana, D. Seismic reflections of rock
properties. [S.l.]: Cambridge University Press, 2014.
- stoneforge.rock_physics.fluid_substitution.ksat(phi: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], ks: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], kdry: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], kfluidB: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes]) ndarray #
Calculate the bulk modulus of the rock saturated with fluid B [1]_.
Parameters#
- phiarray_like
Porosity log.
- ksarray_like
Bulk modulus of solid phase.
- kdryarray_like
Bulk modulus of the dry-rock.
- kfluidBarray_like
Bulk modulus of the fluid B.
Returns#
- ksatarray_like
Bulk modulus of the rock saturated with fluid B.
References#
[1] Dvorkin, J.; Gutierrez, M. A.; Grana, D. Seismic reflections of rock
properties. [S.l.]: Cambridge University Press, 2014.
- stoneforge.rock_physics.fluid_substitution.mavko(phi: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], ms: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], method: str = 'mavko_subs', **kwargs) ndarray #
Compute Mavko’ equations.
- This is a façade for the methods:
mdry
msat
mavko_subs
Parameters#
- phiarray_like
Porosity log.
- msarray_like
Compressional modulus of solid phase.
- mdryarray_like
Compressional modulus of the dry-rock. Required if method is msat.
- msatAarray_like
Compressional modulus of the rock saturated with fluid A. Required if method is msat or mavko_subs.
- kfluidAarray_like
Bulk modulus of the fluid A. Required if method is mdry or mavko_subs.
- kfluidBarray_like
Bulk modulus of the fluid B. Required if method is msat or mavko_subs.
- methodstr, optional
- Name of the method to be used. Should be one of
‘mdry’
‘msat’
‘msat_direct’
If not given, default method is ‘mavko_subs’.
Returns#
- msatarray_like
Compressional modulus of the rock saturated with fluid B.
- stoneforge.rock_physics.fluid_substitution.mavko_subs(phi: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], ms: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], msatA: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], kfluidA: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], kfluidB: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes]) ndarray #
Fluid substitution using Mavko’ equation without calculating dry-rock bulk modulus [1]_.
Parameters#
- phiarray_like
Porosity log.
- msarray_like
Compressional modulus of solid phase.
- msatAarray_like
Compressional modulus of the rock saturated with fluid A.
- kfluidAarray_like
Bulk modulus of the fluid A.
- kfluidBarray_like
Bulk modulus of the fluid B.
Returns#
- msatarray_like
Compressional modulus of rock saturated with fluid B.
References#
[1] Dvorkin, J.; Gutierrez, M. A.; Grana, D. Seismic reflections of rock
properties. [S.l.]: Cambridge University Press, 2014.
- stoneforge.rock_physics.fluid_substitution.mdry(phi: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], ms: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], msatA: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], kfluidA: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes]) ndarray #
Calculate the dry-rock compressional modulus using Mavko’ [1]_ equation .
Parameters#
- phiarray_like
Porosity log.
- msarray_like
Compressional modulus of solid phase.
- msatAarray_like
Compressional modulus of the rock saturated with fluid A.
- kfluidAarray_like
Bulk modulus of the fluid A.
Returns#
- mdryarray_like
Dry-rock compressional modulus.
References#
[1] Dvorkin, J.; Gutierrez, M. A.; Grana, D. Seismic reflections of rock
properties. [S.l.]: Cambridge University Press, 2014.
- stoneforge.rock_physics.fluid_substitution.msat(phi: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], ms: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], mdry: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], kfluidB: Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes]) ndarray #
Calculate the compressional modulus of the rock saturated with fluid B [1]_.
Parameters#
- phiarray_like
Porosity log.
- msarray_like
Compressional modulus of solid phase.
- mdryarray_like
Compressional modulus of the dry-rock.
- kfluidBarray_like
Bulk modulus of the fluid B.
Returns#
- msatarray_like
Compressional modulus of the rock saturated with fluid B.
References#
[1] Dvorkin, J.; Gutierrez, M. A.; Grana, D. Seismic reflections of rock
properties. [S.l.]: Cambridge University Press, 2014.
Gem#
Rock Physics Bounds#
- stoneforge.rock_physics.rock_physics_bounds.hill(f, m)#
Calculate elastic modulus of the effective mineral using the Hill average.
Parameters#
- farray_like
Fractions (proportions) of each mineral.
- marray_like
Elastic modulus of each mineral.
Returns#
- v: array_like
Hill average.