message_ix_models.model.material.demand.project_demand
- message_ix_models.model.material.demand.project_demand(df: DataFrame, phi: float, mu: float)[source]
Project material demand over time using a convergence function.
This function calculates the projected demand for materials by applying a Gompertz convergence function to historical demand data. It adjusts demand per capita and total demand based on population and other factors.
- Parameters:
df – Input DataFrame containing historical demand data with the following columns: - demand.tot.base: Base year total demand. - pop.mil: Population in millions. - demand_pcap0: Initial demand per capita. - year: Year of the data.
phi – Shape parameter for the Gompertz function.
mu – Rate parameter for the Gompertz function.
- Returns:
A DataFrame containing projected demand data with the following columns: - region: Region name. - year: Year of the data. - demand_tot: Projected total demand.
- Return type:
pd.DataFrame