GEOPY-2773: Airborne FEM coaxial do not rotate transmitter, and ppm normalization needs to be ajusted#392
GEOPY-2773: Airborne FEM coaxial do not rotate transmitter, and ppm normalization needs to be ajusted#392domfournier wants to merge 12 commits intorelease/GA_4.8from
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the Frequency-Domain EM (FDEM/FEM) pipeline to support coaxial vs coplanar configurations (per-frequency via survey metadata) and simplifies FDEM channel handling to “real/imag” instead of separate vertical/inline/crossline channel sets. It also updates UI JSON assets and test expectations to match the new naming and metadata.
Changes:
- Add per-frequency
Coaxial datahandling and propagate it into receiver/source construction and normalization. - Switch FDEM option and output naming from
*_vertical_*style channels toreal/imagchannels. - Update UI JSON definitions and tests to reflect the new channel names and metadata.
Reviewed changes
Copilot reviewed 12 out of 12 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/run_tests/oriented_airborne_fem_receiver_test.py | Adjusts orientation test to new Iteration_0_real grouping and introduces coaxial metadata in the synthetic survey. |
| tests/run_tests/driver_airborne_fem_test.py | Updates test data/uncertainty wiring and expected entity names to real/imag. |
| simpeg_drivers/utils/synthetics/surveys/frequency_domain/fdem.py | Changes “Tx frequency” to referenced indices with a value_map back to true frequencies. |
| simpeg_drivers/electromagnetics/frequency_domain/options.py | Adds coaxial metadata accessor, updates channel option fields to real/imag, and changes caching behavior. |
| simpeg_drivers/components/factories/survey_factory.py | Builds per-frequency receiver orientation suffixes (_coaxial/_coplanar) and updates ordering/source construction. |
| simpeg_drivers/components/factories/source_factory.py | Passes FDEM source orientation derived from receivers (coaxial/coplanar). |
| simpeg_drivers/components/factories/receiver_factory.py | Adds coaxial/coplanar orientation mapping and changes component parsing rules. |
| simpeg_drivers/components/data.py | Updates FDEM normalization to distinguish coaxial vs coplanar scaling. |
| simpeg_drivers-assets/uijson/fdem_inversion.ui.json | Replaces multiple component channels with real/imag channels and updates tooltips. |
| simpeg_drivers-assets/uijson/fdem_forward.ui.json | Same as inversion UI JSON: switches to real/imag and updates tooltips. |
| simpeg_drivers-assets/uijson/fdem1d_inversion.ui.json | Renames 1D channel keys to vertical_* variants (from z_*). |
| simpeg_drivers-assets/uijson/fdem1d_forward.ui.json | Renames 1D channel bool keys to vertical_* variants (from z_*). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## release/GA_4.8 #392 +/- ##
==================================================
- Coverage 90.17% 90.14% -0.03%
==================================================
Files 129 129
Lines 6474 6475 +1
Branches 817 818 +1
==================================================
- Hits 5838 5837 -1
- Misses 422 425 +3
+ Partials 214 213 -1
🚀 New features to boost your workflow:
|
MatthieuCMira
left a comment
There was a problem hiding this comment.
No idea what happens here (I don't even know the goal of the app)
No comments about logic/mechanism/docstrings, as it's mostly replacement.
I guess it should be tested.
GEOPY-2773 - Airborne FEM coaxial do not rotate transmitter, and ppm normalization needs to be ajusted