REMIND - REgional Model of INvestments and Development

3.0.0

created with goxygen 1.2.4

Welfare (02_welfare)

Description

The welfare module enables the implementation of different social welfare functions.

Interfaces

Interfaces to other modules

Input

module inputs (A: utilitarian)
  Description Unit A
cm_damage cm_damage factor for forcing overshoot x
cm_startyear first optimized modelling time step \(year\) x
pm_cesdata
(tall, all_regi, all_in, cesParameter)
parameters of the CES function x
pm_ies
(all_regi)
intertemporal elasticity of substitution x
pm_pop
(tall, all_regi)
population data \(bn people\) x
pm_ts
(tall)
(t_n+1 - t_n-1)/2 for a timestep t_n x
pm_ttot_val
(ttot)
value of ttot set element x
sm_giga_2_non giga to non x
sm_GJ_2_TWa multiplicative factor to convert from GJ to TWa x
vm_cesIO
(tall, all_regi, all_in)
Production factor x
vm_cons
(ttot, all_regi)
Consumption x
vm_demFeSector
(ttot, all_regi, all_enty, all_enty, emi_sectors, all_emiMkt)
fe demand per sector and emission market. \(TWa\) x
vm_prodSe
(tall, all_regi, all_enty, all_enty, all_te)
se production. \(TWa\) x

Output

module outputs
  Description Unit
pm_prtp
(all_regi)
Pure rate of time preference
pm_w
(all_regi)
Negishi weights
pm_welf
(tall)
Weight parameter in the welfare function to avoid jumps with cm_less_TS
vm_forcOs
(ttot)
Forcing overshoot
vm_welfareGlob Global welfare

Realizations

(A) utilitarian

The utilitarian realization loads the utilitarian aka. Benthamite social welfare function, in which social welfare is equal to the discounted intertemporal sum of utility, which itself is a function of per capita consumption.

The utilitarian realization loads the utilitarian aka. Benthamite social welfare function, in which social welfare is equal to the discounted intertemporal sum of utility, which itself is a function of per capita consumption.

Transformation of coal to liquids/gases/H2 brings local pollution, which is less accepted at higher incomes -> use the inconvenience cost channel

The objective of the optimization is to maximize the total discounted intertemporal utility. It is summed over all regions.

\[\begin{multline*} vm\_welfareGlob = \sum_{regi}\left( pm\_w(regi) \cdot v02\_welfare(regi) \right) \end{multline*}\]

Total discounted intertemporal regional welfare calculated from per capita consumption summing over all time steps taking into account the pure time preference rate. Assuming an intertemporal elasticity of substitution of 1, it holds:


q02_welfare(regi)..
    v02_welfare(regi) 
  =e=
    sum(ttot $(ttot.val ge 2005),
        pm_welf(ttot) * pm_ts(ttot) * (1 / ( (1 + pm_prtp(regi))**(pm_ttot_val(ttot)-2005) ) )
        *   (  (pm_pop(ttot,regi) 
                *   (
                        ((( (vm_cons(ttot,regi)*(1-cm_damage*vm_forcOs(ttot)*vm_forcOs(ttot)))/pm_pop(ttot,regi))**(1-1/pm_ies(regi))-1)/(1-1/pm_ies(regi)) )$(pm_ies(regi) ne 1)
                       + (log((vm_cons(ttot,regi)*(1-cm_damage*vm_forcOs(ttot)*vm_forcOs(ttot))) / pm_pop(ttot,regi)))$(pm_ies(regi) eq 1)
                    )
                )
$if %cm_INCONV_PENALTY% == "on"  - v02_inconvPen(ttot,regi) - v02_inconvPenCoalSolids(ttot,regi)
$if "%cm_INCONV_PENALTY_FESwitch%" == "on"  - sum((entySe,entyFe,te,sector,emiMkt)$(se2fe(entySe,entyFe,te) AND entyFe2Sector(entyFe,sector) AND sector2emiMkt(sector,emiMkt) AND (entySeBio(entySe) OR entySeSyn(entySe) OR entySeFos(entySe)) ), v02_NegInconvPenFeBioSwitch(ttot,regi,entySe,entyFe,sector,emiMkt) + v02_PosInconvPenFeBioSwitch(ttot,regi,entySe,entyFe,sector,emiMkt))/1e3 
            )
        )
;

Calculation of the inconvenience penalty:

\[\begin{multline*} v02\_inconvPen(t,regi) \geq \cdot ' local air pollution for all entySe production except for coal solids \left(=sesofos\right), which is treated separately \left(see below\right) SUM\left(pe2se(enty,entySe,te)\$\left(NOT sameas(entySe,"sesofos")\right), p02\_inconvpen\_lap(t,regi,te) \cdot vm\_prodSe(t,regi,enty,entySe,te) \right) \end{multline*}\]

\[\begin{multline*} v02\_inconvPenCoalSolids(t,regi) \geq \cdot ' local air pollution for coal: inconvinience penalty applies only for buildings use \end{multline*}\]

\[\begin{multline*} vm\_demFeSector(ttot,regi,entySe,entyFe,sector,emiMkt) - vm\_demFeSector(ttot-1,regi,entySe,entyFe,sector,emiMkt) + v02\_NegInconvPenFeBioSwitch(ttot,regi,entySe,entyFe,sector,emiMkt) - v02\_PosInconvPenFeBioSwitch(ttot,regi,entySe,entyFe,sector,emiMkt) = 0 \end{multline*}\]

The utilitarian realization loads the utilitarian aka. Benthamite social welfare function, in which social welfare is equal to the discounted intertemporal sum of utility, which itself is a function of per capita consumption.

Limitations There are no known limitations.

Definitions

Objects

module-internal objects (A: utilitarian)
  Description Unit A
p02_inconvpen_lap
(ttot, all_regi, all_te)
Parameter for inconvenience penalty for local air pollution. \(T\$/TWa at Consumption of 1000\$/cap\) x
p02_inconvPen_Switch_Track
(ttot, all_regi)
Parameter to track magnitude of inconvenience penalty for bio/synfuel share switching \(share of consumption\) x
q02_inconvPen
(ttot, all_regi)
Calculate the inconvenience penalty v02_inconvPen x
q02_inconvPenCoalSolids
(ttot, all_regi)
Calculate the inconvenience penalty v02_inconvPen x
q02_inconvPenFeBioSwitch
(ttot, all_regi, all_enty, all_enty, all_te, emi_sectors, all_emiMkt)
Calculate the inconvenience penalty to avoid switching biomass and synfuel shares in hydrocarbons in buildings, transport and industry and emissions markets if costs are relatively close x
q02_welfare Regional welfare x
q02_welfareGlob Global welfare x
v02_inconvPen
(ttot, all_regi)
Inconvenience penalty in the welfare function, e.g. for air pollution. Unit: ?Utils? x
v02_inconvPenCoalSolids
(ttot, all_regi)
Inconvenience penalty in the welfare function, e.g. for air pollution. Unit: ?Utils? x
v02_NegInconvPenFeBioSwitch
(ttot, all_regi, all_enty, all_enty, emi_sectors, all_emiMkt)
Negative inconvenience penalty in the welfare function for bio/synfuel shares switch between sectors and emissions markets x
v02_PosInconvPenFeBioSwitch
(ttot, all_regi, all_enty, all_enty, emi_sectors, all_emiMkt)
Positive inconvenience penalty in the welfare function for bio/synfuel shares switch between sectors and emissions markets x
v02_sesoInconvPenSlack
(ttot, all_regi)
Slack to avoid negative inconvenience penalty for Coal Solids x
v02_welfare
(all_regi)
Regional welfare x

Sets

sets in use
  description
all_emiMkt emission markets
all_enty all types of quantities
all_in all inputs and outputs of the CES function
all_regi all regions
all_te all energy technologies, including from modules
cesParameter parameters of the CES functions and for calibration
emi_sectors comprehensive sector set used for more detailed emissions accounting (REMIND-EU) and for CH4 tier 1 scaling - potentially to be integrated with similar set all_exogEmi
enty(all_enty) all types of quantities
entyFe(all_enty) final energy types.
entyFe2Sector(all_enty, emi_sectors) final energy (stationary and transportation) mapping to sectors (industry, buildings, transportation and cdr)
entySe(all_enty) secondary energy types
entySeBio(all_enty) biomass secondary energy types
entySeFos(all_enty) secondary energy types from fossil primary energy
entySeSyn(all_enty) synfuel secondary energy types
in(all_in) All inputs and outputs of the CES function
modules all the available modules
pe2se(all_enty, all_enty, all_te) map primary energy carriers to secondary
regi(all_regi) all regions used in the solution process
se2fe(all_enty, all_enty, all_te) map secondary energy to end-use energy using a technology
sector2emiMkt(emi_sectors, all_emiMkt) mapping sectors to emission markets
t(ttot) modeling time, usually starting in 2005, but later for fixed delay runs
tall time index
te(all_te) energy technologies
ttot(tall) time index with spin up

Authors

See Also

01_macro, 15_climate, 23_capitalMarket, 31_fossil, 45_carbonprice, 51_internalizeDamages, 80_optimization, core

References