Model Documentation

| Version 2.1.0

created with goxygen 0.29.0

36_buildings

Buildings (36_buildings)

Description

The 36_buildings module calculates the demand for energy from buildings.

The simple realization only gives a representation of the demand for energy carriers The services_capital distinguished between end-uses and adds a trade-off between energy consumption and capital investments The services_putty uses services_capital as a basis but adds inertia dynamics to improve the building enveloppes

Interfaces

Interfaces to other modules
Interfaces to other modules

Input

module inputs (A: services_putty | B: services_with_capital | C: simple)
  Description Unit A B C
cm_DiscRateScen Scenario for the implicit discount rate applied to the energy efficiency capital x x
cm_noReboundEffect Switch for allowing a rebound effect when closing the efficiency gap (cm_DiscRateScen) x x
cm_startyear first optimized modelling time step \(year\) x x
pm_capital_lifetime_exp
(all_regi, all_in)
number of years for which 25% of the CES capital stocks remains x x
pm_cesdata
(tall, all_regi, all_in, cesParameter)
parameters of the CES function x x
pm_cesdata_sigma
(ttot, all_in)
elasticities of substitution x x x
pm_cumDeprecFactor_new
(ttot, all_regi, all_in)
Investment depreciation within a period, applied to the investment of t. x
pm_cumDeprecFactor_old
(ttot, all_regi, all_in)
Investment depreciation within a period, applied to the investment of t -1. x
pm_delta_kap
(all_regi, all_in)
Depreciation rate of capital. x x
pm_dt
(tall)
difference to last timestep x x
pm_esCapCost
(tall, all_regi, all_teEs)
Capital energy cost per unit of consumption for end-use capital (energy service layer) x x
pm_fe2es
(tall, all_regi, all_teEs)
Conversion factor from final energies to energy services. Default is 1. x x
pm_gdp
(tall, all_regi)
GDP data \(trn US\$ 2005\) x x
pm_pop
(tall, all_regi)
population data \(bn people\) x x
pm_ppfen_ratios
(all_in, all_in)
Limit ratio of two primary production factors of energy (ppfEn). x
pm_ppfen_shares
(all_in, all_in)
Limit the share of one ppfEn in total CES nest inputs. x
pm_shFeCes
(ttot, all_regi, all_enty, all_in, all_teEs)
Final energy shares for CES nodes x x
pm_shPPPMER
(all_regi)
PPP ratio for calculating GDP|PPP from GDP|MER x x
pm_tau_fe_sub_ES_st
(tall, all_regi, all_esty)
subsidy path for pathways III FE to CES via ES x x
pm_tau_fe_tax_ES_st
(tall, all_regi, all_esty)
tax path for pathways III FE to CES via ES x x
pm_ttot_val
(ttot)
value of ttot set element x x x
qm_balFeForCesAndEs
(ttot, all_regi, all_enty)
FE balance coupling ESM and production function either directly (Pathway I) or Indirectly through Energy services (Pathway III) x x
qm_budget
(ttot, all_regi)
Budget balance x x
sm_D2015_2_D2005 Convert $2015 to $2005 by dividing by 1.2: 1/1.2 = 0.8333 x x
sm_day_2_hour hours per day x x
sm_DpGJ_2_TDpTWa multipl. factor to convert (Dollar per GJoule) to (TerraDollar per TWyear) x x
sm_DpKW_2_TDpTW convert Dollar per kW to TeraDollar per TeraWatt x x
sm_EJ_2_TWa multiplicative factor to convert from EJ to TWa x x
sm_eps small number: 1e-9 x x
sm_tmp temporary scalar that can be used locally x x
sm_year_2_day days per year x x
vm_cesIO
(tall, all_regi, all_in)
Production factor x x
vm_cesIOdelta
(tall, all_regi, all_in)
Putty-clay production factor x x
vm_effGr
(ttot, all_regi, all_in)
growth of factor efficiency x x
vm_enerSerAdj
(tall, all_regi, all_in)
adjustment costs for energy service transformations x

Output

Realizations

(A) off

Limitations There are no known limitations.

(B) services_putty

The services_putty realization splits the representation of buildings energy demand between the CES structure and a multinomial logit structure which distributes the demand across technologies. Importantly, the realization distinguishes across four end-use categories (appliances and lighting, water heating and cooking, space cooling and space cooling ). Not only the demand for final energy is represented, but also the demand for useful energy, which is necessary to display the level of efficiency achieved. In total, six energy carrier categories are included (electricity, solids, liquids, gas, district heating, hydrogen), spread across the various end-uses.

The model can decide to invest in end-use capital (insulation, appliances, space cooling) to reduce the energy demand, or it can switch to more efficient technologies to produce heat. The conversion efficiencies of the individual heat technologies is prescribed exogenously however.

In addition, inertia dynamics are integrated through a putty-clay representation. In each time step, the model can only improve the efficiency of a portion of the building stock.

\[\begin{multline*} p36\_floorspace\left(ttot + 1,regi\right) = \left(1- pm\_delta\_kap(regi,"esswb")\right)^{pm\_dt(ttot+1) } \cdot p36\_floorspace(ttot,regi) + \left(pm\_cumDeprecFactor\_old(ttot+1,regi,"esswb") \cdot v36\_floorspace\_delta(ttot,regi)\right) + \left(pm\_cumDeprecFactor\_new(ttot+1,regi,"esswb") \cdot v36\_floorspace\_delta(ttot+1,regi)\right) \end{multline*}\]

\[\begin{multline*} v36\_putty\_obj = \sum_{\left(ttot,regi,in\right)\$\left(ord(ttot) lt card(ttot)\right) }\left( \left( v36\_floorspace\_delta(ttot+1,regi) - v36\_floorspace\_delta(ttot,regi) \right)^{2} \right) \end{multline*}\]

\[\begin{multline*} vm\_enerSerAdj(ttot,regi,in) = p36\_adjFactor(ttot,regi) \cdot sqr\left(\frac{\frac{ \left(\frac{vm\_cesIOdelta(ttot,regi,in) }{ p36\_floorspace\_delta(ttot,regi) }-\frac{ vm\_cesIOdelta(ttot-1,regi,in) }{ p36\_floorspace\_delta(ttot-1,regi)}\right) }{ \left(pm\_ttot\_val(ttot)-pm\_ttot\_val(ttot-1)\right) }}{ \left(\frac{vm\_cesIOdelta(ttot,regi,in) }{ p36\_floorspace\_delta(ttot,regi) }+0.0001\right) }\right) \cdot \frac{ vm\_cesIOdelta(ttot,regi,in) }{ 11 } \end{multline*}\]

\[\begin{multline*} vm\_enerSerAdj(ttot,regi,in) = p36\_adjFactor(ttot,regi) \cdot \sum \left(cesOut2cesIn(out,in), sqr \left(\frac{ \left(\frac{vm\_cesIO(ttot,regi,out) }{ vm\_cesIO(ttot,regi,in) !! Efficiency in ttot }-\frac{ vm\_cesIO\left(ttot - 1,regi,out\right) }{ vm\_cesIO\left(ttot - 1,regi,in\right) !! Efficiency in ttot }-1 \right) }{ \left(pm\_ttot\_val(ttot) - pm\_ttot\_val\left(ttot - 1\right)\right) }-\frac{ \left(\frac{vm\_cesIO\left(ttot - 1,regi,out\right) }{ vm\_cesIO\left(ttot - 1,regi,in\right) !! Efficiency in ttot }-1 -\frac{ vm\_cesIO\left(ttot - 2,regi,out\right) }{ vm\_cesIO\left(ttot - 2,regi,in\right) !! Efficiency in ttot }-2 \right) }{ \left(pm\_ttot\_val\left(ttot - 1\right) - pm\_ttot\_val\left(ttot - 2\right)\right) }\right) \right) \end{multline*}\]

\[\begin{multline*} v36\_logitproba(t,regi,entyFe,esty,teEs,in) = \frac{ exp \left( v36\_beta(regi,in) \cdot p36\_techCosts(t,regi,entyFe,esty,teEs)\right) }{ \sum \left(fe2ces\_dyn36\_2(entyFe2,esty2,teEs2,in), exp \left( v36\_beta(regi,in) \cdot p36\_techCosts(t,regi,entyFe2,esty2,teEs2)\right)\right) } \end{multline*}\]

\[\begin{multline*} \sum \left(fe2ces\_dyn36(entyFe,esty,teEs,in), p36\_techCosts(t,regi,entyFe,esty,teEs) \cdot p36\_shFeCes(t,regi,entyFe,in,teEs) \right) = \sum \left(fe2ces\_dyn36(entyFe,esty,teEs,in), p36\_techCosts(t,regi,entyFe,esty,teEs) \cdot v36\_logitproba(t,regi,entyFe,esty,teEs,in) \right) \end{multline*}\]

\[\begin{multline*} v36\_dummy = \sum \left(\left(regi,in\right)\$\left(regi\_dyn36(regi) \& inViaEs\_dyn36(in)\right), v36\_beta(regi,in) \right) \end{multline*}\]

Limitations There are no known limitations.

(C) services_with_capital

The services_with_capital realization splits the representation of buildings energy demand between the CES structure and a multinomial logit structure which distributes the demand across technologies. Importantly, the realization distinguishes across four end-use categories (appliances and lighting, water heating and cooking, space cooling and space cooling ). Not only the demand for final energy is represented, but also the demand for useful energy, which is necessary to display the level of efficiency achieved. In total, six energy carrier categories are included (electricity, solids, liquids, gas, district heating, hydrogen), spread across the various end-uses.

The model can decide to invest in end-use capital (insulation, appliances, space cooling) to reduce the energy demand, or it can switch to more efficient technologies to produce heat. The conversion efficiencies of the individual heat technologies is prescribed exogenously however.

\[\begin{multline*} v36\_logitproba(t,regi,entyFe,esty,teEs,in) = \frac{ exp \left( v36\_beta(regi,in) \cdot p36\_techCosts(t,regi,entyFe,esty,teEs)\right) }{ \sum \left(fe2ces\_dyn36\_2(entyFe2,esty2,teEs2,in), exp \left( v36\_beta(regi,in) \cdot p36\_techCosts(t,regi,entyFe2,esty2,teEs2)\right)\right) } \end{multline*}\]

\[\begin{multline*} \sum \left(fe2ces\_dyn36(entyFe,esty,teEs,in), p36\_techCosts(t,regi,entyFe,esty,teEs) \cdot p36\_shFeCes(t,regi,entyFe,in,teEs) \right) = \sum \left(fe2ces\_dyn36(entyFe,esty,teEs,in), p36\_techCosts(t,regi,entyFe,esty,teEs) \cdot v36\_logitproba(t,regi,entyFe,esty,teEs,in) \right) \end{multline*}\]

\[\begin{multline*} v36\_dummy = \sum \left(\left(regi,in\right)\$\left(regi\_dyn36(regi) \& inViaEs\_dyn36(in)\right), v36\_beta(regi,in) \right) \end{multline*}\]

Limitations This realization does not represent inertia dynamics in the renovation of buildings.

(D) simple

The simple realization represents buildings energy demand within the CES function. It displays the energy demand for six energy carrier categories (electricity, solids, liquids, gas, district heating, hydrogen), at the final energy level. In policy scenarios, energy demand reacts to modified prices by switching to energy carriers whose relative prices decrease.

Limitations This realization does not distinguish across end-uses. Also, it does not allow for substitution between energy consumption and end-use capital

Definitions

Objects

module-internal objects (A: services_putty | B: services_with_capital | C: simple)
  Description Unit A B C
f36_dataeff
(char, all_teEs)
end-use (final energy) long term efficiency assumptions x x
f36_datafecostsglob
(char, all_teEs)
end-use (final energy) technologies characteristics x x
f36_inconvpen
(all_teEs)
maximum inconvenience penalty for traditional conversion technologies. Unit: T$/TWa x x
p36_adjFactor
(tall, all_regi)
factor applied for the adjustment costs x x
p36_cesdata_sigma
(all_in)
substitution elasticities x x x
p36_cesIONoRebound
(tall, all_regi, all_in)
loads the vm_cesIO values from the input_ref and sets the upper bound to vm_cesIO to forbid a rebound effect x x
p36_cesIONoRebound_putty
(tall, all_regi, all_in)
loads the vm_cesIO_putty values from the input_ref and sets the upper bound to vm_cesIO to forbid a rebound effect x
p36_demFeForEs
(ttot, all_regi, all_enty, all_esty, all_teEs)
Final energy demand for technologies producing energy services (useful energy in the case of buildings) x x
p36_demFeForEs_scen final energy demand projections for FE-UE technologies x x
p36_demUEdelta
(tall, all_regi, all_in)
Demand for UE, independent of the technology, and which is not covered by the depreciated technologies x x
p36_demUEtotal
(tall, all_regi, all_in)
Demand for UE, independent of the technology x x
p36_depreciationRate
(all_teEs)
Depreciation rates for the indivudal conversion technologies, rouhgly derived from their lifetime parameter x x
p36_esCapCost
(tall, all_regi, all_teEs)
Capital costs for each technology transforming FE into UE. Cost per unit of FE x x
p36_esCapCostImplicit
(tall, all_regi, all_teEs)
Capital costs for each technology transforming FE into UE, taking the implicit discount rate into account. Cost per unit of FE x x
p36_fe2es
(ttot, all_regi, all_teEs)
FE to ES(UE) efficiency of technology teES x x
p36_fePrice
(tall, all_regi, all_enty)
Final energy price x x
p36_fePrice_iter
(iteration, tall, all_regi, all_enty)
Storage parameter for final energy price over iterations x x
p36_floorspace
(tall, all_regi)
buildings floorspace, billion m2 x x
p36_floorspace_delta
(tall, all_regi)
increase in floorspace, billion m2 x x
p36_floorspace_delta_gdx
(tall, all_regi)
parameter storing fixings from input_ref for v36_floorspace_delta x
p36_floorspace_scen floorspace x x
p36_implicitDiscRateMarg
(tall, all_regi, all_in)
Implicit discount rate for the choice of conversion technologies from UE to FE in buildings x x
p36_inconvpen
(ttot, all_regi, all_teEs)
parameter for inconvenience penalty depending on income level. Unit: T$/TWa x x
p36_kapPrice
(tall, all_regi)
Macroeconomic capital price, net of depreciation x x
p36_kapPriceImplicit
(tall, all_regi, all_teEs)
Macroeconomic capital price, net of depreciation, to which the implicit discount rate is added x x
p36_logitCalibration
(tall, all_regi, all_enty, all_esty, all_teEs)
calibration parameter for the multinomial logit function x x
p36_logitCalibration_load
(tall, all_regi, all_enty, all_esty, all_teEs)
calibration parameter for the multinomial logit function from input_ref.gdx x x
p36_logitLambda
(all_regi, all_in)
logit parameter for homogeneity x x
p36_logitLambda_load (all_regiall_in) logit parameter for homogeneity, loaded from GDX_ref x x
p36_logitNorm
(iteration, tall, all_regi, all_in)
computes the norm of the share vector difference between two iterations x x
p36_marginalUtility
(tall, all_regi)
Marginal utility of income: used to compute the final energy price from the marginal of balance equation x x
p36_prodEs
(ttot, all_regi, all_enty, all_esty, all_teEs)
Energy service demand (UE in the case of buildings) for technologies producing energy services and using FE x x
p36_prodEs_scen useful energy demand projections for FE-UE technologies x x
p36_prodUEintern
(tall, all_regi, all_enty, all_esty, all_teEs)
UE production from depreciated technologies of the previous period x x
p36_prodUEintern_load
(tall, all_regi, all_enty, all_esty, all_teEs)
UE production from depreciated technologies of the previous period – From GDX x x
p36_shFeCes
(ttot, all_regi, all_enty, all_in, all_teEs)
share of Final energy of technology teEs in the final energy producing all_in x x
p36_shFeCes_iter
(iteration, ttot, all_regi, all_enty, all_in, all_teEs)
share of Final energy of technology teEs in the final energy producing all_in x x
p36_shUeCes
(ttot, all_regi, all_enty, all_in, all_teEs)
share of Useful energy of technology teEs in the final energy producing all_in x x
p36_shUeCes_iter
(iteration, ttot, all_regi, all_enty, all_in, all_teEs)
share of Useful energy of technology teEs in the final energy producing all_in x x
p36_shUeCesDelta
(ttot, all_regi, all_enty, all_in, all_teEs)
Technological shares in UE which is not covered by former depreciated technologies x x
p36_techCosts
(tall, all_regi, all_enty, all_esty, all_teEs)
Relevant costs of each ES technology for the computation of the share in the multinomial logit x x
q36_enerCoolAdj
(tall, all_regi, all_in)
adjustment costs for energy cooling services x
q36_enerSerAdj
(tall, all_regi, all_in)
adjustment costs for energy services x
q36_pathConstraint
(tall, all_regi)
equation describing the relation between a variable and its variation x
q36_putty_obj objective function x
s36_switch_floor switch for the inclusion of the floorspace equations. It should exclude the equations from hybrid x
v36_floorspace_delta
(tall, all_regi)
increase in floorspace, million m2 x
v36_putty_obj index of the step by step variation of v36_floorspace_delta x

Sets

sets in use
  description
all_enty all types of quantities
all_esty energy services
all_GDPscen all possible GDP scenarios
all_in all inputs and outputs of the CES function
all_POPscen all possible population scenarios
all_regi all regions
all_teEs energy service technologies
buildMoBio(all_esty) modern biomass in buildings
buildMoBio36 (all_esty) modern biomass in buildings
c_expname c_expname as set for use in GDX
cal_ppf_buildings_dyn36(all_in) primary production factors - buildings - used for the calibration
ces_buildings_dyn36(all_in, all_in) CES tree structure - buildings
cesOut2cesIn(all_in, all_in) CES tree structure
cesParameter parameters of the CES functions and for calibration
char characteristics of technologies
enty(all_enty) all types of quantities
entyFe(all_enty) final energy types. Calculated in sets_calculations
es2ppfen(all_esty, all_in) matching ES in ESM to ppfEn in MACRO
es2ppfen_dyn36(all_esty, all_in) matching FE to ppfEn in MACRO
esty(all_esty) energy service types. Have to be added by modules.
esty_dyn36(all_esty) Energy service types
fe_tax_sub_sbi(all_in, all_in) correspondence between tax and subsidy input data resolution and model sectoral resolution. For FE which takes the pathway I to the CES
fe_tax_sub36(all_in, all_in) correspondence between tax and subsidy input data resolution and model sectoral resolution
fe_tax_subEs(all_in, all_esty) correspondence between tax and subsidy input data resolution and model sectoral resolution. For FE which takes the pathway III to the CES
fe_tax_subEs36(all_in, all_esty) correspondence between tax and subsidy input data resolution and model sectoral resolution
fe2ces_dyn36(all_enty, all_esty, all_teEs, all_in) map FE carriers to CES via appliances
fe2es(all_enty, all_esty, all_teEs) map FE carriers to ES via ES technologies
fe2es_dyn36(all_enty, all_esty, all_teEs) map FE carriers to ES via appliances
fe2ppfEn(all_enty, all_in) mapping between CES FE variables and ESM FE variables
fe2ppfEn36(all_enty, all_in) match ESM entyFe to ppfEn
feViaEs2ppfen(all_enty, all_in, all_teEs) map final energies to the primar production factor - is filled automatically from the content of fe2es and es2ppfen
in(all_in) All inputs and outputs of the CES function
in_buildings_dyn36(all_in) all inputs and outputs of the CES function - buildings
in_complements(all_in) Factors which are perfect complements
in_complements_dyn36(all_in) in complements
in_enerSerAdj(all_in) Energy services factors which should be constrained by adjustment costs
in_enerSerAdj_dyn36(all_in) Energy services input to be adjusted
in_putty(all_in) Production factors subject to putty-clay dynamics
in_putty_dyn36(all_in) putty in for buildings
inViaEs_dyn36(all_in) CES inputs which are provided throught the ES pathway
ipf_putty(all_in) All putty-clay intermediate production factors
iteration iterator for main (Negishi/Nash) iterations
mapElHp(all_teEs, all_teEs) correspondence between electric resistance technology and heat pump technology
modules all the available modules
nests_putty(all_in, all_in) Defines factors which are in the same putty subnest. The first all_in gives the higher factors of the subnest
nests_putty_dyn36(all_in, all_in) putty nests
ppf(all_in) All primary production factors
ppf_putty(all_in) All putty-clay primary production factors
ppf_putty_dyn36(all_in) putty ppf for buildigs
ppfEn(all_in) Primary production factors energy
ppfen_buildings_dyn36(all_in) primary production factors energy - buildings
ppfKap(all_in) Primary production factors capital
ppfKap_dyn36(all_in) Capital primary production factors
regi(all_regi) all regions used in the solution process
regi_dyn36(all_regi) dynamic region set for compatibility with testOneRegi
regi_dyn80(all_regi) region for testOneRegi
richTechs(all_teEs) technologies whose calibration decreases with income
set regi_nucscen(all_regi) regions which nucscen applies to
steps iterator for MAC steps
t(ttot) modeling time, usually starting in 2005, but later for fixed delay runs
t0(tall) start of modelling time, not optimization
t36_hist(ttot) historic time steps
t36_hist_last(ttot) last historic time step
t36_scen(ttot) non historical scenario time step
tall time index
teEs(all_teEs) ES technologies which are actually used (to be filled by module realizations).
teEs_dyn36(all_teEs) technologies - buildings module additions
ttot(tall) time index with spin up
ue_dyn36(all_in) useful energy items

Authors

Antoine Levesque

See Also

01_macro, 20_growth, 21_tax, core

References