Spaces:
Sleeping
Sleeping
Update data/climate_data.py
Browse files- data/climate_data.py +13 -3
data/climate_data.py
CHANGED
|
@@ -70,7 +70,7 @@ class ClimateLocation:
|
|
| 70 |
elif manual_data:
|
| 71 |
self.winter_design_temp = manual_data.get("winter_temp", -10.0)
|
| 72 |
self.wind_speed = manual_data.get("wind_speed", 5.0)
|
| 73 |
-
self.pressure = manual_data.get("pressure", 101325.0)
|
| 74 |
# Populate other fields from manual data
|
| 75 |
for key, value in kwargs.items():
|
| 76 |
setattr(self, key, value)
|
|
@@ -84,6 +84,8 @@ class ClimateLocation:
|
|
| 84 |
|
| 85 |
def adjust_pressure_for_altitude(self, elevation: float) -> float:
|
| 86 |
"""Calculate atmospheric pressure based on elevation."""
|
|
|
|
|
|
|
| 87 |
return 101325 * (1 - 2.25577e-5 * elevation)**5.25588
|
| 88 |
|
| 89 |
def to_dict(self) -> Dict[str, Any]:
|
|
@@ -401,6 +403,14 @@ class ClimateData:
|
|
| 401 |
step=0.1,
|
| 402 |
help="Enter the average wind speed in meters per second"
|
| 403 |
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 404 |
|
| 405 |
# Monthly Data with clear titles (no help added here)
|
| 406 |
monthly_temps = {}
|
|
@@ -432,13 +442,13 @@ class ClimateData:
|
|
| 432 |
manual_data = {
|
| 433 |
"winter_temp": winter_design_temp,
|
| 434 |
"wind_speed": wind_speed,
|
| 435 |
-
"pressure":
|
| 436 |
}
|
| 437 |
location = ClimateLocation(
|
| 438 |
manual_data=manual_data,
|
| 439 |
id=generated_id,
|
| 440 |
country=session_state.building_info["country"],
|
| 441 |
-
state_province="N/A",
|
| 442 |
city=session_state.building_info["city"],
|
| 443 |
latitude=latitude,
|
| 444 |
longitude=longitude,
|
|
|
|
| 70 |
elif manual_data:
|
| 71 |
self.winter_design_temp = manual_data.get("winter_temp", -10.0)
|
| 72 |
self.wind_speed = manual_data.get("wind_speed", 5.0)
|
| 73 |
+
self.pressure = manual_data.get("pressure", 101325.0) # Use provided pressure
|
| 74 |
# Populate other fields from manual data
|
| 75 |
for key, value in kwargs.items():
|
| 76 |
setattr(self, key, value)
|
|
|
|
| 84 |
|
| 85 |
def adjust_pressure_for_altitude(self, elevation: float) -> float:
|
| 86 |
"""Calculate atmospheric pressure based on elevation."""
|
| 87 |
+
if elevation is None:
|
| 88 |
+
return 101325.0 # Default sea-level pressure if elevation is None
|
| 89 |
return 101325 * (1 - 2.25577e-5 * elevation)**5.25588
|
| 90 |
|
| 91 |
def to_dict(self) -> Dict[str, Any]:
|
|
|
|
| 403 |
step=0.1,
|
| 404 |
help="Enter the average wind speed in meters per second"
|
| 405 |
)
|
| 406 |
+
pressure = st.number_input(
|
| 407 |
+
"Atmospheric Pressure (Pa)",
|
| 408 |
+
min_value=50000.0,
|
| 409 |
+
max_value=120000.0,
|
| 410 |
+
value=101325.0,
|
| 411 |
+
step=100.0,
|
| 412 |
+
help="Enter the average atmospheric pressure in Pascals (e.g., 101325 Pa for sea level)"
|
| 413 |
+
)
|
| 414 |
|
| 415 |
# Monthly Data with clear titles (no help added here)
|
| 416 |
monthly_temps = {}
|
|
|
|
| 442 |
manual_data = {
|
| 443 |
"winter_temp": winter_design_temp,
|
| 444 |
"wind_speed": wind_speed,
|
| 445 |
+
"pressure": pressure # Use user-provided pressure
|
| 446 |
}
|
| 447 |
location = ClimateLocation(
|
| 448 |
manual_data=manual_data,
|
| 449 |
id=generated_id,
|
| 450 |
country=session_state.building_info["country"],
|
| 451 |
+
state_province="N/A",
|
| 452 |
city=session_state.building_info["city"],
|
| 453 |
latitude=latitude,
|
| 454 |
longitude=longitude,
|