pylops.signalprocessing.Sliding1D

pylops.signalprocessing.Sliding1D(Op, dim, dimd, nwin, nover, tapertype='hanning', name='S')[source]

1D Sliding transform operator.

Apply a transform operator Op repeatedly to slices of the model vector in forward mode and slices of the data vector in adjoint mode. More specifically, in forward mode the model vector is divided into slices, each slice is transformed, and slices are then recombined in a sliding window fashion.

This operator can be used to perform local, overlapping transforms (e.g., pylops.signalprocessing.FFT) on 1-dimensional arrays.

Note

The shape of the model has to be consistent with the number of windows for this operator not to return an error. As the number of windows depends directly on the choice of nwin and nover, it is recommended to first run sliding1d_design to obtain the corresponding dims and number of windows.

Warning

Depending on the choice of nwin and nover as well as the size of the data, sliding windows may not cover the entire data. The start and end indices of each window will be displayed and returned with running sliding1d_design.

Parameters:
Op : pylops.LinearOperator

Transform operator

dim : tuple

Shape of 1-dimensional model.

dimd : tuple

Shape of 1-dimensional data

nwin : int

Number of samples of window

nover : int

Number of samples of overlapping part of window

tapertype : str, optional

Type of taper (hanning, cosine, cosinesquare or None)

name : str, optional

New in version 2.0.0.

Name of operator (to be used by pylops.utils.describe.describe)

Returns:
Sop : pylops.LinearOperator

Sliding operator

Raises:
ValueError

Identified number of windows is not consistent with provided model shape (dims).

Examples using pylops.signalprocessing.Sliding1D