Skip to content

GEOPY-2833: Regularization parameters of sub-drivers always over-written by joint parameters#391

Open
domfournier wants to merge 26 commits intorelease/GA_4.8from
GEOPY-2833
Open

GEOPY-2833: Regularization parameters of sub-drivers always over-written by joint parameters#391
domfournier wants to merge 26 commits intorelease/GA_4.8from
GEOPY-2833

Conversation

@domfournier
Copy link
Copy Markdown
Collaborator

@domfournier domfournier commented Apr 27, 2026

GEOPY-2833 - Regularization parameters of sub-drivers always over-written by joint parameters

Copilot AI review requested due to automatic review settings April 27, 2026 22:41
@github-actions github-actions Bot changed the title GEOPY-2833 GEOPY-2833: Regularization parameters of sub-drivers always over-written by joint parameters Apr 27, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 InputFile usage with BaseUIJson / SimPEGDriversUIJson across tests and runtime utilities/drivers.
  • Add/standardize icon metadata on many Options classes and adjust UI JSON assets (notably tile_spatial legacy 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 use tooltip. If the UI renderer expects tooltip, these entries will be ignored and tooltips won't show. Rename tootip to tooltip for 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.

Comment thread simpeg_drivers/driver.py
Comment thread simpeg_drivers/plate_simulation/sweep/options.py
Copy link
Copy Markdown
Contributor

@MatthieuCMira MatthieuCMira left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

few docstring comments.
anwswer copilote comments.
else, it's good!

Comment thread simpeg_drivers/electricals/base_2d.py Outdated
Comment thread simpeg_drivers/plate_simulation/sweep/options.py
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Comment thread simpeg_drivers/plate_simulation/match/driver.py
Comment thread simpeg_drivers/driver.py
Comment thread simpeg_drivers/driver.py
Comment thread simpeg_drivers/driver.py Outdated
Comment thread simpeg_drivers/options.py
Comment thread simpeg_drivers/uijson.py
Comment thread simpeg_drivers-assets/uijson/plate_sweep.ui.json Outdated
Comment thread simpeg_drivers/electricals/base_2d.py
Copy link
Copy Markdown
Contributor

@MatthieuCMira MatthieuCMira left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok good to go.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants