onstove.Charcoal#

class onstove.Charcoal(name: str | None = None, carbon_intensity: float | None = None, co2_intensity: float = 121, ch4_intensity: float = 0.576, n2o_intensity: float = 0.001, co_intensity: float = 0, bc_intensity: float = 0.1075, oc_intensity: float = 0.308, energy_content: float = 30, tech_life: float = 2, inv_cost: int = 4, fuel_cost: float = 0.09, time_of_cooking: float = 2.6, om_cost: float = 3.7, efficiency: float = 0.2, pm25: float = 256)[source]#

Charcoal technology class used to model traditional and improved stoves.

This class inherits the standard Technology class and is used to model traditional and Improved Cook Stoves (ICS) using charcoal as fuel.

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).

co2_intensity: float, default 121

The CO2 emissions in kg/GJ of burned fuel.

ch4_intensity: float, default 0.576

The CH4 emissions in kg/GJ of burned fuel.

n2o_intensity: float, default 0.001

The N2O emissions in kg/GJ of burned fuel.

co_intensity: float, default 0

The CO emissions in kg/GJ of burned fuel.

bc_intensity: float, default 0.1075

The black carbon emissions in kg/GJ of burned fuel.

oc_intensity: float, default 0.308

The organic carbon emissions in kg/GJ of burned fuel.

energy_content: float, default 30

Energy content of the fuel in MJ/kg.

tech_life: int, default 2

Stove life in years.

inv_cost: float, default 4

Investment cost of the stove in USD.

fuel_cost: float, default 0.09

Fuel cost in USD/kg if any.

time_of_cooking: float, default 2.6

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.2

Efficiency of the stove.

pm25: float, default 256

Particulate Matter emissions (PM25) in mg/kg of fuel.

Methods

adjusted_pm25()

Adjusts the PM25 value of each stove based on the adjusment factor.

carb(model)

This method expands Technology.carbon() when Charcoal is the fuel used (both traditional stoves and ICS) to ensure that the emissions caused by the production and transportation is included in the total emissions.

carbon_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])

Calls discount_factor function and calculates discounted investment cost.

discounted_om(model)

Calls discount_factor function and calculates discounted operation and maintenance cost for each stove.

get_carbon_intensity(model)

This method expands Technology.get_carbon_intensity().

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)

Calculates the morbidity across the study area per stove by calling the mort_morb function.

mort_morb(model[, parameter, dr])

Calculates mortality or morbidity rate per fuel.

mortality(model)

Calculates the mortality across the study area per stove by calling the mort_morb function.

net_benefit(model[, w_health, w_spillovers, ...])

This method combines all costs and benefits as specified by the user using the weights parameters.

normalize(column[, inverse])

Uses the MinMax method to normalize the data from a column of the gdf GeoDataFrame.

paf(rr, sfu)

Calculates the Population Attributable Fraction for (PAF) ALRI, COPD, IHD, lung cancer or stroke based on the percentage of population using non-clean stoves and the relative risk.

production_emissions(model)

Calculates the emissions caused by the production of Charcoal.

relative_risk()

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 of the stove value.

time_saved(model)

Calculates time saved per year by adopting a new stove.

total_costs()

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).