You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
🚧👷🏻 We are actively working on updating the documentation and adding missing features to v1 release. Please check back later for more updates!
5
+
```
6
+
7
+
Grid overrides are transformations applied during SEG-Y import that modify how trace headers are interpreted and indexed. They handle complex acquisition geometries that cannot be represented by simple header-to-dimension mappings.
8
+
9
+
## Overview
10
+
11
+
When importing SEG-Y data, MDIO maps trace header fields to dataset dimensions. However, real-world seismic data often has complexities that require additional processing. Grid overrides address these issues by transforming header values before indexing.
12
+
13
+
## CalculateShotIndex
14
+
15
+
Calculates a dense `shot_index` dimension from sparse or interleaved `shot_point` values. Required for the `ObnReceiverGathers3D` template.
In multi-gun OBN acquisition, shot points are often interleaved across guns:
24
+
25
+
```
26
+
Before (interleaved shot_point):
27
+
Gun 1: 1, 3, 5, 7, ...
28
+
Gun 2: 2, 4, 6, 8, ...
29
+
30
+
After (dense shot_index):
31
+
Gun 1: 0, 1, 2, 3, ...
32
+
Gun 2: 0, 1, 2, 3, ...
33
+
```
34
+
35
+
The override detects the geometry type and only applies the transformation when shot points are actually interleaved (Type B geometry). For non-interleaved data (Type A), shot points are used directly.
See [OBN Data Import](obn_data_import.md) for a complete guide on importing OBN data.
51
+
```
52
+
53
+
## Special Behaviors
54
+
55
+
Some templates have special behaviors that are applied automatically during import, independent of grid overrides.
56
+
57
+
### Component Synthesis (OBN)
58
+
59
+
When using the `ObnReceiverGathers3D` template, if the SEG-Y specification does not include a `component` field, MDIO automatically synthesizes it with value `1` for all traces. This allows single-component data (e.g., hydrophone-only) to use the same template without modification.
60
+
61
+
```{note}
62
+
A warning is logged when component is synthesized:
63
+
64
+
> SEG-Y headers do not contain 'component' field required by template 'ObnReceiverGathers3D'.
65
+
> Synthesizing 'component' dimension with constant value 1 for all traces.
66
+
```
67
+
68
+
## Error Handling
69
+
70
+
Grid overrides validate their requirements and raise specific exceptions:
71
+
72
+
| Exception | Cause |
73
+
| --------- | ----- |
74
+
|`GridOverrideUnknownError`| Unknown override name passed |
Welcome to the MDIO guides. This section provides in-depth documentation on advanced features and specialized workflows.
4
+
5
+
## Topics
6
+
7
+
```{toctree}
8
+
:maxdepth: 1
9
+
:titlesonly:
10
+
11
+
grid_overrides
12
+
obn_data_import
13
+
```
14
+
15
+
## Overview
16
+
17
+
### Grid Overrides
18
+
19
+
Grid overrides are transformations applied during SEG-Y import that modify how trace headers are interpreted and indexed. They handle complex acquisition geometries like multi-gun acquisition with interleaved shot points.
20
+
21
+
See [Grid Overrides](grid_overrides.md) for documentation.
22
+
23
+
### OBN Data Import
24
+
25
+
Ocean Bottom Node (OBN) data has unique characteristics requiring specialized handling. The OBN guide covers:
26
+
27
+
- The `ObnReceiverGathers3D` template
28
+
- Required grid overrides for OBN
29
+
- Component synthesis for single-component data
30
+
31
+
See [OBN Data Import](obn_data_import.md) for the complete guide.
|`shot_index`| Calculated dense index for shots (see [Required Grid Overrides](#required-grid-overrides)) |
16
+
|`time`/`depth`| Vertical sample axis |
17
17
18
18
### Coordinates
19
19
@@ -24,11 +24,15 @@ The `ObnReceiverGathers3D` template organizes data with the following dimensions
24
24
The `shot_index` dimension is calculated (0 to N-1) from `shot_point` values during ingestion. Original `shot_point` values are preserved as a coordinate indexed by `(shot_line, gun, shot_index)`.
25
25
```
26
26
27
-
## Special Behaviors
27
+
## Required Grid Overrides
28
+
29
+
### CalculateShotIndex (Required)
30
+
31
+
The `CalculateShotIndex` grid override is **required** for the `ObnReceiverGathers3D` template. It calculates the `shot_index` dimension from `shot_point` values. Without this override, the import will fail with an error:
28
32
29
-
### AutoShotWrap Grid Override
33
+
> Required computed fields ['shot_index'] for template ObnReceiverGathers3D not found after grid overrides.
30
34
31
-
The `AutoShotWrap` grid override handles multi-gun acquisition where shot points are interleaved across guns. It calculates a dense `shot_index` from sparse `shot_point` values:
35
+
This override handles multi-gun acquisition where shot points are interleaved across guns, calculating a dense `shot_index` from sparse `shot_point` values:
32
36
33
37
```
34
38
Before (interleaved shot_point):
@@ -42,6 +46,8 @@ After (dense shot_index):
42
46
43
47
For `ObnReceiverGathers3D`, the override uses `shot_line` as the line field and requires `shot_line`, `gun`, and `shot_point` headers.
44
48
49
+
## Special Behaviors
50
+
45
51
### Component Synthesis
46
52
47
53
When the SEG-Y spec does not include a `component` field, MDIO automatically synthesizes it with value `1` for all traces. This allows single-component data (e.g., hydrophone-only) to use the same template without modification.
0 commit comments