# pylops.avo.poststack.PoststackLinearModelling¶

pylops.avo.poststack.PoststackLinearModelling(wav, nt0, spatdims=None, explicit=False, sparse=False)[source]

Post-stack linearized seismic modelling operator.

Create operator to be applied to an acoustic impedance trace (or stack of traces) for generation of band-limited seismic post-stack data. The input model and data have shape $$[n_{t0} (\times n_x \times n_y)]$$.

Parameters: wav : np.ndarray Wavelet in time domain (must have odd number of elements and centered to zero). If 1d, assume stationary wavelet for the entire time axis. If 2d, use as non-stationary wavelet (user must provide one wavelet per time sample in an array of size $$[n_{t0} \times n_{wav}]$$ where $$n_{wav}$$ is the lenght of each wavelet) nt0 : int Number of samples along time axis spatdims : int or tuple, optional Number of samples along spatial axis (or axes) (None if only one dimension is available) explicit : bool, optional Create a chained linear operator (False, preferred for large data) or a MatrixMult linear operator with dense matrix (True, preferred for small data) sparse : bool, optional Create a sparse matrix (True) or dense (False) when explicit=True Pop : LinearOperator post-stack modelling operator. ValueError If wav is 2dimensional but does not contain nt0 wavelets

Notes

Post-stack seismic modelling is the process of constructing seismic post-stack data from a profile of acoustic impedance in time (or depth) domain. This can be easily achieved using the following forward model:

$d(t, \theta=0) = w(t) * \frac{dln(AI(t))}{dt}$

where $$AI(t)$$ is the acoustic impedance profile and $$w(t)$$ is the time domain seismic wavelet. In compact form:

$\mathbf{d}= \mathbf{W} \mathbf{D} \mathbf{ai}$

On the other hand, post-stack inversion aims at recovering the impedance profile from the band-limited seismic stack data.