Skip to content

Commit 2cae8ad

Browse files
sync casing ID output params for AGS, SBT, and SUTRA
1 parent 9fd91d9 commit 2cae8ad

File tree

4 files changed

+20
-9
lines changed

4 files changed

+20
-9
lines changed

src/geophires_x/AGSWellBores.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1028,6 +1028,8 @@ def Calculate(self, model: Model) -> None:
10281028
# (b/c we are not generating electricity) = thermosiphon is happening!
10291029
self.PumpingPower.value = [max(x, 0.) for x in self.PumpingPower.value]
10301030

1031+
self._sync_output_params_from_input_params()
1032+
10311033
model.logger.info(f'complete {str(__class__)}: {sys._getframe().f_code.co_name}')
10321034

10331035
def __str__(self):

src/geophires_x/SBTWellbores.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,8 @@ def Calculate(self, model: Model) -> None:
286286
# (b/c we are not generating electricity) = thermosiphon is happening!
287287
self.PumpingPower.value = [max(x, 0.) for x in self.PumpingPower.value]
288288

289+
self._sync_output_params_from_input_params()
290+
289291
model.logger.info(f'complete {str(__class__)}: {sys._getframe().f_code.co_name}')
290292

291293
def CalculateNonverticalPressureDrop(self, model, value, time_max, al):

src/geophires_x/SUTRAWellBores.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -342,4 +342,6 @@ def Calculate(self, model: Model) -> None:
342342
/ model.surfaceplant.pump_efficiency.value
343343
)
344344

345-
model.logger.info("complete " + str(__class__) + ": " + sys._getframe().f_code.co_name)
345+
self._sync_output_params_from_input_params()
346+
347+
model.logger.info(f'complete {str(__class__)}: {sys._getframe().f_code.co_name}')

src/geophires_x/WellBores.py

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1554,14 +1554,19 @@ def Calculate(self, model: Model) -> None:
15541554
# negative pumping power values become zero (b/c we are not generating electricity)
15551555
self.PumpingPower.value = [0. if x < 0. else x for x in self.PumpingPower.value]
15561556

1557-
# Injection/production well casing ID have same value as inputs but exist as separate output parameters due to
1558-
# having a different display name.
1559-
self._set_output_param_from_input_param(self.injwelldiam, self.injection_well_casing_inner_diameter)
1560-
self._set_output_param_from_input_param(self.prodwelldiam, self.production_well_casing_inner_diameter)
1557+
self._sync_output_params_from_input_params()
15611558

15621559
model.logger.info(f'complete {self.__class__.__name__}: {__name__}')
15631560

1564-
# noinspection PyMethodMayBeStatic
1565-
def _set_output_param_from_input_param(self, input_param: Parameter, output_param: OutputParameter) -> None:
1566-
output_param.value = input_param.value
1567-
output_param.CurrentUnits = input_param.CurrentUnits
1561+
def _sync_output_params_from_input_params(self) -> None:
1562+
"""
1563+
Handles setting output parameters whose values are based on 1:1 corresponding input parameters.
1564+
"""
1565+
1566+
def _set_output_param_from_input_param(input_param: Parameter, output_param: OutputParameter) -> None:
1567+
output_param.value = input_param.quantity().to(output_param.CurrentUnits).magnitude
1568+
1569+
# Injection/production well casing ID have same value as inputs but exist as separate output parameters due to
1570+
# having a different display name.
1571+
_set_output_param_from_input_param(self.injwelldiam, self.injection_well_casing_inner_diameter)
1572+
_set_output_param_from_input_param(self.prodwelldiam, self.production_well_casing_inner_diameter)

0 commit comments

Comments
 (0)