Skip to content

Commit 4c82d21

Browse files
committed
minor: added verb to *_design methods and few other small fixes
1 parent af5d8ae commit 4c82d21

File tree

5 files changed

+103
-84
lines changed

5 files changed

+103
-84
lines changed

pylops/signalprocessing/patch2d.py

Lines changed: 23 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ def patch2d_design(
2828
nwin: Tuple[int, int],
2929
nover: Tuple[int, int],
3030
nop: Tuple[int, int],
31+
verb: bool = True,
3132
) -> Tuple[
3233
Tuple[int, int],
3334
Tuple[int, int],
@@ -51,6 +52,9 @@ def patch2d_design(
5152
Number of samples of overlapping part of window.
5253
nop : :obj:`tuple`
5354
Size of model in the transformed domain.
55+
verb : :obj:`bool`, optional
56+
Verbosity flag. If ``verb==True``, print the data
57+
and model windows start-end indices
5458
5559
Returns
5660
-------
@@ -79,21 +83,22 @@ def patch2d_design(
7983
mwins_inends = ((mwin0_ins, mwin0_ends), (mwin1_ins, mwin1_ends))
8084

8185
# print information about patching
82-
logging.warning("%d-%d windows required...", nwins0, nwins1)
83-
logging.warning(
84-
"data wins - start:%s, end:%s / start:%s, end:%s",
85-
dwin0_ins,
86-
dwin0_ends,
87-
dwin1_ins,
88-
dwin1_ends,
89-
)
90-
logging.warning(
91-
"model wins - start:%s, end:%s / start:%s, end:%s",
92-
mwin0_ins,
93-
mwin0_ends,
94-
mwin1_ins,
95-
mwin1_ends,
96-
)
86+
if verb:
87+
logging.warning("%d-%d windows required...", nwins0, nwins1)
88+
logging.warning(
89+
"data wins - start:%s, end:%s / start:%s, end:%s",
90+
dwin0_ins,
91+
dwin0_ends,
92+
dwin1_ins,
93+
dwin1_ends,
94+
)
95+
logging.warning(
96+
"model wins - start:%s, end:%s / start:%s, end:%s",
97+
mwin0_ins,
98+
mwin0_ends,
99+
mwin1_ins,
100+
mwin1_ends,
101+
)
97102
return nwins, dims, mwins_inends, dwins_inends
98103

99104

@@ -276,10 +281,7 @@ def __init__(
276281
self.taps = np.vstack(taps).reshape(3, 3, nwin[0], nwin[1])
277282

278283
# define scalings
279-
if scalings is None:
280-
self.scalings = [1.0] * nwins
281-
else:
282-
self.scalings = scalings
284+
self.scalings = [1.0] * nwins if scalings is None else scalings
283285

284286
# check if operator is applied to all windows simultaneously
285287
self.simOp = False
@@ -318,7 +320,7 @@ def _apply_taper(self, ywins, iwin0, iwin1):
318320
ywins[iwin0, iwin1] = self.taps[1, 1] * ywins[iwin0, iwin1]
319321
return ywins
320322

321-
@reshaped()
323+
@reshaped
322324
def _matvec_savetaper(self, x: NDArray) -> NDArray:
323325
ncp = get_array_module(x)
324326
if self.tapertype is not None:
@@ -365,7 +367,7 @@ def _rmatvec_savetaper(self, x: NDArray) -> NDArray:
365367
).reshape(self.dims[2], self.dims[3])
366368
return y
367369

368-
@reshaped()
370+
@reshaped
369371
def _matvec_nosavetaper(self, x: NDArray) -> NDArray:
370372
ncp = get_array_module(x)
371373
if self.tapertype is not None:

pylops/signalprocessing/patch3d.py

Lines changed: 28 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ def patch3d_design(
2828
nwin: Tuple[int, int, int],
2929
nover: Tuple[int, int, int],
3030
nop: Tuple[int, int, int],
31+
verb: bool = True,
3132
) -> Tuple[
3233
Tuple[int, int, int],
3334
Tuple[int, int, int],
@@ -51,6 +52,9 @@ def patch3d_design(
5152
Number of samples of overlapping part of window.
5253
nop : :obj:`tuple`
5354
Size of model in the transformed domain.
55+
verb : :obj:`bool`, optional
56+
Verbosity flag. If ``verb==True``, print the data
57+
and model windows start-end indices
5458
5559
Returns
5660
-------
@@ -90,25 +94,26 @@ def patch3d_design(
9094
)
9195

9296
# print information about patching
93-
logging.warning("%d-%d-%d windows required...", nwins0, nwins1, nwins2)
94-
logging.warning(
95-
"data wins - start:%s, end:%s / start:%s, end:%s / start:%s, end:%s",
96-
dwin0_ins,
97-
dwin0_ends,
98-
dwin1_ins,
99-
dwin1_ends,
100-
dwin2_ins,
101-
dwin2_ends,
102-
)
103-
logging.warning(
104-
"model wins - start:%s, end:%s / start:%s, end:%s / start:%s, end:%s",
105-
mwin0_ins,
106-
mwin0_ends,
107-
mwin1_ins,
108-
mwin1_ends,
109-
mwin2_ins,
110-
mwin2_ends,
111-
)
97+
if verb:
98+
logging.warning("%d-%d-%d windows required...", nwins0, nwins1, nwins2)
99+
logging.warning(
100+
"data wins - start:%s, end:%s / start:%s, end:%s / start:%s, end:%s",
101+
dwin0_ins,
102+
dwin0_ends,
103+
dwin1_ins,
104+
dwin1_ends,
105+
dwin2_ins,
106+
dwin2_ends,
107+
)
108+
logging.warning(
109+
"model wins - start:%s, end:%s / start:%s, end:%s / start:%s, end:%s",
110+
mwin0_ins,
111+
mwin0_ends,
112+
mwin1_ins,
113+
mwin1_ends,
114+
mwin2_ins,
115+
mwin2_ends,
116+
)
112117
return nwins, dims, mwins_inends, dwins_inends
113118

114119

@@ -485,10 +490,7 @@ def __init__(
485490
self.taps[-1, -1, -1] = taprightbottomback
486491

487492
# define scalings
488-
if scalings is None:
489-
self.scalings = [1.0] * nwins
490-
else:
491-
self.scalings = scalings
493+
self.scalings = [1.0] * nwins if scalings is None else scalings
492494

493495
# check if operator is applied to all windows simultaneously
494496
self.simOp = False
@@ -576,7 +578,7 @@ def _apply_taper(self, ywins, iwin0, iwin1, iwin2):
576578
ywins[iwin0, iwin1, iwin2] = self.taps[1, 1, 1] * ywins[iwin0, iwin1, iwin2]
577579
return ywins
578580

579-
@reshaped()
581+
@reshaped
580582
def _matvec_savetaper(self, x: NDArray) -> NDArray:
581583
ncp = get_array_module(x)
582584
if self.tapertype is not None:
@@ -630,7 +632,7 @@ def _rmatvec_savetaper(self, x: NDArray) -> NDArray:
630632
).reshape(self.dims[3], self.dims[4], self.dims[5])
631633
return y
632634

633-
@reshaped()
635+
@reshaped
634636
def _matvec_nosavetaper(self, x: NDArray) -> NDArray:
635637
ncp = get_array_module(x)
636638
if self.tapertype is not None:
@@ -727,7 +729,7 @@ def _matvec_nosavetaper(self, x: NDArray) -> NDArray:
727729
] += xxwin
728730
return y
729731

730-
@reshaped()
732+
@reshaped
731733
def _rmatvec_nosavetaper(self, x: NDArray) -> NDArray:
732734
ncp = get_array_module(x)
733735
ncp_sliding_window_view = get_sliding_window_view(x)

pylops/signalprocessing/sliding1d.py

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ def sliding1d_design(
2828
nwin: int,
2929
nover: int,
3030
nop: int,
31+
verb: bool = True,
3132
) -> Tuple[int, int, Tuple[NDArray, NDArray], Tuple[NDArray, NDArray]]:
3233
"""Design Sliding1D operator
3334
@@ -46,6 +47,9 @@ def sliding1d_design(
4647
Number of samples of overlapping part of window.
4748
nop : :obj:`tuple`
4849
Size of model in the transformed domain.
50+
verb : :obj:`bool`, optional
51+
Verbosity flag. If ``verb==True``, print the data
52+
and model windows start-end indices
4953
5054
Returns
5155
-------
@@ -70,17 +74,18 @@ def sliding1d_design(
7074
mwins_inends = (mwin_ins, mwin_ends)
7175

7276
# print information about patching
73-
logging.warning("%d windows required...", nwins)
74-
logging.warning(
75-
"data wins - start:%s, end:%s",
76-
dwin_ins,
77-
dwin_ends,
78-
)
79-
logging.warning(
80-
"model wins - start:%s, end:%s",
81-
mwin_ins,
82-
mwin_ends,
83-
)
77+
if verb:
78+
logging.warning("%d windows required...", nwins)
79+
logging.warning(
80+
"data wins - start:%s, end:%s",
81+
dwin_ins,
82+
dwin_ends,
83+
)
84+
logging.warning(
85+
"model wins - start:%s, end:%s",
86+
mwin_ins,
87+
mwin_ends,
88+
)
8489
return nwins, dim, mwins_inends, dwins_inends
8590

8691

pylops/signalprocessing/sliding2d.py

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ def sliding2d_design(
6060
nwin: int,
6161
nover: int,
6262
nop: Tuple[int, int],
63+
verb: bool = True,
6364
) -> Tuple[int, Tuple[int, int], Tuple[NDArray, NDArray], Tuple[NDArray, NDArray]]:
6465
"""Design Sliding2D operator
6566
@@ -78,6 +79,9 @@ def sliding2d_design(
7879
Number of samples of overlapping part of window.
7980
nop : :obj:`tuple`
8081
Size of model in the transformed domain.
82+
verb : :obj:`bool`, optional
83+
Verbosity flag. If ``verb==True``, print the data
84+
and model windows start-end indices
8185
8286
Returns
8387
-------
@@ -102,17 +106,18 @@ def sliding2d_design(
102106
mwins_inends = (mwin_ins, mwin_ends)
103107

104108
# print information about patching
105-
logging.warning("%d windows required...", nwins)
106-
logging.warning(
107-
"data wins - start:%s, end:%s",
108-
dwin_ins,
109-
dwin_ends,
110-
)
111-
logging.warning(
112-
"model wins - start:%s, end:%s",
113-
mwin_ins,
114-
mwin_ends,
115-
)
109+
if verb:
110+
logging.warning("%d windows required...", nwins)
111+
logging.warning(
112+
"data wins - start:%s, end:%s",
113+
dwin_ins,
114+
dwin_ends,
115+
)
116+
logging.warning(
117+
"model wins - start:%s, end:%s",
118+
mwin_ins,
119+
mwin_ends,
120+
)
116121
return nwins, dims, mwins_inends, dwins_inends
117122

118123

pylops/signalprocessing/sliding3d.py

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ def sliding3d_design(
2828
nwin: Tuple[int, int],
2929
nover: Tuple[int, int],
3030
nop: Tuple[int, int, int],
31+
verb: bool = True,
3132
) -> Tuple[
3233
Tuple[int, int],
3334
Tuple[int, int, int],
@@ -51,6 +52,9 @@ def sliding3d_design(
5152
Number of samples of overlapping part of window.
5253
nop : :obj:`tuple`
5354
Size of model in the transformed domain.
55+
verb : :obj:`bool`, optional
56+
Verbosity flag. If ``verb==True``, print the data
57+
and model windows start-end indices
5458
5559
Returns
5660
-------
@@ -79,21 +83,22 @@ def sliding3d_design(
7983
mwins_inends = ((mwin0_ins, mwin0_ends), (mwin1_ins, mwin1_ends))
8084

8185
# print information about patching
82-
logging.warning("%d-%d windows required...", nwins0, nwins1)
83-
logging.warning(
84-
"data wins - start:%s, end:%s / start:%s, end:%s",
85-
dwin0_ins,
86-
dwin0_ends,
87-
dwin1_ins,
88-
dwin1_ends,
89-
)
90-
logging.warning(
91-
"model wins - start:%s, end:%s / start:%s, end:%s",
92-
mwin0_ins,
93-
mwin0_ends,
94-
mwin1_ins,
95-
mwin1_ends,
96-
)
86+
if verb:
87+
logging.warning("%d-%d windows required...", nwins0, nwins1)
88+
logging.warning(
89+
"data wins - start:%s, end:%s / start:%s, end:%s",
90+
dwin0_ins,
91+
dwin0_ends,
92+
dwin1_ins,
93+
dwin1_ends,
94+
)
95+
logging.warning(
96+
"model wins - start:%s, end:%s / start:%s, end:%s",
97+
mwin0_ins,
98+
mwin0_ends,
99+
mwin1_ins,
100+
mwin1_ends,
101+
)
97102
return nwins, dims, mwins_inends, dwins_inends
98103

99104

0 commit comments

Comments
 (0)