Skip to content

Instantly share code, notes, and snippets.

@yunruse
Created July 2, 2023 18:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save yunruse/fc8be1045bf5da7105d02ac24db3b586 to your computer and use it in GitHub Desktop.
Save yunruse/fc8be1045bf5da7105d02ac24db3b586 to your computer and use it in GitHub Desktop.
Ballpark guess at CO2 emissions from wasted boiling of water
"""
Tool to calculate the average additional CO2e emissions
from the instruction "boil half a kettle",
rather than some slightly more precise figure ("boil 200ml").
Naturally, not everyone will follow this -- we're all busy people --
so we will have to assume not all of these wasted emissions
can be reduced.
This is targetted at a recipe-delivery service company;
naturally the numbers would need to be replaced with the company's own data.
Forgive the incredible overprecision in printed numbers!
Tweaking Noether's unit display to be nicer is... one of many priorities.
To run, grab Python 3.11 and `pip install noether`.
"""
from noether import *
#% volumetric energy to boil water
water_boiling_point = celsius(99.98)
water_enth_vaporiz = 2257 * kJ / kg
water_heat_capacity = 4184 * J / (kg * K) # assume constant
def energy_boil(T: temperature) -> specific_energy:
return (water_boiling_point - T) * water_heat_capacity + water_enth_vaporiz
T_room = celsius(20, 2)
E_boil = energy_boil(T_room) / (milliliter / gram)
#% assumptions for the UK as a whole
recipe_rate = 1_000_000 / week
print(f"Assuming {recipe_rate * week} recipes are cooked per week...")
recipe_boil = ml(150, 50)
print(f"Assuming the avg recipe calls for {recipe_boil @ ml} boiled water...")
E_half_kettle = E_boil * liter(1, 0.2)
E_typ_recipe = E_boil * recipe_boil
E_wasted = E_half_kettle - E_typ_recipe
E_waste_rate = recipe_rate * E_wasted
# https://ourworldindata.org/grapher/carbon-intensity-electricity?tab=chart&country=~GBR
CO2e_rate_UK = gram(255, 5) / kWh
CO2e_waste_rate = E_waste_rate * CO2e_rate_UK
print("the CO2e waste rate is:")
print(' ',CO2e_waste_rate @ (gram / second))
print('=', CO2e_waste_rate @ (ton / year))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment