onstove.Electricity#
- class onstove.Electricity(name: str | None = None, carbon_intensity: str | None = None, energy_content: float = 3.6, tech_life: int = 10, inv_cost: float = 36.3, connection_cost: float = 0, grid_capacity_cost: float = None, fuel_cost: float = 0.1, time_of_cooking: float = 1.8, om_cost: float = 3.7, efficiency: float = 0.85, pm25: float = 32)#
Electricity technology class used to model electrical stoves.
This class inherits the standard
Technologyclass and is used to model electrical stoves.- Parameters:
- name: str, optional
Name of the technology to model.
- carbon_intensity: float, optional
The CO2 equivalent emissions in kg/GJ of burned fuel. If this attribute is used, then none of the gas-specific intensities will be used (e.g. ch4_intensity).
- energy_content: float, default 3.6
Energy content in MJ/kWh.
- tech_life: int, default 10
Stove life in year.
- connection_cost: float, defualt 0
Cost of strengthening a household connection to enable electrical cooking.
- grid_capacity_cost: float, optional
Cost of added capacity in the grid (USD/kW)
- inv_cost: float, default 36.3
Investment cost of the stove in USD.
- fuel_cost: float, default 0.1
Fuel cost in USD/kg if any.
- time_of_cooking: float, default 1.8
Daily average time spent for cooking with this stove in hours.
- om_cost: float, default 3.7
Operation and maintenance cost in USD/year.
- efficiency: float, default 0.85
Efficiency of the stove.
- pm25: float, default 32
Particulate Matter emissions (PM25) in mg/kg of fuel.
- Attributes:
- carbon_intensities: dict
Carbon intensities of the different power plants used in the electricity generation mix.
- grid_capacity_costs: dict
Costs of adding capacity of the different power plants used in the generation mix.
- grid_techs_life: dict
Technology life of the different power plants used in the generation mix.
Methods
Adjusts the PM25 value of each stove based on the adjusment factor.
carb(model)This method expands
Technology.carbon()when electricity is the fuel usedcarbon_emissions(model)Calculates the reduced emissions and the costs avoided by reducing these emissions.
discount_factor(specs)Calculates and returns the discount factor used for benefits and costs in the net-benefit equation.
discount_fuel_cost(model[, relative])Calls discount_factor function and calculates discounted fuel costs.
discounted_inv(model[, relative])This method expands
Technology.discounted_inv()by adding connection and added capacity costs.discounted_om(model)Calls discount_factor function and calculates discounted operation and maintenance cost for each stove.
get_capacity_cost(model)This method determines the cost of electricity for each added unit of capacity (kW).
get_carbon_intensity(model)This function determines the carbon intensity of generated electricity based on the power plant mix in the area of interest.
This function determines the grid capacity cost in the area of interest.
grid_salvage(model[, single])This method determines the salvage cost of the grid connected power plants.
health_parameters(model)Calculates the population attributable fraction for ALRI, COPD, IHD, lung cancer or stroke for urban and rural settlements of the area of interest.
morbidity(model)Distributes the total morbidity across the study area per fuel.
mort_morb(model[, parameter, dr])Calculates mortality or morbidity rate per fuel.
mortality(model)Distributes the total mortality across the study area per fuel.
net_benefit(model[, w_health, w_spillovers, ...])This method expands
Technology.net_benefit()by taking into account electricity availability in the calculations.paf(rr, sfu)Calculates the population attributable fraction for ALRI, COPD, IHD, lung cancer or stroke based on the percentage of population using non-clean stoves and the relative risk [R0ac15c7dd43d-1].
Calculates the relative risk of contracting ALRI, COPD, IHD, lung cancer or stroke based on the adjusted
required_energy(model)Calculates the annual energy needed for cooking in MJ/yr.
salvage(model)Calls discount_factor function and calculates discounted salvage cost for each stove assuming a straight-line depreciation.
time_saved(model)Calculates time saved per year by adopting a new stove.
Calculates total costs (fuel, investment, operation and maintenance as well as salvage costs)
total_time(model)Calculates total time used per year by taking into account time of cooking and time of fuel collection (if relevant)