Commit 0aba942b authored by Eric Duminil's avatar Eric Duminil
Browse files

Adding households and people

parent d8b6c65f
......@@ -31,6 +31,8 @@ class EnergyGridResults(SimStadtResults):
"pv_production": np.sum([b["pv_production"] for b in buildings], axis=0),
})
df.attrs["number_of_buildings"] = len(buildings)
df.attrs["number_of_households"] = sum(b["number_of_households"] for b in buildings)
df.attrs["number_of_people"] = sum(sum(b["people_in_units"]) for b in buildings)
df.attrs["total_heated_area"] = sum(b["heated_area"] for b in buildings)
return df
......@@ -42,6 +44,8 @@ class EnergyGridResults(SimStadtResults):
total_elec_kwh = df["electricity_demand"].sum()
return [
KPI("Number of buildings", df.attrs["number_of_buildings"], precision=0),
KPI("Number of households", df.attrs["number_of_households"], precision=0),
KPI("Number of people", df.attrs["number_of_people"], precision=0),
KPI("Total heated area", total_heated_area, "m²", precision=0),
KPI("Total electricity demand", total_elec_kwh / 1000, "MWh / a", precision=1),
KPI("Specific electricity demand", total_elec_kwh / total_heated_area, "kWh / (m² · a)", precision=1),
......
......@@ -653,6 +653,10 @@ def test_energy_grid_kpis(energy_grid_results):
kpis = kpis_by_name(energy_grid_results)
assert kpis["Number of buildings"].value == 3
assert kpis["Number of buildings"].unit is None
assert kpis["Number of households"].value == 8
assert kpis["Number of households"].unit is None
assert kpis["Number of people"].value == 13
assert kpis["Number of people"].unit is None
assert kpis["Total heated area"].value == pytest.approx(1198.1, abs=0.1)
assert kpis["Total heated area"].unit == "m²"
assert kpis["Total electricity demand"].value == pytest.approx(17.0, abs=0.1)
......@@ -667,7 +671,7 @@ def test_energy_grid_kpis(energy_grid_results):
assert kpis["Total PV production"].unit == "MWh / a"
assert kpis["Average temperature"].value == pytest.approx(9.95, abs=0.05)
assert kpis["Average temperature"].unit == "°C"
assert len(kpis) == 8
assert len(kpis) == 10
# ---------------------------------------------------------------------------
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment