|
2 | 2 | import numpy as np
|
3 | 3 | from pint.facets.plain import PlainQuantity
|
4 | 4 |
|
5 |
| -from .Parameter import floatParameter, intParameter, boolParameter, OutputParameter, ReadParameter |
| 5 | +from .Parameter import floatParameter, intParameter, boolParameter, OutputParameter, ReadParameter, \ |
| 6 | + coerce_int_params_to_enum_values |
6 | 7 | from geophires_x.GeoPHIRESUtils import vapor_pressure_water_kPa, quantity, static_pressure_MPa
|
7 | 8 | from geophires_x.GeoPHIRESUtils import density_water_kg_per_m3
|
8 | 9 | from geophires_x.GeoPHIRESUtils import viscosity_water_Pa_sec
|
@@ -917,11 +918,13 @@ def __init__(self, model: Model):
|
917 | 918 |
|
918 | 919 | self.Fluid = self.ParameterDict[self.Fluid.Name] = intParameter(
|
919 | 920 | "Heat Transfer Fluid",
|
920 |
| - DefaultValue=WorkingFluid.WATER, |
| 921 | + DefaultValue=WorkingFluid.WATER.int_value, |
921 | 922 | AllowableRange=[1, 2],
|
| 923 | + ValuesEnum=WorkingFluid, |
922 | 924 | UnitType=Units.NONE,
|
923 | 925 | Required=True,
|
924 |
| - ErrMessage="assume default Heat transfer fluid is water (1)" |
| 926 | + ErrMessage="assume default Heat transfer fluid is water (1)", |
| 927 | + ToolTipText='; '.join([f'{it.int_value}: {it.value}' for it in WorkingFluid]) |
925 | 928 | )
|
926 | 929 |
|
927 | 930 | # Input data for subsurface condition
|
@@ -1136,15 +1139,13 @@ def read_parameters(self, model: Model) -> None:
|
1136 | 1139 |
|
1137 | 1140 | # handle special cases
|
1138 | 1141 | if ParameterToModify.Name == "Heat Transfer Fluid":
|
1139 |
| - if ParameterReadIn.sValue == str(1): |
1140 |
| - self.Fluid.value = WorkingFluid.WATER |
1141 |
| - else: |
1142 |
| - self.Fluid.value = WorkingFluid.SCO2 |
1143 |
| - # IsAGS is false by default - if it equal 1, then it is true |
| 1142 | + self.Fluid.value = WorkingFluid.from_input_string(ParameterReadIn.sValue) |
| 1143 | + |
| 1144 | + # IsAGS is false by default - if it equals 1, then it is true |
1144 | 1145 | if ParameterToModify.Name == "Ramey Production Wellbore Model":
|
1145 | 1146 | if ParameterReadIn.sValue == '0':
|
1146 | 1147 | ParameterToModify.value = False
|
1147 |
| - # Ramey Production Wellbore Model is true by default - if it equal 0, then it is false |
| 1148 | + # Ramey Production Wellbore Model is true by default - if it equals 0, then it is false |
1148 | 1149 | elif ParameterToModify.Name == "Is AGS":
|
1149 | 1150 | if ParameterReadIn.sValue == '1':
|
1150 | 1151 | ParameterToModify.value = True
|
@@ -1180,6 +1181,9 @@ def read_parameters(self, model: Model) -> None:
|
1180 | 1181 | raise ValueError(f'Invalid Configuration: {self.Configuration.value}')
|
1181 | 1182 | else:
|
1182 | 1183 | model.logger.info("No parameters read because no content provided")
|
| 1184 | + |
| 1185 | + coerce_int_params_to_enum_values(self.ParameterDict) |
| 1186 | + |
1183 | 1187 | model.logger.info(f"read parameters complete {self.__class__.__name__}: {__name__}")
|
1184 | 1188 |
|
1185 | 1189 | def Calculate(self, model: Model) -> None:
|
|
0 commit comments