Sensitivity kernel

class disba.SensitivityKernel(depth, kernel, period, velocity, mode, wave, type, parameter)

Create new instance of SensitivityKernel(depth, kernel, period, velocity, mode, wave, type, parameter)

depth

Alias for field number 0

kernel

Alias for field number 1

mode

Alias for field number 4

parameter

Alias for field number 7

period

Alias for field number 2

type

Alias for field number 6

velocity

Alias for field number 3

wave

Alias for field number 5

PhaseSensitivity

class disba.PhaseSensitivity(thickness, velocity_p, velocity_s, density, algorithm='dunkin', dc=0.005, dp=0.025)[source]

Phase velocity sensitivity kernel class.

Parameters
  • thickness (array_like) – Layer thickness (in km).

  • velocity_p (array_like) – Layer P-wave velocity (in km/s).

  • velocity_s (array_like) – Layer S-wave velocity (in km/s).

  • density (array_like) – Layer density (in g/cm3).

  • algorithm (str {'dunkin', 'fast-delta'}, optional, default 'dunkin') –

    Algorithm to use for computation of Rayleigh-wave dispersion:
    • ’dunkin’: Dunkin’s matrix (adapted from surf96),

    • ’fast-delta’: fast delta matrix (after Buchen and Ben-Hador, 1996).

  • dc (scalar, optional, default 0.005) – Phase velocity increment for root finding.

  • dp (scalar, optional, default 0.025) – Parameter increment (%) for numerical partial derivatives.

__call__(t, mode=0, wave='rayleigh', parameter='velocity_s')[source]

Calculate phase velocity sensitivity kernel for a given period and parameter.

Parameters
  • t (scalar) – Period (in s).

  • mode (int, optional, default 0) – Mode number (0 if fundamental).

  • wave (str {'love', 'rayleigh'}, optional, default 'rayleigh') – Wave type.

  • parameter (str {'thickness', 'velocity_p', 'velocity_s', 'density'}, optional, default 'velocity_s') – Parameter with respect to which sensitivity kernel is calculated.

Returns

Sensitivity kernel as a namedtuple (depth, kernel, period, velocity, mode, wave, type, parameter).

Return type

disba.SensitivityKernel

property algorithm

Return algorithm to use for computation of Rayleigh-wave dispersion.

property dc

Return phase velocity increment for root finding.

property density

Return layer density (in g/cm3).

property dp

Return parameter increment (%) for numerical partial derivatives.

resample(dz)

Resample velocity model.

Parameters

dz (scalar) – Maximum layer thickness (in km).

property thickness

Return layer thickness (in km).

property velocity_p

Return layer P-wave velocity (in km/s).

property velocity_s

Return layer S-wave velocity (in km/s).

GroupSensitivity

class disba.GroupSensitivity(thickness, velocity_p, velocity_s, density, algorithm='dunkin', dc=0.005, dt=0.025, dp=0.025)[source]

Phase velocity sensitivity kernel class.

Parameters
  • thickness (array_like) – Layer thickness (in km).

  • velocity_p (array_like) – Layer P-wave velocity (in km/s).

  • velocity_s (array_like) – Layer S-wave velocity (in km/s).

  • density (array_like) – Layer density (in g/cm3).

  • algorithm (str {'dunkin', 'fast-delta'}, optional, default 'dunkin') –

    Algorithm to use for computation of Rayleigh-wave dispersion:
    • ’dunkin’: Dunkin’s matrix (adapted from surf96),

    • ’fast-delta’: fast delta matrix (after Buchen and Ben-Hador, 1996).

  • dc (scalar, optional, default 0.005) – Phase velocity increment for root finding.

  • dt (scalar, optional, default 0.025) – Frequency increment (%) for calculating group velocity.

  • dp (scalar, optional, default 0.025) – Parameter increment (%) for numerical partial derivatives.

__call__(t, mode=0, wave='rayleigh', parameter='velocity_s')[source]

Calculate group velocity sensitivity kernel for a given period and parameter.

Parameters
  • t (scalar) – Period (in s).

  • mode (int, optional, default 0) – Mode number (0 if fundamental).

  • wave (str {'love', 'rayleigh'}, optional, default 'rayleigh') – Wave type.

  • parameter (str {'thickness', 'velocity_p', 'velocity_s', 'density'}, optional, default 'velocity_s') – Parameter with respect to which sensitivity kernel is calculated.

Returns

Sensitivity kernel as a namedtuple (depth, kernel, period, velocity, mode, wave, type, parameter).

Return type

disba.SensitivityKernel

property algorithm

Return algorithm to use for computation of Rayleigh-wave dispersion.

property dc

Return phase velocity increment for root finding.

property density

Return layer density (in g/cm3).

property dp

Return parameter increment (%) for numerical partial derivatives.

property dt

Return frequency increment (%) for calculating group velocity.

resample(dz)

Resample velocity model.

Parameters

dz (scalar) – Maximum layer thickness (in km).

property thickness

Return layer thickness (in km).

property velocity_p

Return layer P-wave velocity (in km/s).

property velocity_s

Return layer S-wave velocity (in km/s).

EllipticitySensitivity

class disba.EllipticitySensitivity(thickness, velocity_p, velocity_s, density, algorithm='dunkin', dc=0.005, dp=0.025)[source]

Rayleigh-wave ellipticity sensitivity kernel class.

Parameters
  • thickness (array_like) – Layer thickness (in km).

  • velocity_p (array_like) – Layer P-wave velocity (in km/s).

  • velocity_s (array_like) – Layer S-wave velocity (in km/s).

  • density (array_like) – Layer density (in g/cm3).

  • algorithm (str {'dunkin', 'fast-delta'}, optional, default 'dunkin') –

    Algorithm to use for computation of Rayleigh-wave dispersion:
    • ’dunkin’: Dunkin’s matrix (adapted from surf96),

    • ’fast-delta’: fast delta matrix (after Buchen and Ben-Hador, 1996).

  • dc (scalar, optional, default 0.005) – Phase velocity increment for root finding.

  • dp (scalar, optional, default 0.025) – Parameter increment (%) for numerical partial derivatives.

__call__(t, mode=0, parameter='velocity_s')[source]

Calculate Rayleigh-wave ellipticity sensitivity kernel for a given period and parameter.

Parameters
  • t (scalar) – Period (in s).

  • mode (int, optional, default 0) – Mode number (0 if fundamental).

  • parameter (str {'thickness', 'velocity_p', 'velocity_s', 'density'}, optional, default 'velocity_s') – Parameter with respect to which sensitivity kernel is calculated.

Returns

Sensitivity kernel as a namedtuple (depth, kernel, period, velocity, mode, wave, type, parameter).

Return type

disba.SensitivityKernel

property algorithm

Return algorithm to use for computation of Rayleigh-wave dispersion.

property dc

Return phase velocity increment for root finding.

property density

Return layer density (in g/cm3).

property dp

Return parameter increment (%) for numerical partial derivatives.

resample(dz)

Resample velocity model.

Parameters

dz (scalar) – Maximum layer thickness (in km).

property thickness

Return layer thickness (in km).

property velocity_p

Return layer P-wave velocity (in km/s).

property velocity_s

Return layer S-wave velocity (in km/s).