Skip to content

Commit 36f7e3d

Browse files
authored
Rename Restart run mda gui label to Select prior
* Rename mda restart labels * Update docs to reflect gui label change * Update codedoc to reflect checkbox label change * Update vars to reflect gui label change * Update prior runs list label
1 parent 7c75f0c commit 36f7e3d

17 files changed

Lines changed: 87 additions & 75 deletions

File tree

docs/ert/getting_started/howto/esmda_restart.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ One solution is to restart from ``default_2`` which is straightforward in ERT.
1313

1414
**Steps to Restart from `default_2`:**
1515

16-
1. Check the "Restart run" checkbox.
17-
2. Use the "Restart from" drop-down list to select the ensemble you wish to restart from.
16+
1. Check the "Select prior" checkbox.
17+
2. Use the "Run from" drop-down list to select the ensemble you wish to restart from.
1818
In this example, you'll pick ``default_2``.
1919
3. Click "Run Experiment".
2020
This creates a new ensemble which by default is called ``default_2_3``.

docs/ert/getting_started/updating_parameters/update_parameters.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ Run data assimilation
5050
=====================
5151

5252
Because we do not have any ensembles with parameters and no responses, the `Ensemble` drop down in `Evaluate ensemble` is
53-
now empty. To start data assimilation, navigate to the `Multiple Data Assimilation` experiment mode, and check: `Restart run`,
54-
then select `prior` in the `Restart from` dropdown and start the experiment. This means that we do not have to rerun the
53+
now empty. To start data assimilation, navigate to the `Multiple Data Assimilation` experiment mode, and check: `Select prior`,
54+
then select `prior` in the `Run from` dropdown and start the experiment. This means that we do not have to rerun the
5555
prior, and we are able to evaluate coverage of the prior without running multiple iterations of ES-MDA first.
5656

5757
.. image:: fig/restart_es_mda.gif

src/ert/gui/experiments/multiple_data_assimilation_panel.py

Lines changed: 21 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ class Arguments:
6262
target_ensemble: str
6363
realizations: str
6464
weights: str
65-
restart_run: bool
65+
select_prior: bool
6666
prior_ensemble_id: str # UUID not serializable in json
6767
experiment_name: str
6868

@@ -195,19 +195,21 @@ def get_ensembles_of_ensemble_experiment_type(
195195
layout.addRow("Active realizations:", self._active_realizations_field)
196196
self._active_realizations_field.setObjectName("active_realizations_box")
197197

198-
self._restart_box = QCheckBox("")
199-
self._restart_box.setObjectName("restart_checkbox_esmda")
200-
self._restart_box.toggled.connect(self.restart_run_toggled)
201-
self._restart_box.toggled.connect(self.update_experiment_edit)
198+
self._select_prior_box = QCheckBox("")
199+
self._select_prior_box.setObjectName("select_prior_checkbox_esmda")
200+
self._select_prior_box.toggled.connect(self.select_prior_toggled)
201+
self._select_prior_box.toggled.connect(self.update_experiment_edit)
202202

203-
self._restart_box.setEnabled(bool(self._ensemble_selector._ensemble_list()))
203+
self._select_prior_box.setEnabled(
204+
bool(self._ensemble_selector._ensemble_list())
205+
)
204206
self._ensemble_selector.setEnabled(False)
205-
layout.addRow("Restart run:", self._restart_box)
207+
layout.addRow("Select prior:", self._select_prior_box)
206208

207-
self._ensemble_selector.ensemble_populated.connect(self.restart_run_toggled)
209+
self._ensemble_selector.ensemble_populated.connect(self.select_prior_toggled)
208210
self._ensemble_selector.currentIndexChanged.connect(self._realizations_from_fs)
209211
self._ensemble_selector.currentIndexChanged.connect(self.update_experiment_name)
210-
layout.addRow("Restart from:", self._ensemble_selector)
212+
layout.addRow("Run from:", self._ensemble_selector)
211213

212214
self._experiment_name_field.getValidationSupport().validationChanged.connect(
213215
self.experiment_configuration_changed
@@ -286,29 +288,31 @@ def update_experiment_edit(self, checked: bool) -> None:
286288

287289
def _evaluate_weights_box_enabled(self) -> None:
288290
self._relative_iteration_weights_box.setEnabled(
289-
not self._restart_box.isChecked()
291+
not self._select_prior_box.isChecked()
290292
or (
291293
self._ensemble_selector.selected_ensemble is not None
292294
and not self._ensemble_selector.selected_ensemble.relative_weights
293295
)
294296
)
295297

296-
def restart_run_toggled(self) -> None:
297-
self._restart_box.setEnabled(bool(self._ensemble_selector._ensemble_list()))
298-
self._ensemble_selector.setEnabled(self._restart_box.isChecked())
298+
def select_prior_toggled(self) -> None:
299+
self._select_prior_box.setEnabled(
300+
bool(self._ensemble_selector._ensemble_list())
301+
)
302+
self._ensemble_selector.setEnabled(self._select_prior_box.isChecked())
299303

300304
self._relative_iteration_weights_box.setText(
301305
(
302306
self._ensemble_selector.selected_ensemble is not None
303307
and self._ensemble_selector.selected_ensemble.relative_weights
304308
)
305309
or self._configured_weights
306-
if self._restart_box.isChecked()
310+
if self._select_prior_box.isChecked()
307311
else self._configured_weights
308312
)
309313
self._weights_source = self._relative_iteration_weights_box.text()
310314
self._update_weights_mismatch_warning()
311-
if self._restart_box.isChecked():
315+
if self._select_prior_box.isChecked():
312316
self._active_realizations_field.setValidator(
313317
self._previous_ensemble_realizations_validator
314318
)
@@ -418,11 +422,11 @@ def get_experiment_arguments(self) -> Arguments:
418422
target_ensemble=self._target_ensemble_format_model.getValue(), # type: ignore
419423
realizations=self._active_realizations_field.text(),
420424
weights=self.weights,
421-
restart_run=self._restart_box.isChecked(),
425+
select_prior=self._select_prior_box.isChecked(),
422426
prior_ensemble_id=(
423427
str(self._ensemble_selector.selected_ensemble.id)
424428
if self._ensemble_selector.selected_ensemble is not None
425-
and self._restart_box.isChecked()
429+
and self._select_prior_box.isChecked()
426430
else ""
427431
),
428432
experiment_name=self._experiment_name_field.get_text,

src/ert/run_models/model_factory.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -463,18 +463,18 @@ def _determine_restart_info(args: Namespace) -> tuple[bool, str | None]:
463463
464464
Returns
465465
-------
466-
A tuple containing the restart_run flag and the ensemble
466+
A tuple containing the select_prior flag and the ensemble
467467
to run from.
468468
"""
469469
if hasattr(args, "restart_ensemble_id"):
470470
# When running from CLI
471-
restart_run = args.restart_ensemble_id is not None
471+
select_prior = args.restart_ensemble_id is not None
472472
prior_ensemble = args.restart_ensemble_id or ""
473473
else:
474474
# When running from GUI
475-
restart_run = args.restart_run
475+
select_prior = args.select_prior
476476
prior_ensemble = args.prior_ensemble_id
477-
return restart_run, prior_ensemble
477+
return select_prior, prior_ensemble
478478

479479

480480
def _setup_multiple_data_assimilation(
@@ -483,7 +483,7 @@ def _setup_multiple_data_assimilation(
483483
update_settings: ObservationSettings,
484484
status_queue: SimpleQueue[StatusEvents],
485485
) -> MultipleDataAssimilation:
486-
restart_run, prior_ensemble = _determine_restart_info(args)
486+
select_prior, prior_ensemble = _determine_restart_info(args)
487487
active_realizations = _get_and_validate_active_realizations_list(args, config)
488488
validate_minimum_realizations(config, active_realizations)
489489
if sum(active_realizations) < 2:
@@ -492,7 +492,7 @@ def _setup_multiple_data_assimilation(
492492
)
493493

494494
parameter_configs, design_matrix = _merge_parameters(
495-
design_matrix=None if restart_run else config.analysis_config.design_matrix,
495+
design_matrix=None if select_prior else config.analysis_config.design_matrix,
496496
parameter_configs=config.ensemble_config.parameter_configuration,
497497
require_updateable_param=True,
498498
)
@@ -502,7 +502,7 @@ def _setup_multiple_data_assimilation(
502502
active_realizations=active_realizations,
503503
target_ensemble=_iterative_ensemble_format(args),
504504
arg_weights=args.weights,
505-
restart_run=restart_run,
505+
select_prior=select_prior,
506506
prior_ensemble_id=prior_ensemble,
507507
minimum_required_realizations=config.analysis_config.minimum_required_realizations,
508508
experiment_name=args.experiment_name,

src/ert/run_models/multiple_data_assimilation.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ def model_post_init(self, ctx: Any) -> None:
4949
self._parsed_weights = self.parse_weights(self.analysis_settings.weights)
5050
start_iteration = 0
5151
total_iterations = len(self._parsed_weights) + 1
52-
if self.restart_run:
52+
if self.select_prior:
5353
if not self.prior_ensemble_id:
5454
raise ValueError("For restart run, prior ensemble must be set")
5555
start_iteration = (
@@ -93,7 +93,7 @@ def run_experiment(
9393
raise ErtRunError("ESMDA does not support restart")
9494

9595
target_experiment = None
96-
if self.restart_run:
96+
if self.select_prior:
9797
id_ = self.prior_ensemble_id
9898
assert id_ is not None
9999

src/ert/run_models/run_model_configs.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -320,7 +320,7 @@ class MultipleDataAssimilationConfig(
320320
InitialEnsembleRunModelConfig, UpdateRunModelConfig
321321
):
322322
experiment_type: ExperimentType = ExperimentType.ES_MDA
323-
restart_run: bool
323+
select_prior: bool
324324
prior_ensemble_id: str | None
325325
arg_weights: str | None = Field(default=None, exclude=True)
326326

@@ -337,7 +337,7 @@ def to_experiment_config(self) -> ExperimentConfig:
337337
**self._initial_ensemble_experiment_config(),
338338
**self._update_experiment_config(),
339339
**self._common_fields(),
340-
"restart_run": self.restart_run,
340+
"select_prior": self.select_prior,
341341
"prior_ensemble_id": self.prior_ensemble_id,
342342
"experiment_type": ExperimentType.ES_MDA,
343343
}

src/ert/storage/local_experiment.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ class ExperimentConfig(TypedDict, total=False):
117117
ensemble_id: str
118118

119119
# ESMDA
120-
restart_run: bool
120+
select_prior: bool
121121
prior_ensemble_id: str | None
122122

123123
# Everest

tests/ert/ui_tests/cli/test_restarting_esmda.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,7 @@ def _build_esmda_restart_model(prior_ensemble_id: str):
225225
realizations=None,
226226
target_ensemble="iter-<ITER>",
227227
weights="1,1",
228-
restart_run=True,
228+
select_prior=True,
229229
prior_ensemble_id=prior_ensemble_id,
230230
experiment_name="restart-experiment",
231231
),

tests/ert/ui_tests/gui/test_main_window.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -736,7 +736,7 @@ def right_click_plotter_button() -> None:
736736
gui.close()
737737

738738

739-
def test_that_es_mda_restart_run_box_is_disabled_when_there_are_no_valid_cases(
739+
def test_that_es_mda_select_prior_box_is_disabled_when_there_are_no_valid_cases(
740740
qtbot, opened_main_window_minimal_realizations, run_experiment
741741
):
742742
gui = opened_main_window_minimal_realizations
@@ -751,7 +751,9 @@ def test_that_es_mda_restart_run_box_is_disabled_when_there_are_no_valid_cases(
751751
es_mda_panel = get_child(gui, QWidget, name="ES_MDA_panel")
752752
assert es_mda_panel
753753

754-
restart_button = get_child(es_mda_panel, QCheckBox, name="restart_checkbox_esmda")
754+
restart_button = get_child(
755+
es_mda_panel, QCheckBox, name="select_prior_checkbox_esmda"
756+
)
755757
ensemble_selector = get_child(es_mda_panel, EnsembleSelector)
756758

757759
assert restart_button

tests/ert/ui_tests/gui/test_restart_esmda.py

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,12 @@ def test_restart_esmda(ensemble_experiment_has_run_no_failure, qtbot):
2121

2222
es_mda_panel = gui.findChild(QWidget, name="ES_MDA_panel")
2323
assert es_mda_panel
24-
restart_checkbox = es_mda_panel.findChild(QCheckBox, name="restart_checkbox_esmda")
25-
assert restart_checkbox
26-
restart_checkbox.click()
27-
assert restart_checkbox.isChecked()
24+
select_prior_checkbox = es_mda_panel.findChild(
25+
QCheckBox, name="select_prior_checkbox_esmda"
26+
)
27+
assert select_prior_checkbox
28+
select_prior_checkbox.click()
29+
assert select_prior_checkbox.isChecked()
2830

2931
es_mda_panel._ensemble_selector.setCurrentText("iter-0")
3032
assert es_mda_panel._ensemble_selector.selected_ensemble.name == "iter-0"
@@ -72,12 +74,14 @@ def test_that_esmda_active_realizations_are_set_only_when_restart_is_checked(
7274
active_reals = es_mda_panel.findChild(StringBox, "active_realizations_box")
7375
assert active_reals.text() == "0-9"
7476

75-
restart_checkbox = es_mda_panel.findChild(QCheckBox, name="restart_checkbox_esmda")
76-
assert restart_checkbox
77-
assert not restart_checkbox.isChecked()
78-
restart_checkbox.click()
77+
select_prior_checkbox = es_mda_panel.findChild(
78+
QCheckBox, name="select_prior_checkbox_esmda"
79+
)
80+
assert select_prior_checkbox
81+
assert not select_prior_checkbox.isChecked()
82+
select_prior_checkbox.click()
7983
assert active_reals.text() == "0-1"
80-
restart_checkbox.click()
84+
select_prior_checkbox.click()
8185
assert active_reals.text() == "0-9"
8286

8387

@@ -117,11 +121,13 @@ def test_custom_weights_stored_and_retrieved_from_metadata_esmda(
117121
== "Total progress 100% — Experiment completed."
118122
)
119123
assert wsb.text() == default_weights
120-
restart_checkbox = es_mda_panel.findChild(QCheckBox, name="restart_checkbox_esmda")
121-
assert restart_checkbox
122-
assert not restart_checkbox.isChecked()
123-
restart_checkbox.click()
124+
select_prior_checkbox = es_mda_panel.findChild(
125+
QCheckBox, name="select_prior_checkbox_esmda"
126+
)
127+
assert select_prior_checkbox
128+
assert not select_prior_checkbox.isChecked()
129+
select_prior_checkbox.click()
124130
# selecting restart will trigger reading of metadata.json containing custom weights
125-
assert restart_checkbox.isChecked()
131+
assert select_prior_checkbox.isChecked()
126132
assert not wsb.isEnabled()
127133
assert wsb.text() == custom_weights

0 commit comments

Comments
 (0)