mabuseif commited on
Commit
e163fed
·
verified ·
1 Parent(s): 3a5a6a5

Update data/climate_data.py

Browse files
Files changed (1) hide show
  1. 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": ClimateLocation.adjust_pressure_for_altitude(None, elevation)
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", # Default since input removed
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,