Skip to content

Used sets and varialbes in GAMS model:

Domain Name Index 1 Index 2 Index 3 Unit Value Comments Notation LOCATION
set market 3 years (31) nan Energy markets \(s\) GAMS
set marketCONV 1 31 nan Including electrical and thermal sectors(CONVel,CONVth) \(marketCONV\) GAMS
set marketCONVelec 1 numCrop(10) nan Electrical sector \(marketCONVelec\) GAMS
set Passenger numCrops + numResidue(21) years (31) nan Passenger sector \(passenger\) GAMS
set ship 1 years (31) nan 0 Marine sector \(ship\) GAMS
set Aviation 1 31 nan Aviation sector \(Aviation\) GAMS
set goods 1 31 nan 0..0.1 Freight \(Freight\) GAMS
set transRailRoad 1 31 nan 0..0.3 Road transportation sectors including Passenger,Freight,Rail $transRailRoad $ GAMS
set transAll 1 31 nan 0..0.1 All transportation sectors including Passenger,Freight,Aviation,Marine,Rail \(transAll\) GAMS
set CH4market 1 31 nan 0 CH4 \(CH4market\) GAMS
set H2market 1 31 nan 0 H2 sector \(H2market\) GAMS
set EthOHmarket 1 31 nan 0..0.3 Ethanol sector \(EthOHmarket\) GAMS
set shipGoods 1 31 nan 0 Sectors including Marine,Freight,Rai \(shipGoods\) GAMS
set fuel 1 31 nan 0..0.3 Fuel including CH4, Diesel, EtOH, LNG, H2, AviationFuel, Electric \(fuel\) GAMS
set fuelConventional 1 31 nan 0..0.3 Convetional fuels including(Diesel,EtOH,CH4) \(fuelConventional\) GAMS
set tech 1 31 nan 60 All 41 technologies \(tech\) GAMS
set techImport 1 31 nan 50 import \(import\) GAMS
s ghgRefCO2 MtCO2/ktCO2 0 GHG Reference for CO2 - It is either 1000 or 0. We set it to zero, which means we are going to use CO2 from renewables for PtX as input \(\varepsilon_{in}^{CO2}\) MATLAB\setData.m
s powerMixMax PJ 277 Maximal usage of power mix (15%) for EVs or hydrogen (if power mix is checked in the input file for these usages) \(\hat{E}^{mix}_{el}\) MATLAB\setData.m
g Demand numSectors (11) years (31) PJ It linearly change the energy demand from g.demandStart to g.demandEnd. It is available in techData.data.countryData \(\delta_{t,s}\) MATLAB\setData.m
s convEtaBiomSpec years (31) numCrops + numResidues (24) numTech (40) % The efficiency of each technology to convert the crop and residues into energy (H2 or electricity) from 2020..2050 \(\eta_{t,f,i}\) MATLAB\setData.m
s plantConvEta years (31) numTech (40) % efficiency of the technology from 2020 to 2050 \(\eta_{t,i}\) MATLAB\setData.m
s plantCapacityFactor years (31) numTech (40) % It is dividing plantFullLoadHours by 8760 = capacity factor \(CF_{t,i}\) MATLAB\setData.m
f resPot numResidue(12) years (31) PJ_feed Interpolates between f.resPotInit and f.resPotEnd(i) \(\phi_{t,r}\) MATLAB\setData.m
s heatInput 1 numTech (40) kWh/GJ The required heat \(\dot{m}^{th}_i\) MATLAB\setData.m
s powerInput 1 numTech (40) kWh/GJ The required power for each technology - Why don't we see any inputs (heat or power) for PtG? -> there iis no heat and power required as utilities. power is only used as feedstock \(\dot{m}^{el}_i\) MATLAB\setData.m
s feed2ndCO2Amount 1 numTech (40) t/GJ = Mt/PJ \(\dot{m}^{CO2}_i\) MATLAB\setData.m
s heatByprod years (31) numTech (40) GJ/GJ = PJ/PJ Interpolation from Init to High \(\dfrac{\eta_{t,i}^{th}}{\eta_{t,i}}\) MATLAB\setData.m
s feed2ndH2in years (31) numTech (40) kWh/GJ or GJ/GJ Interpolation from High to low \(\dot{m}^{H2}_{t,i}\) MATLAB\setData.m
s ghgEFPower 1 years (31) kgCO2eq/kWh The initial values were interpolated based on values for (2017,2018,2030,2050); however, the corresponidg years in the excel file are 2020; 2030; 2040; and 2050. I changed for better consistency. \(\varepsilon_{t}^{elMix}\) MATLAB\setData.m
s relativeFuelEconomy numTech (40) numSectors (11) GJ_out/GJ_in - it is calculated based on GJ/vkm or GJ/tkm The fuel economy (comparing the TTW) of all sectors compare to petrol/otto process. The tank-to-wheel (TTW) efficiency is defined as the ratio between energy output from the wheels and the energy content of the fuel in the tank. In here 1 means they will have normal performance. But for some sectors such as passenger transportation, some fuel can bring more energy like electricity or biodiesel from HVO and FAME \(w_{is}\) MATLAB\setData.m
s MJperKMavgICEV 1 years (31) MJ/vkm = PJ/Bvkm MJ per vehicle km considering future efficieny. from 1.9947 to 1.1968 MJ/km \(\tau_{t}\) MATLAB\setData.m
s passengerVehicleKMtot 1 years (31) vkm Vehicle-km needed to fulfill the demand BPkm \(\epsilon_t^{v-km}\) MATLAB\setData.m
s newVehicSharePass 1 years (31) % 7% share of new ICEV vehicles in each year \(S^{+v}_{t}\) MATLAB\setData.m
s cap0 years (31) numTech (40) TW Trimming the matrix for just 31 years; therefore, at the end of 30 years we have still some functioning technologies ->here the starting capacity linearly decomissions until its end of life. The current capacities are as a result of yearly capacity additions since 2000s. We assume that those yearly additions since then reach their end of life and decomission based on (capacity/lifetime). \(k^{0}_{t,i}\) MATLAB\setData.m
- surplusPowerVar timeslices(50) years (31) TWh This variable cuts the sorted -demand on each timeslice. It is cumulative load in the each time slices (sum of 175 hours with maximum demand). Focuses on negative load only (i.e., excess power). \(\hat{E}_{j,t}\) MATLAB\surplusPower.m
- posResLoadVar timeslices(50) years (31) TWh It focuses on positive load and not excess power - demand for dispachable power \(\epsilon^{el}_{j,t}\) MATLAB\surplusPower.m
f cropPriceGJ years (31) numCrop(10) numCat(3) €/GJ Three categories have similar values. They are redundent; however, to prevent GAMS from throwing errors, it is defined in this way. \(p_{t,f=Cr,c}\) MATLAB\feedCost.m
f resPrice years (31) numResidue(12) numCat(3) €/GJ = Mil €/PJ Minimum, Average and Maximum prices for each residue type \(p_{t,f=Re,c}\) MATLAB\feedCost.m
f powerPrice years (31) numType(2) numCat(3) €/GJ = Mil €/PJ 1 - power mix (only industry) 2- excess electricity which is 30% cheaper \(p_{t,f=el,c}\) MATLAB\feedCost.m
f landReqGJFuel years (31) numCrop(10) ha/GJ Land demand / biomass \(Y_{t,f}\) MATLAB\feedCost.m
f ghgCultivationTotGJfeed years (31) numCrop(10) kgCO2eq/GJ = KtCO2eq/PJ ghg emissions per tFM (kgCO2eq/tFM) / crop FM energy Content (GJ/tFM) \(\varepsilon_{t,f}\) MATLAB\ghgEmissions.m
f ghgTransport1GJfeed years (31) numCrop(10) kgCO2eq/GJ = KtCO2eq/PJ The unit is ghgTransport1 (kgCO2eq/tFM) / crop FM Energy contents (GJ/tFM) \(\varepsilon_t^{trans}\) MATLAB\ghgEmissions.m
s fuelGHGemission years (31) numTech (40) kgCO2eq/GJ = KtCO2eq/PJ equal to Cultivation emission (0) + Transport1 (0)+ P1 emissions+ P2 emissions - P2 byprod emissions + Transport 2 emissions. In here, the unit for Transport2 is not correct. \(\varepsilon_{t,i}\) MATLAB\ghgEmissions.m
s plantInvCostLevel years (31) numTech (40) Mil €/GW Plant cost per year if we distribute it to its life span \(I^{+}_{t,i}\) MATLAB\costDevNotLearning.m
s fuelMargCost years (31) numTech (40) €/GJ = Mil €/PJ Infrastructure cost (storage and transport) + O&M cost + labour + feedCost2nd - byproducts \(mc_{t,i}\) MATLAB\costDevNotLearning.m