pymarchenko.wavefieldsep.wavefield_separation#

pymarchenko.wavefieldsep.wavefield_separation(p, vz, dt, dr, rho, vel, nffts, critical, ntaper, verb=False, plotflag=False)[source]#

Up/down wavefield separation

Separate multi-component seismic data in their up- and down-going particle velocity components

Parameters:
pnumpy.ndarray

Pressure data of size \([n_s \times n_r \times n_t]\)

vznumpy.ndarray

Vertical particle velocity data of size \([n_s \times n_r \times n_t]\)

dtfloat

Time sampling

drfloat

Receiver sampling

rhofloat

Density along the receiver array (must be constant)

velfloat

Velocity along the receiver array (must be constant)

nfftstuple, optional

Number of samples along the wavenumber and frequency axes

criticalfloat, optional

Percentage of angles to retain in obliquity factor. For example, if critical=100 only angles below the critical angle \(|k_x| < \frac{f(k_x)}{vel}\) will be retained

ntaperfloat, optional

Number of samples of taper applied to obliquity factor around critical angle

verbbool, optional

Verbosity

plotflagbool, optional

Plotting flag, if True plot results for the middle shot

Returns:
vzupnumpy.ndarray

Upgoing particle velocity data of size \([n_s \times n_r \times n_t]\)

vzdownnumpy.ndarray

Downgoing particle velocity data of size \([n_s \times n_r \times n_t]\)