Spaces:
Sleeping
Sleeping
Commit
·
cb3cb82
1
Parent(s):
194c559
test5
Browse files
app.py
CHANGED
@@ -42,17 +42,6 @@ def calculate_lighting_consumption(occupancy_1br: float, occupancy_2br: float) -
|
|
42 |
) * 6 # 6 hours per day
|
43 |
|
44 |
|
45 |
-
def calculate_appliance_consumption(
|
46 |
-
occupancy_1br: float, occupancy_2br: float
|
47 |
-
) -> float:
|
48 |
-
"""Calculate daily appliance consumption"""
|
49 |
-
return (
|
50 |
-
occupancy_1br * ONE_BR_UNITS * (250 - (LIGHTS_1BR * LIGHT_POWER * 6 / 1000))
|
51 |
-
) + (
|
52 |
-
occupancy_2br * TWO_BR_UNITS * (400 - (LIGHTS_2BR * LIGHT_POWER * 6 / 1000))
|
53 |
-
) # Daily kWh
|
54 |
-
|
55 |
-
|
56 |
def total_consumption(
|
57 |
occupancy_1br: float, occupancy_2br: float, common_area: float
|
58 |
) -> float:
|
@@ -75,7 +64,9 @@ def battery_storage(batteries: int) -> float:
|
|
75 |
return batteries * BATTERY_CAPACITY * BATTERY_VOLTAGE * 0.8 / 1000 # kWh
|
76 |
|
77 |
|
78 |
-
def financial_analysis(
|
|
|
|
|
79 |
"""Detailed financial calculations"""
|
80 |
solar_used = min(production, consumption)
|
81 |
surplus = max(0, production - consumption)
|
@@ -89,7 +80,7 @@ def financial_analysis(consumption: float, production: float, storage: float) ->
|
|
89 |
grid_purchased -= grid_offset
|
90 |
|
91 |
monthly_savings = (
|
92 |
-
(consumption * st.session_state.grid_price / 100)
|
93 |
- (grid_purchased * st.session_state.grid_price / 100)
|
94 |
+ feed_in_revenue
|
95 |
)
|
@@ -269,7 +260,9 @@ def main():
|
|
269 |
consumption = total_consumption(params["1br"], params["2br"], params["common"])
|
270 |
production = solar_production(st.session_state.solar_panels)
|
271 |
storage = battery_storage(st.session_state.batteries)
|
272 |
-
financials = financial_analysis(
|
|
|
|
|
273 |
analysis_data.append({"Scenario": name, **financials})
|
274 |
|
275 |
df = pd.DataFrame(analysis_data)
|
|
|
42 |
) * 6 # 6 hours per day
|
43 |
|
44 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
def total_consumption(
|
46 |
occupancy_1br: float, occupancy_2br: float, common_area: float
|
47 |
) -> float:
|
|
|
64 |
return batteries * BATTERY_CAPACITY * BATTERY_VOLTAGE * 0.8 / 1000 # kWh
|
65 |
|
66 |
|
67 |
+
def financial_analysis(
|
68 |
+
consumption: float, common_area: float, production: float, storage: float
|
69 |
+
) -> Dict:
|
70 |
"""Detailed financial calculations"""
|
71 |
solar_used = min(production, consumption)
|
72 |
surplus = max(0, production - consumption)
|
|
|
80 |
grid_purchased -= grid_offset
|
81 |
|
82 |
monthly_savings = (
|
83 |
+
((consumption - common_area) * st.session_state.grid_price / 100)
|
84 |
- (grid_purchased * st.session_state.grid_price / 100)
|
85 |
+ feed_in_revenue
|
86 |
)
|
|
|
260 |
consumption = total_consumption(params["1br"], params["2br"], params["common"])
|
261 |
production = solar_production(st.session_state.solar_panels)
|
262 |
storage = battery_storage(st.session_state.batteries)
|
263 |
+
financials = financial_analysis(
|
264 |
+
consumption, common_area_consumption * 30, production, storage
|
265 |
+
)
|
266 |
analysis_data.append({"Scenario": name, **financials})
|
267 |
|
268 |
df = pd.DataFrame(analysis_data)
|