pylops.avo.prestack.PrestackWaveletModellingยถ
- pylops.avo.prestack.PrestackWaveletModelling(m, theta, nwav, wavc=None, vsvp=0.5, linearization='akirich', name=None)[source]ยถ
Pre-stack linearized seismic modelling operator for wavelet.
Create operator to be applied to a wavelet for generation of band-limited seismic angle gathers using a linearized version of the Zoeppritz equation.
- Parameters:
- m
numpy.ndarray elastic parameter profles of size \([n_{t_0} \times N]\) where \(N=3,\,2\). Note that the
dtypeof this variable will define that of the operator- theta
int Incident angles in degrees. Must have same
dtypeofm(or it will be automatically cast to it)- nwav
numpy.ndarray Number of samples of wavelet to be applied/estimated
- wavc
int, optional Index of the center of the wavelet
- vsvp
numpy.ndarrayorfloat, optional \(V_S/V_P\) ratio
- linearization{โakirichโ, โfattiโ, โPSโ} or
callable, optional โakirichโ: Aki-Richards. See
pylops.avo.avo.akirichards.โfattiโ: Fatti. See
pylops.avo.avo.fatti.โPSโ: PS. See
pylops.avo.avo.ps.Function with the same signature as
pylops.avo.avo.akirichards
- name
str, optional Added in version 2.0.0.
Name of operator (to be used by
pylops.utils.describe.describe)
- m
- Returns:
- Mconv
LinearOperator pre-stack modelling operator for wavelet estimation.
- Mconv
- Raises:
- NotImplementedError
If
linearizationis not an implemented linearization
Notes
Pre-stack seismic modelling for wavelet estimate is the process of constructing seismic reflectivities using three (or two) profiles of elastic parameters in time (or depth) domain arranged in an input vector \(\mathbf{m}\) of size \(n_{t_0} \times N\):
\[d(t, \theta) = \sum_{i=1}^N G_i(t, \theta) m_i(t) * w(t)\]where \(w(t)\) is the time domain seismic wavelet. In compact form:
\[\mathbf{d}= \mathbf{G} \mathbf{w}\]On the other hand, pre-stack wavelet estimation aims at recovering the wavelet given knowledge of the band-limited seismic pre-stack data and the elastic parameter profiles.