Running a Simulation With Gams

Running a simulation in MIRAGE-e #

If the baseline consists in only one step, the Simul.gms file can be called directly from RefStep1 :

r=.\Restart\refstep1 s=.\Restart\sim gdx=.\GDX\sim lo=3 

Otherwise, Simul.gms has to be called from the RefStep2:

r=.\Restart\refstep2 s=.\Restart\sim gdx=.\GDX\sim lo=3 

Trade simulation #

Trade policy simulations are very easy to implement, as only the scenario in Simul.gms have to be changed, for instance, a full world-wide liberalization only requires the following lines :

Tariff_C(i,r,s,Temps,sim)$(ord(Temps)\>1) = 0;
Tariff_IC(i,r,s,Temps,sim)$(ord(Temps)\>1) = 0; 

Different trade-related parameters can be part of the simulation :

  • $Tariff^C$ and $Tariff^{IC}$ are tariff rates from MAcMap respectively affecting final and intermediate goods
  • $taxEXP^C$ and $taxEXP^{IC}$ are generic export taxes, and $taxMFA^C$ and $taxMFA^{IC}$ specific export taxes related to the multifibre agreement
  • $NTM^C$ and $NTM^{IC}$ are ad-valorem equivalents of NTMs in goods (see here)
  • $taxSER^C$ and $taxSER^{IC}$ are ad-valorem equivalents of NTMs in Services (see here)
  • $tCostTF$ is the ad-valorem equivalent for time spent in customs

Climate change policy simulation #

Climate change policy simulations require several additional steps

1. Define carbon markets #

Carbon market definition occurs at the calibration step: any change in markets require to run the model from Calib.gms

All GHG mitigation policies in MIRAGE-e 2 are centered around carbon markets, all indexed by the set c_em. A carbon market is just a mapping of emissions to the perimeter of their climate change policy.

Definition of carbon markets #

The carbon markets have to be written directly in the file data/maps/c_Markets.gms following the example:

\* Example
cEUETS "EU ETS sectors" cEUNonETS "EU Non-ETS sectors and
households" cCAN "Canadian market" cUSA "USA market" 

Mapping of sectors to carbon markets #

The mapping of sectors to carbon markets can be done in different ways:

  • Direct mapping in the file data/maps/map_jrCarbon.gms as in the example :
OthManuf.France.cEUETS OthEITE.France.cEUETS
Chemistry.France.cEUETS Minerals.France.cEUETS OthManuf.OthEU27.cEUETS
OthEITE.OthEU27.cEUETS Chemistry.OthEU27.cEUETS Minerals.OthEU27.cEUETS
  • Or by code in the file data/maps/map_Carbon.gms :
Map_carb(j,"USA","cUSA") = yes; Map_carb(j,r,'cEUNonETS')$(not
Map_carb(j,r,'cEUETS') and (sameas(r,"France") or

                              = yes;

Mapping of households emissions to carbon markets #

Mapping of households to carbon markets is done in the file data/maps/map_hCarbon.gms, e.g.:

France.cEUNonETS OthEU27.cEUNonETS 

2. Define the policy simulation #

Principle #

GHG mitigation policies are defined on a carbon-market basis, and can be of two different types in MIRAGE-e 2:

  • A carbon tax -> set the $GHGTax$ parameter
  • A cap and trade system -> set the $GHGCap$ and $GHGIntensityCap$ parameters
    • $GHGCap$ caps the level of emission
    • $GHGIntensityCap$ caps the GHG-intensity of GDP

To set a carbon policy, you simply need to set one of these variables to a value different from 0, e.g.:

GHGTax("cEUETS",Temps,sim)$(ord(Temps)\>1) = 0.01; 

More convenient: the batinclude utility #

In addition, MIRAGE-e proposes a batinclude utility ProgGMS/GHGTarget.gms to ease the implementation of linear emission capping. This batinclude propose GHG caps that can can be of three different types:

  • Aboslute : the target reduction is labeled in percetage change from a reference emissions in the past
  • Intensity : the target reduction is labeled as a percentage reduction in GHG-intensity of GDP from a reference intensity in the past
  • BAU : the target reduction is labeled as a percentage reduction in emissions in a future date, compared to the BAU scenario

The syntax is the following:

./ProgGMS/GHGTarget.gms %Market% %Reduction_type% %Reference_year%
%Init_year% %End_year% %Percentage_cut% 
``` Where:

-   `%Market%` is one of the carbon market defined as explained above
-   `%Type%` is the type of commitment, and can be `Absolute`,
    `Intensity` or `BAU`
-   `%Reference_year%` is the basis for computing the reduction
    commitment (not necessary for a BAU-type commitment)
-   `%Init_year%` is the first year where the carbon policy will be
-   `%End_year%` if the last year the carbon policy will be implemented
-   `%Percentage_cut%` is the percentage reduction (1 means 100%
    reduction) compared to the reference_year

Here is an example for the three different cases:

``` gams
$batinclude ./ProgGMS/GHGTarget.gms cCanada Absolute "2011" "2011" "2030" 0.424412686089317 
$batinclude ./ProgGMS/GHGTarget.gms cChina Intensity "2011" "2011" "2030" 0.515679332882182
$batinclude ./ProgGMS/GHGTarget.gms cMexico BAU "0" "2011" "2030" 0.22 

Specific simulations #

Entering / leaving the EU (Brexit) #


NTMs in a free trade agreement #


Paris Agreement on climate change #

The Paris agreement on climate change is a policy used quite often, especially when integrated in the baseline for any trade policy evaluation.

Default Paris agreement #

The default Paris agreement implementation only works with the standard Paris agreement aggregation of regions and sectors. In case of a change in sectors, please check you defined correctly the carbon markets. In case the region aggregation has changed among non-EU Paris agreement signatories, proceed as with any change in the Paris agreement below.

For the case of the Paris agreement, a specific GAMS file is prepared for an easy integration in the baseline (RefStep2.gms) or as a policy simulation (Simul.gms) : ProgGMS/ParisAgreement.gms. This file proposes an implementation of the Paris Agreement in a standard aggregation, and only need to be called from Simul.gms in case of a policy simulation or RefStep2.gms in case of a baseline:

$include ./ProgGMS/ParisAgreement.gms 

This file contains:

  • The objectives of non-EU regions converted into emission reduction from 2011 emissions (see below)
  • The specific objectives for EU and other ETS regions
    • EU-ETS sectors respect their own reduction objective
    • The commitment for the rest of the economy (other sectors and households) are set to compensate the difference with the Paris agreement commitment.

Changing the Paris agreement #

All the conversion of the Paris agreement commitments to reductions compared to 2011 are done in R in the NDCs_R utility. Base NDC data (from as well as emissions data used for the conversion are handled directly in this R utility.

  1. Clone the utility from git repository mirage-util-ndcs

  2. Take the CorMM.txt file generated by the aggregation program and copy is inside the data directory of mirage-util-ndcs

  3. Run the NDC aggregation utility

  4. Adapt the ParisAgreement.gms file such that the $batinclude lines match the NDC utility output located in output/NDCs_MIRAGE.csv