pylops.waveeqprocessing.marchenko.directwave¶
- pylops.waveeqprocessing.marchenko.directwave(wav, trav, nt, dt, nfft=None, dist=None, kind='2d', derivative=True)[source]¶
Analytical direct wave in acoustic media
Compute the analytical acoustic 2d or 3d Green’s function in frequency domain given a wavelet
wav, traveltime curvetravand distancedist(for 3d case only).- Parameters:
- wav
numpy.ndarray Wavelet in time domain to apply to direct arrival when created using
trav. Phase will be discarded resulting in a zero-phase wavelet with same amplitude spectrum as provided bywav- trav
numpy.ndarray Traveltime of first arrival from subsurface point to surface receivers of size \(\lbrack n_r \times 1 \rbrack\)
- nt
float, optional Number of samples in time
- dt
float, optional Sampling in time
- nfft
int, optional Number of samples in fft time (if
None,nfft=nt)- dist: :obj:`numpy.ndarray`
Distance between subsurface point to surface receivers of size \(\lbrack n_r \times 1 \rbrack\)
- kind
str, optional 2-dimensional (
2d) or 3-dimensional (3d)- derivative
bool, optional Apply time derivative (
True) or not (False)
- wav
- Returns:
- direct
numpy.ndarray Direct arrival in time domain of size \(\lbrack n_t \times n_r \rbrack\)
- direct
Notes
The analytical Green’s function in 2D [1] is :
\[G^{2D}(\mathbf{r}) = -\frac{i}{4}H_0^{(1)}(k|\mathbf{r}|)\]and in 3D [1] is:
\[G^{3D}(\mathbf{r}) = \frac{e^{-jk\mathbf{r}}}{4 \pi \mathbf{r}}\]Note that these Green’s functions represent the acoustic response to a point source of volume injection. In case the response to a point source of volume injection rate is desired, a \(j\omega\) scaling (which is equivalent to applying a first derivative in time domain) must be applied. Here this is accomplished by setting
derivative=True.