The Application Programming Interface (API) of PyLops can be loosely seen as composed of a stack of three main layers:
- Linear operators: building blocks for the setting up of inverse problems
- Solvers: interfaces to a variety of solvers, providing an easy way to augment an inverse problem with additional regularization and/or preconditioning term
- Applications: high-level interfaces allowing users to easily setup and solve specific problems (while hiding the non-needed details - i.e., creation and setup of linear operators and solvers).
pylops
pylops
LinearOperator FunctionOperator
pylops
MatrixMult Identity Zero Diagonal Transpose Flip Roll Pad Sum Symmetrize Restriction Regression LinearRegression CausalIntegration Spread VStack HStack Block BlockDiag Kronecker
Smoothing1D Smoothing2D FirstDerivative SecondDerivative Laplacian Gradient FirstDirectionalDerivative SecondDirectionalDerivative
pylops.signalprocessing
FFT FFT2D FFTND Convolve1D Convolve2D ConvolveND Interp Radon2D Radon3D Sliding2D Sliding3D Fredholm1
pylops.waveeqprocessing
UpDownComposition2D MDC Demigration
pylops.avo
avo.AVOLinearModelling poststack.PoststackLinearModelling prestack.PrestackLinearModelling prestack.PrestackWaveletModelling
pylops.optimization
leastsquares.NormalEquationsInversion leastsquares.RegularizedInversion leastsquares.PreconditionedInversion
sparsity.IRLS sparsity.OMP sparsity.ISTA sparsity.FISTA sparsity.SPGL1 sparsity.SplitBregman
pylops.waveeqprocessing
SeismicInterpolation WavefieldDecomposition MDD Marchenko LSM
pylops.avo
poststack.PoststackInversion prestack.PrestackInversion