Dispersion

class disba.DispersionCurve(period, velocity, mode, wave, type)

Create new instance of DispersionCurve(period, velocity, mode, wave, type)

mode

Alias for field number 2

period

Alias for field number 0

type

Alias for field number 4

velocity

Alias for field number 1

wave

Alias for field number 3

PhaseDispersion

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

Phase velocity dispersion 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.

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

Calculate phase velocities for input period axis.

Parameters
  • t (array_like) – Periods (in s).

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

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

Returns

Dispersion curve as a namedtuple (period, velocity, mode, wave, type).

Return type

disba.DispersionCurve

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).

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).

GroupDispersion

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

Group velocity dispersion 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.

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

Calculate group velocities for input period axis.

Parameters
  • t (array_like) – Periods (in s).

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

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

Returns

Dispersion curve as a namedtuple (period, velocity, mode, wave, type).

Return type

disba.DispersionCurve

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 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).