Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v2.4.0 #629

Merged
merged 47 commits into from
Dec 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
8b0a75f
build: added separate requirement file for torch
mrava87 Aug 9, 2024
80e1593
Use --index-url instead of --extra-index-url in requirements-torch.txt
cako Aug 19, 2024
dc2a3e8
feat: added FourierRadon2d operator
mrava87 Aug 31, 2024
427c014
feat: added FourierRadon3D
mrava87 Sep 4, 2024
26566be
feat: added cuda backend for FourierRadon3D
mrava87 Sep 4, 2024
69ca796
feat: added parabolic3d method
mrava87 Sep 5, 2024
66f4b0f
test: added tests for FourierRadon operators
mrava87 Sep 6, 2024
ae354ee
fix: import normalize_axis_index differently based on numpy version
mrava87 Sep 13, 2024
e9353ea
fix: import same fix for other files
mrava87 Sep 13, 2024
c1a459c
Merge pull request #612 from mrava87/patch-numpyinternal
mrava87 Sep 13, 2024
196a150
doc: fix vlims of ilsm tutorial
mrava87 Sep 13, 2024
e804c33
Merge pull request #613 from mrava87/fix-ilsmtutorial
mrava87 Sep 13, 2024
ea8fff0
Merge pull request #599 from mrava87/patch-torchreq
mrava87 Sep 19, 2024
df7d002
fix: point color to black to not conflict with colormap
cako Oct 3, 2024
f93dfe1
fix: improve typing, remove wrong optional
cako Oct 3, 2024
99b18ec
fix: add FourierRadon3D to init
cako Oct 3, 2024
3b56783
fix: reorder signalprocessing init due to circular import issue
mrava87 Oct 3, 2024
7e2cec1
minor: changed np.pi/np.exp into pi/exp
mrava87 Oct 3, 2024
75e0bd4
minor: removed unneeded returns in fourierradon numba methods
mrava87 Oct 3, 2024
eae55b8
minor: remove unused numpy in _fourierradon2d_numba and _fourierradon…
mrava87 Oct 3, 2024
6e2456b
minor: force f to have same type of operator for fourierradon operators
mrava87 Oct 3, 2024
402bd31
minor: removed all isinstance occurences in seismicevents
mrava87 Oct 3, 2024
ce4b83d
bug: fix chirpradon3d pyfftw import
mrava87 Oct 4, 2024
eb204df
minor: remove unused import of pyfftw
mrava87 Oct 4, 2024
97bab0a
Merge pull request #614 from mrava87/fix-chirpradon3d
mrava87 Oct 4, 2024
2b33f43
bug: fix nans in Spread
mrava87 Oct 6, 2024
6c6dff6
Merge pull request #615 from mrava87/fix-radonnan
mrava87 Oct 6, 2024
91fcabc
Remove parenthesis for cuda.jit
mrava87 Oct 7, 2024
bcd4da2
Merge pull request #611 from mrava87/feat-fourierradon
mrava87 Oct 7, 2024
127620b
bug: fix problem in Restriction when passing iava as cupy array
mrava87 Oct 26, 2024
71dc191
minor: removed unused import
mrava87 Oct 26, 2024
6d6887a
Merge pull request #618 from mrava87/bug-restrictioncupy
mrava87 Oct 26, 2024
ac68e3e
rtd: force devito version (#619)
mrava87 Oct 27, 2024
d832ec6
Adds interoperability with PyTensor (and PyMC) (#621)
cako Nov 20, 2024
317a804
doc: added info to install pytensor and pymc (#623)
mrava87 Nov 21, 2024
2d749a2
feat: ToCupy operator (#622)
mrava87 Nov 24, 2024
2102533
bug: ensure array shape consistency in leastsquares solvers
mrava87 Nov 25, 2024
8d9def3
Merge pull request #624 from mrava87/bug-lssolvers
mrava87 Nov 25, 2024
8971c22
doc: add pytensor to doc and warning about osx error
mrava87 Dec 1, 2024
490a6dd
Add button to GitHub Repo
prisae Dec 4, 2024
893ab69
Merge pull request #626 from prisae/patch-1
mrava87 Dec 4, 2024
94abe4c
feat: speedup fourierradon with engine=cuda
mrava87 Dec 9, 2024
02cfddd
minor: fix flake8
mrava87 Dec 9, 2024
0f526c1
Merge pull request #625 from mrava87/doc-pytensor
mrava87 Dec 11, 2024
9ed06e3
Merge pull request #627 from mrava87/feat-fourierradonnumbaimprov
mrava87 Dec 11, 2024
ed2215a
doc: prepare for release v2.4.0
mrava87 Dec 11, 2024
c37664b
Merge pull request #628 from mrava87/release-v2.4.0
mrava87 Dec 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ jobs:
run: |
python -m pip install --upgrade pip setuptools
pip install flake8 pytest
if [ -f requirements.txt ]; then pip install -r requirements-dev.txt; fi
pip install -r requirements-dev.txt
pip install -r requirements-torch.txt
- name: Install pylops
run: |
python -m setuptools_scm
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/codacy-coverage-reporter.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ jobs:
run: |
python -m pip install --upgrade pip
pip install flake8 pytest
if [ -f requirements.txt ]; then pip install -r requirements-dev.txt; fi
pip install -r requirements-dev.txt
pip install -r requirements-torch.txt
- name: Install pylops
run: |
pip install .
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ build
dist
pylops.egg-info/
.eggs/
__pycache__

# setuptools_scm generated #
pylops/version.py
Expand Down
1 change: 1 addition & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,6 @@ sphinx:
python:
install:
- requirements: requirements-doc.txt
- requirements: requirements-torch.txt
- method: pip
path: .
12 changes: 9 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,18 @@
Changelog
=========

# 2.4.0
* Added `pylops.signalprocessing.FourierRadon2d` and
`pylops.signalprocessing.FourierRadon3d` operators
* Added `pylops.PyTensorOperator` operator
* Added `pylops.ToCupy` operator
* Added `pylops.utils.seismicevents.parabolic3d` method
* Fix bug in `pylops.Restriction` when passing iava as cupy array

# 2.3.1
* Fixed bug in :py:mod:`pylops.utils.backend` (see [Issue #606](https://github.com/PyLops/pylops/issues/606))
* Fixed bug in `pylops.utils.backend` (see [Issue #606](https://github.com/PyLops/pylops/issues/606))

# 2.3.0

* Added `pylops.JaxOperator`, `pylops.signalprocessing.DWTND`, and `pylops.signalprocessing.DTCWT` operators.
* Added `updatesrc` method to `pylops.waveeqprocessing.AcousticWave2D`.
* Added `verb` to `pylops.signalprocessing.Sliding1D.sliding1d_design`, `pylops.signalprocessing.Sliding2D.sliding2d_design`, `pylops.signalprocessing.Sliding3D.sliding3d_design`, `pylops.signalprocessing.Patch2D.patch2d_design`, and `pylops.signalprocessing.Patch3D.patch3d_design`.
Expand All @@ -29,7 +36,6 @@ is now unmantained and merged into `cupy`).


# 2.2.0

* Added `pylops.signalprocessing.NonStationaryConvolve3D` operator
* Added nd-array capabilities to `pylops.basicoperators.Identity` and `pylops.basicoperators.Zero`
* Added second implementation in `pylops.waveeqprocessing.BlendingContinuous` which is more
Expand Down
3 changes: 2 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,8 @@ install:

dev-install:
make pipcheck
$(PIP) install -r requirements-dev.txt && $(PIP) install -e .
$(PIP) install -r requirements-dev.txt &&\
$(PIP) install -r requirements-torch.txt && $(PIP) install -e .

install_conda:
conda env create -f environment.yml && conda activate pylops && pip install .
Expand Down
2 changes: 2 additions & 0 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ jobs:
- script: |
python -m pip install --upgrade pip setuptools wheel django
pip install -r requirements-dev.txt
pip install -r requirements-torch.txt
pip install .
displayName: 'Install prerequisites and library'

Expand Down Expand Up @@ -90,6 +91,7 @@ jobs:
- script: |
python -m pip install --upgrade pip setuptools wheel django
pip install -r requirements-dev.txt
pip install -r requirements-torch.txt
pip install .
displayName: 'Install prerequisites and library'

Expand Down
Binary file added docs/source/_static/cupy_diagram.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/source/_static/numpy_cupy_bd_diagram.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/source/_static/numpy_cupy_vs_diagram.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions docs/source/api/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ Templates
LinearOperator
FunctionOperator
MemoizeOperator
PyTensorOperator
TorchOperator
JaxOperator

Expand Down Expand Up @@ -62,6 +63,8 @@ Basic operators
Real
Imag
Conj
ToCupy


Smoothing and derivatives
~~~~~~~~~~~~~~~~~~~~~~~~~
Expand Down Expand Up @@ -109,6 +112,8 @@ Signal processing
Seislet
Radon2D
Radon3D
FourierRadon2D
FourierRadon3D
ChirpRadon2D
ChirpRadon3D
Sliding1D
Expand Down
1 change: 1 addition & 0 deletions docs/source/api/others.rst
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,7 @@ Synthetics
seismicevents.parabolic2d
seismicevents.hyperbolic2d
seismicevents.linear3d
seismicevents.parabolic3d
seismicevents.hyperbolic3d

.. currentmodule:: pylops.waveeqprocessing
Expand Down
14 changes: 13 additions & 1 deletion docs/source/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,19 @@
Changelog
=========

Version 2.4.0
-------------

*Released on: 11/12/2024*

* Added :py:class:`pylops.signalprocessing.FourierRadon2d` and
:py:class:`pylops.signalprocessing.FourierRadon3d` operators
* Added :py:class:`pylops.PyTensorOperator` operator
* Added :py:class:`pylops.ToCupy` operator
* Added :py:class:`pylops.utils.seismicevents.parabolic3d` method
* Fix bug in :py:class:`pylops.Restriction` when passing iava as cupy array


Version 2.3.1
-------------

Expand Down Expand Up @@ -511,7 +523,7 @@ Version 1.3.0
* Added :py:func:`pylops.optimization.sparsity.ISTA` and
:py:func:`pylops.optimization.sparsity.FISTA` sparse solvers
* Added possibility to broadcast (handle multi-dimensional arrays)
to :py:class:`pylops.Diagonal` and :py:func:`pylops..Restriction` operators
to :py:class:`pylops.Diagonal` and :py:class:`pylops.Restriction` operators
* Added :py:class:`pylops.signalprocessing.Interp` operator
* Added :py:class:`pylops.Spread` operator
* Added :py:class:`pylops.signalprocessing.Radon2D` operator
Expand Down
19 changes: 11 additions & 8 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
# -*- coding: utf-8 -*-
import sys
import os
import datetime
import os
import sys

from sphinx_gallery.sorting import ExampleTitleSortKey

from pylops import __version__

# Sphinx needs to be able to import the package to use autodoc and get the version number
Expand Down Expand Up @@ -37,6 +39,8 @@
"matplotlib": ("https://matplotlib.org/", None),
"pyfftw": ("https://pyfftw.readthedocs.io/en/latest/", None),
"spgl1": ("https://spgl1.readthedocs.io/en/latest/", None),
"pymc": ("https://www.pymc.io/", None),
"arviz": ("https://python.arviz.org/en/latest/", None),
}

# Generate autodoc stubs with summaries from code
Expand Down Expand Up @@ -103,9 +107,7 @@
# These enable substitutions using |variable| in the rst files
rst_epilog = """
.. |year| replace:: {year}
""".format(
year=year
)
""".format(year=year)
html_static_path = ["_static"]
html_last_updated_fmt = "%b %d, %Y"
html_title = "PyLops"
Expand All @@ -122,15 +124,16 @@
# Theme config
html_theme = "pydata_sphinx_theme"
html_theme_options = {
"logo_only": True,
"display_version": True,
"github_url": "https://github.com/PyLops/pylops",
# "logo_only": True,
# "display_version": True,
"logo": {
"image_light": "pylops_b.png",
"image_dark": "pylops.png",
}
}
html_css_files = [
'css/custom.css',
"css/custom.css",
]

html_context = {
Expand Down
Loading
Loading