This roadmap is aimed at providing an high-level overview on the bug fixes, improvements and new functionality that are planned for the PyLops library.
Any of the fixes/additions mentioned in the roadmap are directly linked to a Github Issue that provides more details onto the reason and initial thoughts for the implementation of such a fix/addition.
Striked tasks have been completed and related github issue closed with more details regarding how this task has been carried out.
- Create a child repository and python library called
geolops
(just a suggestion) where geoscience-related operators and examples are moved across, keeping the corepylops
library very generic and multi-purpose -Issue #22.
- Change all
np.flatten()
intonp.ravel()
-Issue #24. - Fix all
if: return ... else: ...
statements to enforce a single return with the same number of outputs - Protected attributes and @property attributes in linear operator classes?
- Investigate speed-up given by decorating
_matvec
and_rmatvec
methods with numba@jit
and@stencil
decorators -Issue #23. - Replace
np.fft.*
routines used in several submodules with double engine, numpy and pyFFTW -Issue #20.
- Add possibility to choose different damping factors for each elastic parameter to invert for in :py
pylops.avo.prestack.PrestackInversion
- Issue #25.
- Create Kronecker operator -Issue #28.
- Deal with edges in FirstDerivative and SecondDerivative operators -Issue #34.
- Sparse solvers -Issue #44.
- Compare performance in FTT operator of performing np.swap+np.fft.fft(..., axis=-1) versus np.fft.fft(..., axis=chosen)
- Add
Wavelet
operator performing the wavelet transform. pywavelets can be used as back-end -Issue #21. - Fredholm1 operator applying Fredholm integrals of first kind - Issue #31.
Fredholm2
operators applying Fredholm integrals of second kind - Issue #31.
Nothing so far