diff --git a/agenda/trip.py b/agenda/trip.py index 90e9997..b1cf69f 100644 --- a/agenda/trip.py +++ b/agenda/trip.py @@ -50,8 +50,14 @@ def load_trains( if route_distances: travel.add_leg_route_distance(leg, route_distances) + # Calculate CO2 emissions for train leg (0.037 kg CO2e per passenger per km) + if "distance" in leg: + leg["co2_kg"] = leg["distance"] * 0.037 + if all("distance" in leg for leg in train["legs"]): train["distance"] = sum(leg["distance"] for leg in train["legs"]) + # Calculate total CO2 for entire train journey + train["co2_kg"] = sum(leg["co2_kg"] for leg in train["legs"]) return trains @@ -73,6 +79,10 @@ def load_ferries( if route_distances: travel.add_leg_route_distance(item, route_distances) + # Calculate CO2 emissions for ferry (0.02254 kg CO2e per passenger per km) + if "distance" in item: + item["co2_kg"] = item["distance"] * 0.02254 + geojson = from_terminal["routes"].get(item["to"]) if geojson: item["geojson_filename"] = geojson