pylops.utils.seismicevents.hyperbolic3d

pylops.utils.seismicevents.hyperbolic3d(x, y, t, t0, vrms_x, vrms_y, amp, wav)[source]

Hyperbolic 3D events

Create 3d hyperbolic events given intercept time, root-mean-square velocities, and amplitude of each event

Parameters:
x : numpy.ndarray

space axis in x direction

y : numpy.ndarray

space axis in y direction

t : numpy.ndarray

time axis

t0 : tuple or float

intercept time at \(x=0\) of each of hyperbolic event

vrms_x : tuple or float

root-mean-square velocity in x direction for each hyperbolic event

vrms_y : tuple or float

root-mean-square velocity in y direction for each hyperbolic event

amp : tuple or float

amplitude of each hyperbolic event

wav : numpy.ndarray

wavelet to be applied to data

Returns:
d : numpy.ndarray

data without wavelet of size \([n_y \times n_x \times n_t]\)

dwav : numpy.ndarray

data with wavelet of size \([n_y \times n_x \times n_t]\)

Notes

Each event is created using the following relation:

\[t_i(x, y) = \sqrt{t_{0,i}^2 + x^2 / v_{rms_x, i}^2 + y^2 / v_{rms_y, i}^2}\]

Note that velocities do not have a physical meaning here (compared to the corresponding pylops.utils.seismicevents.hyperbolic2d), they rather simply control the curvature of the hyperboloid along the spatial axes.

Examples using pylops.utils.seismicevents.hyperbolic3d