Skip to content

Commit 4cbaf41

Browse files
committed
minor: added dims,dimsd to Patch2D and Sliding*D
1 parent 516f097 commit 4cbaf41

File tree

5 files changed

+25
-8
lines changed

5 files changed

+25
-8
lines changed

examples/plot_matrixmult.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -196,11 +196,11 @@
196196
#
197197
# and apply it using the same implementation of the
198198
# :py:class:`pylops.MatrixMult` operator by simply telling the operator how we
199-
# want the model to be organized through the ``dims`` input parameter.
199+
# want the model to be organized through the ``otherdims`` input parameter.
200200
A = np.array([[1.0, 2.0], [4.0, 5.0]])
201201
x = np.array([[1.0, 1.0], [2.0, 2.0], [3.0, 3.0]])
202202

203-
Aop = pylops.MatrixMult(A, dims=(3,), dtype="float64")
203+
Aop = pylops.MatrixMult(A, otherdims=(3,), dtype="float64")
204204
y = Aop * x.ravel()
205205

206206
xest, istop, itn, r1norm, r2norm = lsqr(Aop, y, damp=1e-10, iter_lim=10, show=0)[0:5]

pylops/signalprocessing/Patch2D.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import numpy as np
44

55
from pylops.basicoperators import BlockDiag, Diagonal, HStack, Restriction
6+
from pylops.LinearOperator import aslinearoperator
67
from pylops.signalprocessing.Sliding2D import _slidingsteps
78
from pylops.utils.tapers import taper2d
89

@@ -180,5 +181,11 @@ def Patch2D(Op, dims, dimsd, nwin, nover, nop, tapertype="hanning", design=False
180181
for win_in, win_end in zip(dwin0_ins, dwin0_ends)
181182
]
182183
)
183-
Pop = combining0 * combining1 * OOp
184+
Pop = aslinearoperator(combining0 * combining1 * OOp)
185+
Pop.dims, Pop.dimsd = (
186+
nwins0,
187+
nwins1,
188+
int(dims[0] // nwins0),
189+
int(dims[1] // nwins1),
190+
), dimsd
184191
return Pop

pylops/signalprocessing/Sliding1D.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import numpy as np
44

55
from pylops.basicoperators import BlockDiag, Diagonal, HStack, Restriction
6+
from pylops.LinearOperator import aslinearoperator
67
from pylops.signalprocessing.Sliding2D import _slidingsteps
78
from pylops.utils.tapers import taper
89

@@ -107,5 +108,6 @@ def Sliding1D(Op, dim, dimd, nwin, nover, tapertype="hanning", design=False):
107108
for win_in, win_end in zip(dwin_ins, dwin_ends)
108109
]
109110
)
110-
Sop = combining * OOp
111+
Sop = aslinearoperator(combining * OOp)
112+
Sop.dims, Sop.dimsd = (nwins, int(dim // nwins)), dimd
111113
return Sop

pylops/signalprocessing/Sliding2D.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import numpy as np
44

55
from pylops.basicoperators import BlockDiag, Diagonal, HStack, Restriction
6+
from pylops.LinearOperator import aslinearoperator
67
from pylops.utils.tapers import taper2d
78

89
logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.WARNING)
@@ -139,5 +140,6 @@ def Sliding2D(Op, dims, dimsd, nwin, nover, tapertype="hanning", design=False):
139140
for win_in, win_end in zip(dwin_ins, dwin_ends)
140141
]
141142
)
142-
Sop = combining * OOp
143+
Sop = aslinearoperator(combining * OOp)
144+
Sop.dims, Sop.dimsd = (nwins, int(dims[0] // nwins), dims[1]), dimsd
143145
return Sop

pylops/signalprocessing/Sliding3D.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
import logging
22

3-
import numpy as np
4-
53
from pylops.basicoperators import BlockDiag, Diagonal, HStack, Restriction
4+
from pylops.LinearOperator import aslinearoperator
65
from pylops.signalprocessing.Sliding2D import _slidingsteps
76
from pylops.utils.tapers import taper3d
87

@@ -152,5 +151,12 @@ def Sliding3D(
152151
for win_in, win_end in zip(dwin0_ins, dwin0_ends)
153152
]
154153
)
155-
Sop = combining0 * combining1 * OOp
154+
Sop = aslinearoperator(combining0 * combining1 * OOp)
155+
Sop.dims, Sop.dimsd = (
156+
nwins0,
157+
nwins1,
158+
int(dims[0] // nwins0),
159+
int(dims[1] // nwins1),
160+
dims[2],
161+
), dimsd
156162
return Sop

0 commit comments

Comments
 (0)