GEOPY-2833: Regularization parameters of sub-drivers always over-written by joint parameters#391
GEOPY-2833: Regularization parameters of sub-drivers always over-written by joint parameters#391domfournier wants to merge 26 commits intorelease/GA_4.8from
Conversation
# Conflicts: # tests/run_tests/driver_joint_cross_gradient_test.py
There was a problem hiding this comment.
Pull request overview
Updates SimPEG Drivers’ UI JSON handling and test setup by migrating away from geoh5py.ui_json.InputFile toward BaseUIJson / SimPEGDriversUIJson, while also standardizing UI JSON metadata (icons) and cleaning up legacy/invalid UI JSON fields.
Changes:
- Replace legacy
InputFileusage withBaseUIJson/SimPEGDriversUIJsonacross tests and runtime utilities/drivers. - Add/standardize
iconmetadata on manyOptionsclasses and adjust UI JSON assets (notablytile_spatiallegacy fields). - Introduce/adjust driver entrypoints and parameter serialization to align with the new UI JSON flow.
Reviewed changes
Copilot reviewed 63 out of 63 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/uijson_test.py | Migrates legacy UI JSON test to SimPEGDriversUIJson and dict-based params flow. |
| tests/run_tests/driver_rotated_gradients_test.py | Adds sens_wts_threshold to params used in the rotated gradients run test. |
| tests/run_tests/driver_joint_cross_gradient_test.py | Writes UI JSON and starts driver from file; adds checks around IRLS norms and new params. |
| tests/run_tests/driver_grav_test.py | Adds sens_wts_threshold to gravity run test params. |
| tests/plate_simulation/runtest/sweep_test.py | Migrates plate sweep test from InputFile to BaseUIJson and group creation helpers. |
| tests/plate_simulation/runtest/match_test.py | Migrates plate simulation matching test to BaseUIJson and to_params(...) flow. |
| tests/plate_simulation/runtest/driver_test.py | Refactors plate simulation params construction to use BaseUIJson + validate_out_group. |
| simpeg_drivers/utils/utils.py | Updates simpeg_group_to_driver to build params via SimPEGDriversUIJson conversion. |
| simpeg_drivers/utils/tile_estimate.py | Adds icon metadata to TileParameters. |
| simpeg_drivers/uijson.py | Adds SimPEGDriversUIJson.from_dict for legacy/cleanup handling (e.g., tile_spatial). |
| simpeg_drivers/potential_fields/magnetic_vector/options.py | Adds icon metadata to magnetic vector forward/inversion options. |
| simpeg_drivers/potential_fields/magnetic_scalar/options.py | Adds icon metadata to magnetic scalar forward/inversion options. |
| simpeg_drivers/potential_fields/gravity/options.py | Adds icon metadata to gravity forward/inversion options. |
| simpeg_drivers/plate_simulation/sweep/options.py | Adds icon metadata and migrates template-option flattening to SimPEGDriversUIJson. |
| simpeg_drivers/plate_simulation/options.py | Adds icon metadata and migrates simulation params creation away from InputFile. |
| simpeg_drivers/plate_simulation/match/options.py | Adds icon metadata to plate match options. |
| simpeg_drivers/plate_simulation/match/driver.py | Migrates match driver UI JSON loading to SimPEGDriversUIJson and dict params flow. |
| simpeg_drivers/options.py | Replaces prior UI JSON writing hook with a custom write_ui_json using SimPEGDriversUIJson. |
| simpeg_drivers/natural_sources/tipper/options.py | Adds icon metadata to tipper forward/inversion options. |
| simpeg_drivers/natural_sources/magnetotellurics/options.py | Adds icon metadata to MT forward/inversion options. |
| simpeg_drivers/natural_sources/apparent_conductivity/options.py | Adds icon metadata to apparent conductivity forward/inversion options. |
| simpeg_drivers/joint/joint_surveys/options.py | Adds icon metadata to joint surveys options. |
| simpeg_drivers/joint/joint_petrophysics/options.py | Adds icon metadata to joint petrophysics options. |
| simpeg_drivers/joint/joint_cross_gradient/options.py | Adds icon metadata to joint cross-gradient options. |
| simpeg_drivers/electromagnetics/time_domain_1d/options.py | Adds icon metadata to TEM-1D forward/inversion options. |
| simpeg_drivers/electromagnetics/time_domain/options.py | Adds icon metadata to TDEM forward/inversion options. |
| simpeg_drivers/electromagnetics/frequency_domain_1d/options.py | Adds icon metadata to FEM-1D forward/inversion options. |
| simpeg_drivers/electromagnetics/frequency_domain/options.py | Adds icon metadata to FDEM forward/inversion options. |
| simpeg_drivers/electricals/induced_polarization/two_dimensions/options.py | Adds icon metadata to IP 2D forward/inversion options. |
| simpeg_drivers/electricals/induced_polarization/three_dimensions/options.py | Adds icon metadata to IP 3D forward/inversion options. |
| simpeg_drivers/electricals/direct_current/two_dimensions/options.py | Refactors model options type for DC2D and adds icon metadata. |
| simpeg_drivers/electricals/direct_current/three_dimensions/options.py | Adds icon metadata to DC3D forward/inversion options. |
| simpeg_drivers/electricals/base_2d.py | Introduces Conductivity2DModelOptions for 2D electrical workflows. |
| simpeg_drivers/driver.py | Adds/updates a start(...) entrypoint and imports Self/BaseUIJson/SimPEGDriversUIJson. |
| simpeg_drivers/depth_of_investigation/sensitivity_cutoff/options.py | Adds icon metadata to DOI sensitivity cutoff options. |
| simpeg_drivers-assets/uijson/tipper_inversion.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/tipper_forward.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/tdem_inversion.ui.json | Updates a default value string and removes legacy tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/tdem_forward.ui.json | Updates a default value string and removes legacy tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/tdem1d_inversion.ui.json | Updates a default value string and removes legacy tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/tdem1d_forward.ui.json | Updates a default value string and removes legacy tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/plate_sweep.ui.json | Adjusts workdir field (removes directoryOnly). |
| simpeg_drivers-assets/uijson/magnetotellurics_inversion.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/magnetotellurics_forward.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/magnetic_vector_pde_inversion.ui.json | Cleans meshType list and updates tile_spatial visibility/legacy fields. |
| simpeg_drivers-assets/uijson/magnetic_vector_pde_forward.ui.json | Cleans meshType list and updates tile_spatial visibility/legacy fields. |
| simpeg_drivers-assets/uijson/magnetic_vector_inversion.ui.json | Cleans meshType list and removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/magnetic_vector_forward.ui.json | Updates meshType lists and removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/magnetic_scalar_inversion.ui.json | Cleans meshType list and removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/magnetic_scalar_forward.ui.json | Cleans meshType list and removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/induced_polarization_3d_inversion.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/induced_polarization_3d_forward.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/induced_polarization_2d_inversion.ui.json | Converts tile_spatial from scalar to full UI JSON field definition. |
| simpeg_drivers-assets/uijson/gravity_inversion.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/gravity_forward.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/fdem_inversion.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/fdem_forward.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/fdem1d_inversion.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/fdem1d_forward.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/direct_current_3d_inversion.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/direct_current_3d_forward.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/apparent_conductivity_inversion.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
| simpeg_drivers-assets/uijson/apparent_conductivity_forward.ui.json | Removes legacy/invalid tile_spatial sub-keys. |
Comments suppressed due to low confidence (1)
simpeg_drivers-assets/uijson/plate_sweep.ui.json:30
- The UI JSON uses the key
tootip, but the rest of the UI JSON files usetooltip. If the UI renderer expectstooltip, these entries will be ignored and tooltips won't show. Renametootiptotooltipfor the affected fields.
"workdir": {
"main": true,
"group": "Base",
"label": "Output directory",
"enabled": false,
"optional": true,
"tootip": "Directory to store simulation results, relative to the working geoh5.",
"value": "./simulations"
},
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
MatthieuCMira
left a comment
There was a problem hiding this comment.
few docstring comments.
anwswer copilote comments.
else, it's good!
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 63 out of 63 changed files in this pull request and generated 8 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
GEOPY-2833 - Regularization parameters of sub-drivers always over-written by joint parameters