Skip to content

Commit 39170cf

Browse files
committed
Revert "Clean up tdem options"
This reverts commit e8eef7a.
1 parent 1dc21d3 commit 39170cf

2 files changed

Lines changed: 141 additions & 14 deletions

File tree

Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
# '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
2+
# Copyright (c) 2025 Mira Geoscience Ltd. '
3+
# '
4+
# This file is part of simpeg-drivers package. '
5+
# '
6+
# simpeg-drivers is distributed under the terms and conditions of the MIT License '
7+
# (see LICENSE file at the root of this source code package). '
8+
# '
9+
# '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
10+
11+
12+
from __future__ import annotations
13+
14+
from geoh5py.objects import AirborneTEMReceivers, LargeLoopGroundTEMReceivers
15+
16+
import simpeg_drivers
17+
from simpeg_drivers import default_ui_json as base_default_ui_json
18+
from simpeg_drivers.constants import validations as base_validations
19+
20+
21+
inversion_defaults = {
22+
"version": simpeg_drivers.__version__,
23+
"title": "Time-domain EM (TEM) Inversion",
24+
"icon": "surveyairborneem",
25+
"documentation": "https://mirageoscience-simpeg-drivers.readthedocs-hosted.com/en/stable/intro.html",
26+
"conda_environment": "simpeg_drivers",
27+
"run_command": "simpeg_drivers.driver",
28+
"geoh5": None, # Must remain at top of list for notebook app initialization
29+
"monitoring_directory": None,
30+
"workspace_geoh5": None,
31+
"inversion_type": "tdem",
32+
"forward_only": False,
33+
"data_object": None,
34+
"data_units": "dB/dt (T/s)",
35+
"z_channel": None,
36+
"z_uncertainty": None,
37+
"x_channel": None,
38+
"x_uncertainty": None,
39+
"y_channel": None,
40+
"y_uncertainty": None,
41+
"mesh": None,
42+
"model_type": "Conductivity (S/m)",
43+
"starting_model": 1e-3,
44+
"reference_model": None,
45+
"lower_bound": None,
46+
"upper_bound": None,
47+
"topography_object": None,
48+
"topography": None,
49+
"active_model": None,
50+
"output_tile_files": False,
51+
"inversion_style": "voxel",
52+
"alpha_s": 1.0,
53+
"length_scale_x": 1.0,
54+
"length_scale_y": 1.0,
55+
"length_scale_z": 1.0,
56+
"s_norm": 0.0,
57+
"x_norm": 2.0,
58+
"y_norm": 2.0,
59+
"z_norm": 2.0,
60+
"gradient_type": "total",
61+
"max_irls_iterations": 25,
62+
"starting_chi_factor": 1.0,
63+
"beta_tol": 0.5,
64+
"prctile": 95,
65+
"chi_factor": 1.0,
66+
"auto_scale_misfits": True,
67+
"initial_beta_ratio": 1e2,
68+
"initial_beta": None,
69+
"coolingFactor": 2.0,
70+
"coolingRate": 2,
71+
"max_global_iterations": 50,
72+
"max_line_search_iterations": 20,
73+
"max_cg_iterations": 30,
74+
"tol_cg": 1e-4,
75+
"f_min_change": 0.01,
76+
"sens_wts_threshold": 1.0,
77+
"every_iteration_bool": True,
78+
"save_sensitivities": False,
79+
"parallelized": True,
80+
"n_cpu": None,
81+
"tile_spatial": 1,
82+
"store_sensitivities": "ram",
83+
"max_ram": None,
84+
"max_chunk_size": 128,
85+
"chunk_by_rows": True,
86+
"out_group": None,
87+
"generate_sweep": False,
88+
"distributed_workers": None,
89+
}
90+
forward_defaults = {
91+
"version": simpeg_drivers.__version__,
92+
"title": "Time-domain EM (TEM) Forward",
93+
"icon": "surveyairborneem",
94+
"documentation": "https://mirageoscience-simpeg-drivers.readthedocs-hosted.com/en/stable/intro.html",
95+
"conda_environment": "simpeg_drivers",
96+
"run_command": "simpeg_drivers.driver",
97+
"geoh5": None, # Must remain at top of list for notebook app initialization
98+
"monitoring_directory": None,
99+
"workspace_geoh5": None,
100+
"inversion_type": "tdem",
101+
"forward_only": True,
102+
"data_object": None,
103+
"data_units": "dB/dt (T/s)",
104+
"z_channel_bool": True,
105+
"x_channel_bool": True,
106+
"y_channel_bool": True,
107+
"mesh": None,
108+
"model_type": "Conductivity (S/m)",
109+
"starting_model": 1e-3,
110+
"topography_object": None,
111+
"topography": None,
112+
"active_model": None,
113+
"output_tile_files": False,
114+
"parallelized": True,
115+
"n_cpu": None,
116+
"tile_spatial": 1,
117+
"max_chunk_size": 128,
118+
"chunk_by_rows": True,
119+
"out_group": None,
120+
"generate_sweep": False,
121+
"distributed_workers": None,
122+
}

simpeg_drivers/electromagnetics/time_domain/params.py

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -35,23 +35,27 @@ class TDEMForwardOptions(EMDataMixin, BaseForwardOptions):
3535
Time Domain Electromagnetic forward options.
3636
3737
:param z_channel_bool: Z-component data channel boolean.
38+
:param z_channel_uncertainty: Z-component data channel uncertainty.
3839
:param x_channel_bool: X-component data channel boolean.
40+
:param x_channel_uncertainty: X-component data channel uncertainty.
3941
:param y_channel_bool: Y-component data channel boolean.
42+
:param y_channel_uncertainty: Y-component data channel uncertainty.
4043
:param model_type: Specify whether the models are provided in resistivity or conductivity.
4144
:param data_units: Units for the TEM data
4245
"""
4346

44-
data_object: Receivers
45-
data_units: str = "dB/dt (T/s)"
47+
name: ClassVar[str] = "Time Domain Electromagnetics Forward"
48+
title: ClassVar[str] = "Time-domain EM (TEM) Forward"
4649
default_ui_json: ClassVar[Path] = assets_path() / "uijson/tdem_forward.ui.json"
50+
4751
inversion_type: str = "tdem"
48-
model_type: str = "Conductivity (S/m)"
49-
name: ClassVar[str] = "Time Domain Electromagnetics Forward"
5052
physical_property: str = "conductivity"
51-
title: ClassVar[str] = "Time-domain EM (TEM) Forward"
52-
x_channel_bool: bool | None = None
53-
y_channel_bool: bool | None = None
53+
54+
data_object: Receivers
5455
z_channel_bool: bool | None = None
56+
x_channel_bool: bool | None = None
57+
data_units: str = "dB/dt (T/s)"
58+
model_type: str = "Conductivity (S/m)"
5559

5660
@property
5761
def unit_conversion(self):
@@ -78,21 +82,22 @@ class TDEMInversionOptions(EMDataMixin, BaseInversionOptions):
7882
:param data_units: Units for the TEM data
7983
"""
8084

81-
data_object: Receivers
82-
data_units: str = "dB/dt (T/s)"
85+
name: ClassVar[str] = "Time Domain Electromagnetics Inversion"
86+
title: ClassVar[str] = "Time-domain EM (TEM) Inversion"
8387
default_ui_json: ClassVar[Path] = assets_path() / "uijson/tdem_inversion.ui.json"
88+
8489
inversion_type: str = "tdem"
85-
model_type: str = "Conductivity (S/m)"
86-
name: ClassVar[str] = "Time Domain Electromagnetics Inversion"
8790
physical_property: str = "conductivity"
88-
title: ClassVar[str] = "Time-domain EM (TEM) Inversion"
8991

92+
data_object: Receivers
93+
z_channel: PropertyGroup | None = None
94+
z_uncertainty: PropertyGroup | None = None
9095
x_channel: PropertyGroup | None = None
9196
x_uncertainty: PropertyGroup | None = None
9297
y_channel: PropertyGroup | None = None
9398
y_uncertainty: PropertyGroup | None = None
94-
z_channel: PropertyGroup | None = None
95-
z_uncertainty: PropertyGroup | None = None
99+
data_units: str = "dB/dt (T/s)"
100+
model_type: str = "Conductivity (S/m)"
96101

97102
@property
98103
def unit_conversion(self):

0 commit comments

Comments
 (0)