Skip to content

Commit e9fdee7

Browse files
committed
Merge branch 'main' into DeprecateCalculateCable
2 parents e6dd1ea + 1dccbc5 commit e9fdee7

File tree

3 files changed

+0
-46
lines changed

3 files changed

+0
-46
lines changed

src/mdio/commands/segy.py

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -259,14 +259,6 @@ def segy_import( # noqa: PLR0913
259259
--chunk-size 8,2,256,512
260260
--grid-overrides '{"ChannelWrap": True, "ChannelsPerCable": 800}'
261261
262-
\b
263-
If we do have cable numbers in the headers, but channels are still sequential (aka.
264-
unwrapped), we can still ingest it like this.
265-
--header-locations 9,213,13
266-
--header-names shot,cable,chan
267-
--header-types int32,int16,int32
268-
--chunk-size 8,2,256,512
269-
--grid-overrides '{"ChannelWrap":True, "ChannelsPerCable": 800}'
270262
\b
271263
No grid overrides are necessary for shot gathers with channel numbers and wrapped channels.
272264

src/mdio/segy/geometry.py

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -371,9 +371,6 @@ class DuplicateIndex(GridOverrideCommand):
371371

372372
def validate(self, index_headers: HeaderArray, grid_overrides: dict[str, bool | int]) -> None:
373373
"""Validate if this transform should run on the type of data."""
374-
if "ChannelWrap" in grid_overrides:
375-
raise GridOverrideIncompatibleError(self.name, "ChannelWrap")
376-
377374
if self.required_keys is not None:
378375
self.check_required_keys(index_headers)
379376
self.check_required_params(grid_overrides)
@@ -431,9 +428,6 @@ class AutoChannelWrap(GridOverrideCommand):
431428

432429
def validate(self, index_headers: HeaderArray, grid_overrides: dict[str, bool | int]) -> None:
433430
"""Validate if this transform should run on the type of data."""
434-
if "ChannelWrap" in grid_overrides:
435-
raise GridOverrideIncompatibleError(self.name, "ChannelWrap")
436-
437431
self.check_required_keys(index_headers)
438432
self.check_required_params(grid_overrides)
439433

@@ -463,30 +457,6 @@ def transform(
463457
return index_headers
464458

465459

466-
class ChannelWrap(GridOverrideCommand):
467-
"""Wrap channels to start from one at cable boundaries."""
468-
469-
required_keys = {"shot_point", "cable", "channel"}
470-
required_parameters = {"ChannelsPerCable"}
471-
472-
def validate(self, index_headers: HeaderArray, grid_overrides: dict[str, bool | int]) -> None:
473-
"""Validate if this transform should run on the type of data."""
474-
if "AutoChannelWrap" in grid_overrides:
475-
raise GridOverrideIncompatibleError(self.name, "AutoCableChannel")
476-
477-
self.check_required_keys(index_headers)
478-
self.check_required_params(grid_overrides)
479-
480-
def transform(self, index_headers: HeaderArray, grid_overrides: dict[str, bool | int]) -> NDArray:
481-
"""Perform the grid transform."""
482-
self.validate(index_headers, grid_overrides)
483-
484-
channels_per_cable = grid_overrides["ChannelsPerCable"]
485-
index_headers["channel"] = (index_headers["channel"] - 1) % channels_per_cable + 1
486-
487-
return index_headers
488-
489-
490460
class AutoShotWrap(GridOverrideCommand):
491461
"""Automatically determine ShotGun acquisition type."""
492462

@@ -540,7 +510,6 @@ def __init__(self) -> None:
540510
self.commands = {
541511
"AutoChannelWrap": AutoChannelWrap(),
542512
"AutoShotWrap": AutoShotWrap(),
543-
"ChannelWrap": ChannelWrap(),
544513
"NonBinned": NonBinned(),
545514
"HasDuplicates": DuplicateIndex(),
546515
}

tests/unit/test_segy_grid_overrides.py

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -153,9 +153,6 @@ def test_missing_param(self, mock_streamer_headers: dict[str, npt.NDArray]) -> N
153153
chunksize = None
154154
overrider = GridOverrider()
155155

156-
with pytest.raises(GridOverrideMissingParameterError):
157-
overrider.run(mock_streamer_headers, index_names, {"ChannelWrap": True}, chunksize)
158-
159156
def test_incompatible_overrides(
160157
self,
161158
mock_streamer_headers: dict[str, npt.NDArray],
@@ -165,10 +162,6 @@ def test_incompatible_overrides(
165162
chunksize = None
166163
overrider = GridOverrider()
167164

168-
grid_overrides = {"ChannelWrap": True, "AutoChannelWrap": True}
169-
with pytest.raises(GridOverrideIncompatibleError):
170-
overrider.run(mock_streamer_headers, index_names, grid_overrides, chunksize)
171-
172165
def test_unknown_override(
173166
self,
174167
mock_streamer_headers: dict[str, npt.NDArray],

0 commit comments

Comments
 (0)