Skip to content

aeromaps.models.sustainability_assessment.climate.carbon_budget

carbon_budgets

This module contains models to compute gross carbon budget related metrics.

GrossCarbonBudget

GrossCarbonBudget(name='gross_carbon_budget', *args, **kwargs)

Bases: AeroMAPSModel

This class computes gross carbon budget related metrics.

Parameters:

Name Type Description Default
name str

Name of the model instance ('gross_carbon_budget' by default).

'gross_carbon_budget'
Source code in aeromaps/models/sustainability_assessment/climate/carbon_budget.py
22
23
def __init__(self, name="gross_carbon_budget", *args, **kwargs):
    super().__init__(name=name, *args, **kwargs)

compute

compute(net_carbon_budget, carbon_dioxyde_removal_2100, world_co2_emissions_2019, aviation_carbon_budget_allocated_share)

Gross carbon budget.

Parameters:

Name Type Description Default
net_carbon_budget float

Considered (net) carbon budget [GtCO2].

required
carbon_dioxyde_removal_2100 float

Cumulative Carbon Dioxide Removal (CDR) over 2020-2100 [GtCO2].

required
world_co2_emissions_2019 float

World CO2 emissions in 2019 [GtCO2].

required
aviation_carbon_budget_allocated_share float

Share of the carbon budget allocated to aviation over 2020-2050 [%].

required
Source code in aeromaps/models/sustainability_assessment/climate/carbon_budget.py
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
def compute(
    self,
    net_carbon_budget: float,
    carbon_dioxyde_removal_2100: float,
    world_co2_emissions_2019: float,
    aviation_carbon_budget_allocated_share: float,
) -> Tuple[float, float, float]:
    """
    Gross carbon budget.

    Parameters
    ----------
    net_carbon_budget
        Considered (net) carbon budget [GtCO2].
    carbon_dioxyde_removal_2100
        Cumulative Carbon Dioxide Removal (CDR) over 2020-2100 [GtCO2].
    world_co2_emissions_2019
        World CO2 emissions in 2019 [GtCO2].
    aviation_carbon_budget_allocated_share
        Share of the carbon budget allocated to aviation over 2020-2050 [%].
    """

    gross_carbon_budget = net_carbon_budget + carbon_dioxyde_removal_2100

    data = [gross_carbon_budget, world_co2_emissions_2019]

    average_co2_emissions_decline_rate = float(
        fsolve(self._compute_average_co2_emissions_decline_rate, -0.02, args=data)
    )
    gross_carbon_budget_2050 = (
        world_co2_emissions_2019
        * (
            (1 - average_co2_emissions_decline_rate)
            - (1 - average_co2_emissions_decline_rate) ** 32
        )
        / average_co2_emissions_decline_rate
    )

    aviation_carbon_budget = (
        aviation_carbon_budget_allocated_share / 100 * gross_carbon_budget_2050
    )

    self.float_outputs["gross_carbon_budget"] = gross_carbon_budget
    self.float_outputs["gross_carbon_budget_2050"] = gross_carbon_budget_2050
    self.float_outputs["aviation_carbon_budget"] = aviation_carbon_budget

    return gross_carbon_budget, gross_carbon_budget_2050, aviation_carbon_budget