From a36c8309442745ea3041e4f9372486a3425221c9 Mon Sep 17 00:00:00 2001 From: Robert Salzwedel Date: Fri, 20 Feb 2026 10:46:33 +0100 Subject: [PATCH 1/8] started implementing manure --- core/sets.gms | 186 +++++++++++++----------- modules/30_biomass/magpie/datainput.gms | 2 + modules/30_biomass/magpie/presolve.gms | 2 +- modules/30_biomass/magpie/sets.gms | 1 + 4 files changed, 108 insertions(+), 83 deletions(-) diff --git a/core/sets.gms b/core/sets.gms index d58f5cbd1a..b923b689f9 100755 --- a/core/sets.gms +++ b/core/sets.gms @@ -170,6 +170,7 @@ all_te "all energy technologies, including from modules" bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" + biodigest "anaerobic digestion" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" @@ -330,6 +331,7 @@ all_enty "all types of quantities" pebiolc "PE biomass lignocellulosic" pebios "PE biomass sugar and starch" pebioil "PE biomass sunflowers, palm oil, etc" + pemanure "PE manure" all_seso "all to SE solids" sesofos "SE solids from fossil PE" @@ -665,20 +667,20 @@ sets ext_regi "extended regions list (includes subsets of H12 regions)" / GLO, - LAM_regi,OAS_regi,SSA_regi,EUR_regi,NEU_regi,MEA_regi,REF_regi,CAZ_regi,CHA_regi,IND_regi,JPN_regi,USA_regi, - LAM,OAS,SSA,EUR,NEU,MEA,REF,CAZ,CHA,IND,JPN,USA + LAM_regi,OAS_regi,SSA_regi,EUR_regi,NEU_regi,MEA_regi,REF_regi,CAZ_regi,CHA_regi,IND_regi,JPN_regi,USA_regi,EU27_regi,NEU_UKI_regi, + OAS,ENC,NES,MEA,SSA,LAM,REF,CAZ,EWN,ECS,CHA,ESC,ECE,FRA,DEU,UKI,NEN,IND,JPN,ESW,USA / - all_regi "all regions" /LAM,OAS,SSA,EUR,NEU,MEA,REF,CAZ,CHA,IND,JPN,USA/ + all_regi "all regions" /OAS,ENC,NES,MEA,SSA,LAM,REF,CAZ,EWN,ECS,CHA,ESC,ECE,FRA,DEU,UKI,NEN,IND,JPN,ESW,USA/ regi_group(ext_regi,all_regi) "region groups (regions that together corresponds to a H12 region)" / - GLO.( LAM,OAS,SSA,EUR,NEU,MEA,REF,CAZ,CHA,IND,JPN,USA ) + GLO.( OAS,ENC,NES,MEA,SSA,LAM,REF,CAZ,EWN,ECS,CHA,ESC,ECE,FRA,DEU,UKI,NEN,IND,JPN,ESW,USA ) LAM_regi .(LAM) OAS_regi .(OAS) SSA_regi .(SSA) - EUR_regi .(EUR) - NEU_regi .(NEU) + EUR_regi .(ENC,EWN,ECS,ESC,ECE,FRA,DEU,UKI,ESW) + NEU_regi .(NES,NEN) MEA_regi .(MEA) REF_regi .(REF) CAZ_regi .(CAZ) @@ -686,102 +688,110 @@ sets IND_regi .(IND) JPN_regi .(JPN) USA_regi .(USA) + EU27_regi .(ENC,EWN,ECS,ESC,ECE,FRA,DEU,ESW) + NEU_UKI_regi .(NES,NEN,UKI) / iso "list of iso countries" / - ABW,AFG,AGO,AIA,ALA,ALB,AND,ARE,ARG,ARM, - ASM,ATA,ATF,ATG,AUS,AUT,AZE,BDI,BEL,BEN, - BES,BFA,BGD,BGR,BHR,BHS,BIH,BLM,BLR,BLZ, - BMU,BOL,BRA,BRB,BRN,BTN,BVT,BWA,CAF,CAN, - CCK,CHN,CHE,CHL,CIV,CMR,COD,COG,COK,COL, - COM,CPV,CRI,CUB,CUW,CXR,CYM,CYP,CZE,DEU, - DJI,DMA,DNK,DOM,DZA,ECU,EGY,ERI,ESH,ESP, - EST,ETH,FIN,FJI,FLK,FRA,FRO,FSM,GAB,GBR, - GEO,GGY,GHA,GIB,GIN,GLP,GMB,GNB,GNQ,GRC, - GRD,GRL,GTM,GUF,GUM,GUY,HKG,HMD,HND,HRV, - HTI,HUN,IDN,IMN,IND,IOT,IRL,IRN,IRQ,ISL, - ISR,ITA,JAM,JEY,JOR,JPN,KAZ,KEN,KGZ,KHM, - KIR,KNA,KOR,KWT,LAO,LBN,LBR,LBY,LCA,LIE, - LKA,LSO,LTU,LUX,LVA,MAC,MAF,MAR,MCO,MDA, - MDG,MDV,MEX,MHL,MKD,MLI,MLT,MMR,MNE,MNG, - MNP,MOZ,MRT,MSR,MTQ,MUS,MWI,MYS,MYT,NAM, - NCL,NER,NFK,NGA,NIC,NIU,NLD,NOR,NPL,NRU, - NZL,OMN,PAK,PAN,PCN,PER,PHL,PLW,PNG,POL, - PRI,PRK,PRT,PRY,PSE,PYF,QAT,REU,ROU,RUS, - RWA,SAU,SDN,SEN,SGP,SGS,SHN,SJM,SLB,SLE, - SLV,SMR,SOM,SPM,SRB,SSD,STP,SUR,SVK,SVN, - SWE,SWZ,SXM,SYC,SYR,TCA,TCD,TGO,THA,TJK, - TKL,TKM,TLS,TON,TTO,TUN,TUR,TUV,TWN,TZA, - UGA,UKR,UMI,URY,USA,UZB,VAT,VCT,VEN,VGB, - VIR,VNM,VUT,WLF,WSM,YEM,ZAF,ZMB,ZWE / + AFG,ALA,ALB,DZA,ASM,AND,AGO,AIA,ATA,ATG, + ARG,ARM,ABW,AUS,AUT,AZE,BHS,BHR,BGD,BRB, + BLR,BEL,BLZ,BEN,BMU,BTN,BOL,BES,BIH,BWA, + BVT,BRA,IOT,BRN,BGR,BFA,BDI,KHM,CMR,CAN, + CPV,CYM,CAF,TCD,CHL,CHN,CXR,CCK,COL,COM, + COG,COD,COK,CRI,CIV,HRV,CUB,CUW,CYP,CZE, + DNK,DJI,DMA,DOM,ECU,EGY,SLV,GNQ,ERI,EST, + ETH,FLK,FRO,FJI,FIN,FRA,GUF,PYF,ATF,GAB, + GMB,GEO,DEU,GHA,GIB,GRC,GRL,GRD,GLP,GUM, + GTM,GGY,GIN,GNB,GUY,HTI,HMD,VAT,HND,HKG, + HUN,ISL,IND,IDN,IRN,IRQ,IRL,IMN,ISR,ITA, + JAM,JPN,JEY,JOR,KAZ,KEN,KIR,PRK,KOR,KWT, + KGZ,LAO,LVA,LBN,LSO,LBR,LBY,LIE,LTU,LUX, + MAC,MKD,MDG,MWI,MYS,MDV,MLI,MLT,MHL,MTQ, + MRT,MUS,MYT,MEX,FSM,MDA,MCO,MNG,MNE,MSR, + MAR,MOZ,MMR,NAM,NRU,NPL,NLD,NCL,NZL,NIC, + NER,NGA,NIU,NFK,MNP,NOR,OMN,PAK,PLW,PSE, + PAN,PNG,PRY,PER,PHL,PCN,POL,PRT,PRI,QAT, + REU,ROU,RUS,RWA,BLM,SHN,KNA,LCA,MAF,SPM, + VCT,WSM,SMR,STP,SAU,SEN,SRB,SYC,SLE,SGP, + SXM,SVK,SVN,SLB,SOM,ZAF,SGS,SSD,ESP,LKA, + SDN,SUR,SJM,SWZ,SWE,CHE,SYR,TWN,TJK,TZA, + THA,TLS,TGO,TKL,TON,TTO,TUN,TUR,TKM,TCA, + TUV,UGA,UKR,ARE,GBR,USA,UMI,URY,UZB,VUT, + VEN,VNM,VGB,VIR,WLF,ESH,YEM,ZMB,ZWE / regi2iso(all_regi,iso) "mapping regions to iso countries" / - LAM . (ABW,AIA,ARG,ATA,ATG,BES,BHS,BLM,BLZ,BMU) - LAM . (BOL,BRA,BRB,BVT,CHL,COL,CRI,CUB,CUW,CYM) - LAM . (DMA,DOM,ECU,FLK,GLP,GRD,GTM,GUF,GUY,HND) - LAM . (HTI,JAM,KNA,LCA,MAF,MEX,MSR,MTQ,NIC,PAN) - LAM . (PER,PRI,PRY,SGS,SLV,SUR,SXM,TCA,TTO,URY) - LAM . (VCT,VEN,VGB,VIR) - OAS . (AFG,ASM,ATF,BGD,BRN,BTN,CCK,COK,CXR,FJI) - OAS . (FSM,GUM,IDN,IOT,KHM,KIR,KOR,LAO,LKA,MDV) - OAS . (MHL,MMR,MNG,MNP,MYS,NCL,NFK,NIU,NPL,NRU) - OAS . (PAK,PCN,PHL,PLW,PNG,PRK,PYF,SGP,SLB,THA) - OAS . (TKL,TLS,TON,TUV,UMI,VNM,VUT,WLF,WSM) - SSA . (AGO,BDI,BEN,BFA,BWA,CAF,CIV,CMR,COD,COG) - SSA . (COM,CPV,DJI,ERI,ETH,GAB,GHA,GIN,GMB,GNB) - SSA . (GNQ,KEN,LBR,LSO,MDG,MLI,MOZ,MRT,MUS,MWI) - SSA . (MYT,NAM,NER,NGA,REU,RWA,SEN,SHN,SLE,SOM) - SSA . (SSD,STP,SWZ,SYC,TCD,TGO,TZA,UGA,ZAF,ZMB) - SSA . (ZWE) - EUR . (ALA,AUT,BEL,BGR,CYP,CZE,DEU,DNK,ESP,EST) - EUR . (FIN,FRA,FRO,GBR,GGY,GIB,GRC,HRV,HUN,IMN) - EUR . (IRL,ITA,JEY,LTU,LUX,LVA,MLT,NLD,POL,PRT) - EUR . (ROU,SVK,SVN,SWE) - NEU . (ALB,AND,BIH,CHE,GRL,ISL,LIE,MCO,MKD,MNE) - NEU . (NOR,SJM,SMR,SRB,TUR,VAT) - MEA . (ARE,BHR,DZA,EGY,ESH,IRN,IRQ,ISR,JOR,KWT) - MEA . (LBN,LBY,MAR,OMN,PSE,QAT,SAU,SDN,SYR,TUN) + OAS . (AFG,ASM,BGD,BTN,IOT,BRN,KHM,CXR,CCK,COK) + OAS . (FJI,PYF,ATF,GUM,IDN,KIR,PRK,KOR,LAO,MYS) + OAS . (MDV,MHL,FSM,MNG,MMR,NRU,NPL,NCL,NIU,NFK) + OAS . (MNP,PAK,PLW,PNG,PHL,PCN,WSM,SGP,SLB,LKA) + OAS . (THA,TLS,TKL,TON,TUV,UMI,VUT,VNM,WLF) + ENC . (ALA,DNK,FRO,FIN,SWE) + NES . (ALB,AND,BIH,VAT,MKD,MCO,MNE,SMR,SRB,TUR) + MEA . (DZA,BHR,EGY,IRN,IRQ,ISR,JOR,KWT,LBN,LBY) + MEA . (MAR,OMN,PSE,QAT,SAU,SDN,SYR,TUN,ARE,ESH) MEA . (YEM) + SSA . (AGO,BEN,BWA,BFA,BDI,CMR,CPV,CAF,TCD,COM) + SSA . (COG,COD,CIV,DJI,GNQ,ERI,ETH,GAB,GMB,GHA) + SSA . (GIN,GNB,KEN,LSO,LBR,MDG,MWI,MLI,MRT,MUS) + SSA . (MYT,MOZ,NAM,NER,NGA,REU,RWA,SHN,STP,SEN) + SSA . (SYC,SLE,SOM,ZAF,SSD,SWZ,TZA,TGO,UGA,ZMB) + SSA . (ZWE) + LAM . (AIA,ATA,ATG,ARG,ABW,BHS,BRB,BLZ,BMU,BOL) + LAM . (BES,BVT,BRA,CYM,CHL,COL,CRI,CUB,CUW,DMA) + LAM . (DOM,ECU,SLV,FLK,GUF,GRD,GLP,GTM,GUY,HTI) + LAM . (HND,JAM,MTQ,MEX,MSR,NIC,PAN,PRY,PER,PRI) + LAM . (BLM,KNA,LCA,MAF,VCT,SXM,SGS,SUR,TTO,TCA) + LAM . (URY,VEN,VGB,VIR) REF . (ARM,AZE,BLR,GEO,KAZ,KGZ,MDA,RUS,TJK,TKM) REF . (UKR,UZB) CAZ . (AUS,CAN,HMD,NZL,SPM) + EWN . (AUT,BEL,LUX,NLD) + ECS . (BGR,HRV,HUN,ROU,SVN) CHA . (CHN,HKG,MAC,TWN) + ESC . (CYP,GRC,ITA,MLT) + ECE . (CZE,EST,LVA,LTU,POL,SVK) + FRA . (FRA) + DEU . (DEU) + UKI . (GIB,GGY,IRL,IMN,JEY,GBR) + NEN . (GRL,ISL,LIE,NOR,SJM,CHE) IND . (IND) JPN . (JPN) + ESW . (PRT,ESP) USA . (USA) / iso_regi "all iso countries and EU and greater China region" / EUR,CHA, - ABW,AFG,AGO,AIA,ALA,ALB,AND,ARE,ARG,ARM, - ASM,ATA,ATF,ATG,AUS,AUT,AZE,BDI,BEL,BEN, - BES,BFA,BGD,BGR,BHR,BHS,BIH,BLM,BLR,BLZ, - BMU,BOL,BRA,BRB,BRN,BTN,BVT,BWA,CAF,CAN, - CCK,CHN,CHE,CHL,CIV,CMR,COD,COG,COK,COL, - COM,CPV,CRI,CUB,CUW,CXR,CYM,CYP,CZE,DEU, - DJI,DMA,DNK,DOM,DZA,ECU,EGY,ERI,ESH,ESP, - EST,ETH,FIN,FJI,FLK,FRA,FRO,FSM,GAB,GBR, - GEO,GGY,GHA,GIB,GIN,GLP,GMB,GNB,GNQ,GRC, - GRD,GRL,GTM,GUF,GUM,GUY,HKG,HMD,HND,HRV, - HTI,HUN,IDN,IMN,IND,IOT,IRL,IRN,IRQ,ISL, - ISR,ITA,JAM,JEY,JOR,JPN,KAZ,KEN,KGZ,KHM, - KIR,KNA,KOR,KWT,LAO,LBN,LBR,LBY,LCA,LIE, - LKA,LSO,LTU,LUX,LVA,MAC,MAF,MAR,MCO,MDA, - MDG,MDV,MEX,MHL,MKD,MLI,MLT,MMR,MNE,MNG, - MNP,MOZ,MRT,MSR,MTQ,MUS,MWI,MYS,MYT,NAM, - NCL,NER,NFK,NGA,NIC,NIU,NLD,NOR,NPL,NRU, - NZL,OMN,PAK,PAN,PCN,PER,PHL,PLW,PNG,POL, - PRI,PRK,PRT,PRY,PSE,PYF,QAT,REU,ROU,RUS, - RWA,SAU,SDN,SEN,SGP,SGS,SHN,SJM,SLB,SLE, - SLV,SMR,SOM,SPM,SRB,SSD,STP,SUR,SVK,SVN, - SWE,SWZ,SXM,SYC,SYR,TCA,TCD,TGO,THA,TJK, - TKL,TKM,TLS,TON,TTO,TUN,TUR,TUV,TWN,TZA, - UGA,UKR,UMI,URY,USA,UZB,VAT,VCT,VEN,VGB, - VIR,VNM,VUT,WLF,WSM,YEM,ZAF,ZMB,ZWE / + AFG,ALA,ALB,DZA,ASM,AND,AGO,AIA,ATA,ATG, + ARG,ARM,ABW,AUS,AUT,AZE,BHS,BHR,BGD,BRB, + BLR,BEL,BLZ,BEN,BMU,BTN,BOL,BES,BIH,BWA, + BVT,BRA,IOT,BRN,BGR,BFA,BDI,KHM,CMR,CAN, + CPV,CYM,CAF,TCD,CHL,CHN,CXR,CCK,COL,COM, + COG,COD,COK,CRI,CIV,HRV,CUB,CUW,CYP,CZE, + DNK,DJI,DMA,DOM,ECU,EGY,SLV,GNQ,ERI,EST, + ETH,FLK,FRO,FJI,FIN,FRA,GUF,PYF,ATF,GAB, + GMB,GEO,DEU,GHA,GIB,GRC,GRL,GRD,GLP,GUM, + GTM,GGY,GIN,GNB,GUY,HTI,HMD,VAT,HND,HKG, + HUN,ISL,IND,IDN,IRN,IRQ,IRL,IMN,ISR,ITA, + JAM,JPN,JEY,JOR,KAZ,KEN,KIR,PRK,KOR,KWT, + KGZ,LAO,LVA,LBN,LSO,LBR,LBY,LIE,LTU,LUX, + MAC,MKD,MDG,MWI,MYS,MDV,MLI,MLT,MHL,MTQ, + MRT,MUS,MYT,MEX,FSM,MDA,MCO,MNG,MNE,MSR, + MAR,MOZ,MMR,NAM,NRU,NPL,NLD,NCL,NZL,NIC, + NER,NGA,NIU,NFK,MNP,NOR,OMN,PAK,PLW,PSE, + PAN,PNG,PRY,PER,PHL,PCN,POL,PRT,PRI,QAT, + REU,ROU,RUS,RWA,BLM,SHN,KNA,LCA,MAF,SPM, + VCT,WSM,SMR,STP,SAU,SEN,SRB,SYC,SLE,SGP, + SXM,SVK,SVN,SLB,SOM,ZAF,SGS,SSD,ESP,LKA, + SDN,SUR,SJM,SWZ,SWE,CHE,SYR,TWN,TJK,TZA, + THA,TLS,TGO,TKL,TON,TTO,TUN,TUR,TKM,TCA, + TUV,UGA,UKR,ARE,GBR,USA,UMI,URY,UZB,VUT, + VEN,VNM,VGB,VIR,WLF,ESH,YEM,ZMB,ZWE / map_iso_regi(iso_regi,all_regi) "mapping from iso countries to regions that represent country" / - EUR . EUR CHA . CHA + FRA . FRA + DEU . DEU IND . IND JPN . JPN USA . USA @@ -1099,6 +1109,7 @@ te(all_te) "energy technologies" bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" + biodigest "anaerobic digestion" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" @@ -1211,6 +1222,7 @@ teAdj(all_te) "technologies with adjustment costs on capacity addition bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" + biodigest "anaerobic digestion" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" @@ -1342,6 +1354,7 @@ teBio(all_te) "biomass energy systems technologies" bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" + biodigest "anaerobic digestion" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" @@ -1373,6 +1386,7 @@ teRe(all_te) "renewable technologies including biomass" bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" + biodigest "anaerobic digestion" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" @@ -1577,6 +1591,7 @@ enty(all_enty) "all types of quantities" pesol "primary energy solar" pebiolc "primary energy biomass lignocellulosic" pebios "primary energy biomass sugar nd starch" + pemanure "PE manure" pebioil "primary energy biomass sunflowers, palm oil, etc" seliqbio "secondary energy liquids from biomass (ex. ethanol)" seliqfos "secondary energy liquids from fossil primary energy (ex. petrol and diesel)" @@ -1675,12 +1690,14 @@ entyPe(all_enty) "Primary energy types (PE)" pesol "PE solar" pebiolc "PE biomass lignocellulosic" pebios "PE biomass sugar and starch" + pemanure "PE manure" pebioil "PE biomass sunflowers, palm oil, etc" / peBio(all_enty) "biomass primary energy types" / pebiolc "PE biomass lignocellulosic" pebios "PE biomass sugar and starch" + pemanure "PE manure" pebioil "PE biomass sunflowers, palm oil, etc" / peRe(all_enty) "Renewable primary energy sources" @@ -1691,6 +1708,7 @@ peRe(all_enty) "Renewable primary energy sources" pesol "PE solar" pebiolc "PE biomass lignocellulosic" pebios "PE biomass sugar and starch" + pemanure "PE manure" pebioil "PE biomass sunflowers, palm oil, etc" / peFos(all_enty) "primary energy fossil fuels" @@ -2358,6 +2376,7 @@ pe2se(all_enty,all_enty,all_te) "map primary energy carriers to secondary" pebiolc.seliqbio.bioftrec pebiolc.seliqbio.bioftcrec pebioil.seliqbio.biodiesel + pemanure.seel.biodigest pebios.seliqbio.bioeths pebiolc.seliqbio.bioethl peoil.seel.dot @@ -2605,9 +2624,11 @@ emi2te(all_enty,all_enty,all_te,all_enty) " map emissions to technologies" pebiolc.seliqbio.bioethl.bc pebios.seliqbio.bioeths.bc pebioil.seliqbio.biodiesel.bc + pemanure.seel.biodigest.bc pebiolc.seliqbio.bioethl.oc pebios.seliqbio.bioeths.oc pebioil.seliqbio.biodiesel.oc + pemanure.seel.biodigest.oc pebiolc.seh2.bioh2c.n2o pebiolc.seel.biochp.n2o pebiolc.sehe.biohp.n2o @@ -2755,6 +2776,7 @@ pe2rlf(all_enty,rlf) "map exhaustible energy to grades for qm_fuel2pe" pebiolc.(1*2) pebios.(5) pebioil.(5) + pemanure.(5) (peur,pegeo,pehyd,pewin,pesol).1 / diff --git a/modules/30_biomass/magpie/datainput.gms b/modules/30_biomass/magpie/datainput.gms index 43a17cf63e..23b4dd12e4 100644 --- a/modules/30_biomass/magpie/datainput.gms +++ b/modules/30_biomass/magpie/datainput.gms @@ -25,6 +25,7 @@ $offdelim *** and for pebios, pebioil (defined only for 5th grade) p30_datapebio(regi,"pebios","5","cost",ttot)$(ttot.val ge 2005) = 12.4 * s30_D2TD / sm_GJ_2_TWa; p30_datapebio(regi,"pebioil","5","cost",ttot)$(ttot.val ge 2005) = 15.8 * s30_D2TD / sm_GJ_2_TWa; +p30_datapebio(regi,"pemanure","5","cost",ttot)$(ttot.val ge 2005) = 12 * s30_D2TD / sm_GJ_2_TWa; p30_datapebio(regi,"pebiolc","2","cost",ttot)$(ttot.val ge 2005) = 1 * s30_D2TD / sm_GJ_2_TWa; *** maxprod pebiolc: choose SSP and convert from PJ/yr to TWa/yr @@ -33,6 +34,7 @@ p30_datapebio(regi,"pebiolc","2","maxprod",ttot)$(ttot.val ge 2005) = p30_biolcR *** maxprod 1st gen: use regional maxprod data from MAgPIE for 1st generation energy carriers (pebios, pebioil) p30_datapebio(regi,"pebios","5","maxprod",ttot)$(ttot.val ge 2005) = p30_bio1stgen(ttot,regi,"pebios") * sm_EJ_2_TWa / 1000; p30_datapebio(regi,"pebioil","5","maxprod",ttot)$(ttot.val ge 2005) = p30_bio1stgen(ttot,regi,"pebioil") * sm_EJ_2_TWa / 1000; +p30_datapebio(regi,"pemanure","5","maxprod",ttot)$(ttot.val ge 2005) = 100 * sm_EJ_2_TWa / 1000; # this is pretending that all techs have 100 PJ of Manure available. display p30_datapebio; p30_pebiolc_pricemag(ttot,regi) = 0; diff --git a/modules/30_biomass/magpie/presolve.gms b/modules/30_biomass/magpie/presolve.gms index c8bc4b06ae..abed8c9ca7 100644 --- a/modules/30_biomass/magpie/presolve.gms +++ b/modules/30_biomass/magpie/presolve.gms @@ -138,7 +138,7 @@ vm_fuExtr.l(ttot,regi,"pebiolc","1") = p30_pebiolc_demand_helper(ttot,regi); *** if it was generated from fossil fuels with an average efficiency of 40%. p30_demPe(ttot,regi) = - sum(pe2se(enty,enty2,te)$(sameas(enty,"peoil") OR sameas(enty,"pecoal") OR sameas(enty,"pegas") OR sameas(enty,"pebiolc") OR sameas(enty,"pebios") OR sameas(enty,"pebioil")), + sum(pe2se(enty,enty2,te)$(sameas(enty,"peoil") OR sameas(enty,"pecoal") OR sameas(enty,"pegas") OR sameas(enty,"pebiolc") OR sameas(enty,"pebios") OR sameas(enty,"pebioil") OR sameas(enty,"pemanure")), vm_demPe.l(ttot,regi,enty,enty2,te) ) + sum(entySe, diff --git a/modules/30_biomass/magpie/sets.gms b/modules/30_biomass/magpie/sets.gms index a2f6364d48..e2597c9b87 100644 --- a/modules/30_biomass/magpie/sets.gms +++ b/modules/30_biomass/magpie/sets.gms @@ -14,6 +14,7 @@ peren2rlf30(all_enty,rlf) "map biomass energy to grades" / pebios.(5) pebioil.(5) + pemanure.(5) pebiolc.2 "residues from agriculture and forestry" / From 3f840b3de1fe1a13f2e30d2c8ded6851aa4ccc97 Mon Sep 17 00:00:00 2001 From: Robert Salzwedel Date: Fri, 20 Feb 2026 14:38:27 +0100 Subject: [PATCH 2/8] minor change --- modules/30_biomass/magpie/datainput.gms | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/30_biomass/magpie/datainput.gms b/modules/30_biomass/magpie/datainput.gms index 23b4dd12e4..fc9df78ba3 100644 --- a/modules/30_biomass/magpie/datainput.gms +++ b/modules/30_biomass/magpie/datainput.gms @@ -32,9 +32,10 @@ p30_datapebio(regi,"pebiolc","2","cost",ttot)$(ttot.val ge 2005) = 1 * s30_D2 p30_datapebio(regi,"pebiolc","2","maxprod",ttot)$(ttot.val ge 2005) = p30_biolcResidues(ttot,regi,"%cm_LU_emi_scen%") * sm_EJ_2_TWa / 1000; *** maxprod 1st gen: use regional maxprod data from MAgPIE for 1st generation energy carriers (pebios, pebioil) +*** RoSa: The last one should be pretending that there is 100 PJ of Manure available in each region. p30_datapebio(regi,"pebios","5","maxprod",ttot)$(ttot.val ge 2005) = p30_bio1stgen(ttot,regi,"pebios") * sm_EJ_2_TWa / 1000; p30_datapebio(regi,"pebioil","5","maxprod",ttot)$(ttot.val ge 2005) = p30_bio1stgen(ttot,regi,"pebioil") * sm_EJ_2_TWa / 1000; -p30_datapebio(regi,"pemanure","5","maxprod",ttot)$(ttot.val ge 2005) = 100 * sm_EJ_2_TWa / 1000; # this is pretending that all techs have 100 PJ of Manure available. +p30_datapebio(regi,"pemanure","5","maxprod",ttot)$(ttot.val ge 2005) = 100 * sm_EJ_2_TWa / 1000; display p30_datapebio; p30_pebiolc_pricemag(ttot,regi) = 0; From a837040c33f65e1a227a797e3f7f50c979678d95 Mon Sep 17 00:00:00 2001 From: Robert Salzwedel Date: Fri, 20 Feb 2026 15:00:03 +0100 Subject: [PATCH 3/8] Updated Tech data --- core/input/generisdata_vintages.prn | 4 ++-- modules/05_initialCap/on/preloop.gms | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/core/input/generisdata_vintages.prn b/core/input/generisdata_vintages.prn index d79369e3e8..6999471599 100644 --- a/core/input/generisdata_vintages.prn +++ b/core/input/generisdata_vintages.prn @@ -74,8 +74,8 @@ $offtext 36 1.0 41 1.0 -+ biopyronly biopyrhe biopyrchp biopyrliq -1 1.0 1.0 1.0 1.0 ++ biopyronly biopyrhe biopyrchp biopyrliq biodigest +1 1.0 1.0 1.0 1.0 1.0 + hydro windon windoff spv solhe csp elh2 geohdr geohe h2turb h22ch4 MeOH 1 5.0 10.0 10.0 10.0 4.5 1.0 1.0 10.0 10.0 1 1.0 1.0 diff --git a/modules/05_initialCap/on/preloop.gms b/modules/05_initialCap/on/preloop.gms index 560dca5e6c..6042bf2a59 100644 --- a/modules/05_initialCap/on/preloop.gms +++ b/modules/05_initialCap/on/preloop.gms @@ -428,7 +428,7 @@ pm_eta_conv(ttot,regi,"elh2") = pm_dataeta(ttot,regi,"elh2"); *** happening). pm_eta_conv(ttot,regi,"bioeths") = fm_dataglob("eta","bioeths"); pm_eta_conv(ttot,regi,"biodiesel") = fm_dataglob("eta","biodiesel"); - +pm_eta_conv(ttot,regi,"biodigest") = fm_dataglob("eta","biodigest"); *** Increase SE2FE efficiency for gases in DEU following AGEB data from 2020 *** increase incrementally from IEA data in 2005 to avoid inconsistencies with 2005 IEA calibration From 2bd6f486a869d6098314d05c921632f80fbbe60c Mon Sep 17 00:00:00 2001 From: Robert Salzwedel Date: Mon, 15 Jun 2026 17:17:03 +0200 Subject: [PATCH 4/8] Added capacity factor --- core/datainput.gms | 3 +++ core/input/generisdata_tech.prn | 16 ++++++++-------- core/sets.gms | 4 ++-- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/core/datainput.gms b/core/datainput.gms index 5a3e9c8138..b8499f3023 100644 --- a/core/datainput.gms +++ b/core/datainput.gms @@ -760,6 +760,9 @@ pm_cf(ttot,regi,"h2turbVRE")$(ttot.val ge 2025) = pm_cf(ttot,regi,"ngt"); pm_cf(ttot,regi,"tdh2b") = pm_cf(ttot,regi,"tdh2s"); pm_cf(ttot,regi,"tdh2i") = pm_cf(ttot,regi,"tdh2s"); +*** RoSa: set CF for biodigest +pm_cf(ttot,regi,"biodigest") = 0.9; + *** Region- and tech-specific early retirement rates loop(ext_regi$pm_extRegiEarlyRetiRate(ext_regi), pm_regiEarlyRetiRate(t,regi,te)$(regi_group(ext_regi,regi)) = pm_extRegiEarlyRetiRate(ext_regi); diff --git a/core/input/generisdata_tech.prn b/core/input/generisdata_tech.prn index 9f9946f0d6..2478d41de4 100644 --- a/core/input/generisdata_tech.prn +++ b/core/input/generisdata_tech.prn @@ -56,7 +56,7 @@ flexibility 0.85 0.7 0.9 0.75 *** biomass technologies + biotr biotrmod biochp biohp bioigcc bioigccc biogas biogasc bioh2 bioh2c bioethl bioeths biodiesel bioftrec bioftcrec -tech_stat 1 3 1 3 2 3 2 3 3 +tech_stat 1 3 1 3 2 3 2 3 3 inco0 10 300 3000 550 2450 3150 1200 1230 1680 2040 2860 590 160 2800 3100 constrTme 0 1 4 2 4 5 4 4 4 4 4 2 2 4 5 lifetime 35 35 40 40 40 40 40 40 35 35 35 35 35 35 35 @@ -66,15 +66,15 @@ omf 0.03 0.04 0.04 0.04 0.04 0.04 omv 30.11 25.00 31.50 50.50 10.90 12.80 10.60 10.60 97.27 38.99 5.05 10.60 10.60 flexibility 0.7 0.75 0.7 -+ biopyronly biopyrhe biopyrchp biopyrliq biocharuse ++ biopyronly biopyrhe biopyrchp biopyrliq biodigest biocharuse tech_stat 1 1 1 3 -inco0 1080 1430 1750 3215 +inco0 1080 1430 1750 3215 1500 floorcost 511 668 989 -constrTme 4 4 4 4 -eta 0.48 0.48 0.48 0.36 -omf 0.04 0.04 0.04 0.05 -omv 70 70 70 138 -lifetime 30 30 30 40 1 +constrTme 4 4 4 4 2 +eta 0.48 0.48 0.48 0.36 0.5 +omf 0.04 0.04 0.04 0.05 0.04 +omv 70 70 70 138 50 +lifetime 30 30 30 40 35 1 learn 0.10 0.10 0.10 ccap0 0.001 0.001 0.001 diff --git a/core/sets.gms b/core/sets.gms index b923b689f9..a3eefbe6e3 100755 --- a/core/sets.gms +++ b/core/sets.gms @@ -170,7 +170,7 @@ all_te "all energy technologies, including from modules" bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" - biodigest "anaerobic digestion" + biodigest "anaerobic digestion" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" @@ -1354,7 +1354,7 @@ teBio(all_te) "biomass energy systems technologies" bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" - biodigest "anaerobic digestion" + biodigest "anaerobic digestion" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" From 79ae80f59a57448525e0db9a49c59d56f4ff07bf Mon Sep 17 00:00:00 2001 From: Robert Salzwedel Date: Mon, 15 Jun 2026 17:37:22 +0200 Subject: [PATCH 5/8] Updated Potentials --- modules/30_biomass/magpie/datainput.gms | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/30_biomass/magpie/datainput.gms b/modules/30_biomass/magpie/datainput.gms index fc9df78ba3..76facf36ab 100644 --- a/modules/30_biomass/magpie/datainput.gms +++ b/modules/30_biomass/magpie/datainput.gms @@ -25,17 +25,17 @@ $offdelim *** and for pebios, pebioil (defined only for 5th grade) p30_datapebio(regi,"pebios","5","cost",ttot)$(ttot.val ge 2005) = 12.4 * s30_D2TD / sm_GJ_2_TWa; p30_datapebio(regi,"pebioil","5","cost",ttot)$(ttot.val ge 2005) = 15.8 * s30_D2TD / sm_GJ_2_TWa; -p30_datapebio(regi,"pemanure","5","cost",ttot)$(ttot.val ge 2005) = 12 * s30_D2TD / sm_GJ_2_TWa; +p30_datapebio(regi,"pemanure","5","cost",ttot)$(ttot.val ge 2005) = 1 * s30_D2TD / sm_GJ_2_TWa; p30_datapebio(regi,"pebiolc","2","cost",ttot)$(ttot.val ge 2005) = 1 * s30_D2TD / sm_GJ_2_TWa; *** maxprod pebiolc: choose SSP and convert from PJ/yr to TWa/yr p30_datapebio(regi,"pebiolc","2","maxprod",ttot)$(ttot.val ge 2005) = p30_biolcResidues(ttot,regi,"%cm_LU_emi_scen%") * sm_EJ_2_TWa / 1000; *** maxprod 1st gen: use regional maxprod data from MAgPIE for 1st generation energy carriers (pebios, pebioil) -*** RoSa: The last one should be pretending that there is 100 PJ of Manure available in each region. +*** RoSa: The last one should be pretending that there is 500 PJ of Manure available in each region. p30_datapebio(regi,"pebios","5","maxprod",ttot)$(ttot.val ge 2005) = p30_bio1stgen(ttot,regi,"pebios") * sm_EJ_2_TWa / 1000; p30_datapebio(regi,"pebioil","5","maxprod",ttot)$(ttot.val ge 2005) = p30_bio1stgen(ttot,regi,"pebioil") * sm_EJ_2_TWa / 1000; -p30_datapebio(regi,"pemanure","5","maxprod",ttot)$(ttot.val ge 2005) = 100 * sm_EJ_2_TWa / 1000; +p30_datapebio(regi,"pemanure","5","maxprod",ttot)$(ttot.val ge 2005) = 500 * sm_EJ_2_TWa / 1000; display p30_datapebio; p30_pebiolc_pricemag(ttot,regi) = 0; From c55291d8578be60b6097a6ff687c2cc274714635 Mon Sep 17 00:00:00 2001 From: Robert Salzwedel Date: Fri, 19 Jun 2026 19:01:45 +0200 Subject: [PATCH 6/8] implemented two digestion technologies --- config/default.cfg | 2 +- core/datainput.gms | 5 ++-- core/input/generisdata_tech.prn | 22 +++++++------- core/input/generisdata_vintages.prn | 4 +-- core/sets.gms | 29 +++++++++++++------ .../04_PE_FE_parameters/iea2014/datainput.gms | 2 ++ modules/05_initialCap/on/preloop.gms | 3 +- modules/30_biomass/magpie/datainput.gms | 2 +- modules/47_regipol/regiCarbonPrice/bounds.gms | 1 + test.rmd | 25 ++++++++++++++++ 10 files changed, 68 insertions(+), 27 deletions(-) create mode 100644 test.rmd diff --git a/config/default.cfg b/config/default.cfg index 80229b274a..f06e80e29a 100644 --- a/config/default.cfg +++ b/config/default.cfg @@ -28,7 +28,7 @@ cfg$regionmapping <- "config/regionmappingH12.csv" cfg$extramappings_historic <- "" #### Current input data revision (.) #### -cfg$inputRevision <- "7.98" +cfg$inputRevision <- "7.99dev-rosa" #### Current CES parameter and GDX revision (commit hash) #### cfg$CESandGDXversion <- "63284b56457470b727ffd0feedf39c4c25647b03" diff --git a/core/datainput.gms b/core/datainput.gms index 6e5e94aaa8..40cc60ef20 100644 --- a/core/datainput.gms +++ b/core/datainput.gms @@ -754,8 +754,9 @@ pm_cf(ttot,regi,"h2turbVRE")$(ttot.val ge 2025) = pm_cf(ttot,regi,"ngt"); pm_cf(ttot,regi,"tdh2b") = pm_cf(ttot,regi,"tdh2s"); pm_cf(ttot,regi,"tdh2i") = pm_cf(ttot,regi,"tdh2s"); -*** RoSa: set CF for biodigest -pm_cf(ttot,regi,"biodigest") = 0.9; +*** RoSa: set CF for biodigestCHP and biodigestGAS +pm_cf(ttot,regi,"biodigestCHP") = 0.9; +pm_cf(ttot,regi,"biodigestGAS") = 0.9; *** Region- and tech-specific early retirement rates loop(ext_regi$pm_extRegiEarlyRetiRate(ext_regi), diff --git a/core/input/generisdata_tech.prn b/core/input/generisdata_tech.prn index f60e62787e..28fa512b29 100644 --- a/core/input/generisdata_tech.prn +++ b/core/input/generisdata_tech.prn @@ -66,17 +66,17 @@ omf 0.03 0.04 0.04 0.04 0.04 0.04 omv 30.11 25.00 31.50 50.50 10.90 12.80 10.60 10.60 97.27 38.99 5.05 10.60 10.60 flexibility 0.7 0.75 0.7 -+ biopyronly biopyrhe biopyrchp biopyrliq biodigest biocharuse -tech_stat 1 1 1 3 -inco0 1080 1430 1750 3215 1500 -floorcost 511 668 989 -constrTme 4 4 4 4 2 -eta 0.48 0.48 0.48 0.36 0.5 -omf 0.04 0.04 0.04 0.05 0.04 -omv 70 70 70 138 50 -lifetime 30 30 30 40 35 1 -learn 0.10 0.10 0.10 -ccap0 0.001 0.001 0.001 ++ biopyronly biopyrhe biopyrchp biopyrliq biodigestCHP biodigestGAS biocharuse +tech_stat 1 1 1 3 +inco0 1080 1430 1750 3215 1500 2200 +floorcost 511 668 989 +constrTme 4 4 4 4 2 2 +eta 0.48 0.48 0.48 0.36 0.4 0.5 +omf 0.04 0.04 0.04 0.05 0.04 0.04 +omv 70 70 70 138 50 50 +lifetime 30 30 30 40 20 20 1 +learn 0.10 0.10 0.10 +ccap0 0.001 0.001 0.001 *** hydrogen technologies + elh2 h2turb h2curt h2turbVRE elh2VRE h22ch4 MeOH diff --git a/core/input/generisdata_vintages.prn b/core/input/generisdata_vintages.prn index 3bcaebe4e3..433361537f 100644 --- a/core/input/generisdata_vintages.prn +++ b/core/input/generisdata_vintages.prn @@ -74,8 +74,8 @@ $offtext 36 1.0 41 1.0 -+ biopyronly biopyrhe biopyrchp biopyrliq biodigest -1 1.0 1.0 1.0 1.0 1.0 ++ biopyronly biopyrhe biopyrchp biopyrliq biodigestCHP biodigestGAS +1 1.0 1.0 1.0 1.0 1.0 1.0 + hydro windon windoff spv solhe csp elh2 geohdr geohe h2turb h22ch4 MeOH 1 5.0 10.0 10.0 10.0 4.5 1.0 1.0 10.0 10.0 1 1.0 1.0 diff --git a/core/sets.gms b/core/sets.gms index 6b28d0f51f..54d4d46127 100755 --- a/core/sets.gms +++ b/core/sets.gms @@ -174,7 +174,8 @@ all_te "all energy technologies, including from modules" bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" - biodigest "anaerobic digestion" + biodigestCHP "anaerobic digestion for CHP" + biodigestGAS "anaerobic digestion for manure" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" @@ -1117,7 +1118,8 @@ te(all_te) "energy technologies" bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" - biodigest "anaerobic digestion" + biodigestCHP "anaerobic digestion for CHP" + biodigestGAS "anaerobic digestion for manure" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" @@ -1236,7 +1238,8 @@ teAdj(all_te) "technologies with adjustment costs on capacity addition bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" - biodigest "anaerobic digestion" + biodigestCHP "anaerobic digestion for CHP" + biodigestGAS "anaerobic digestion for manure" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" @@ -1399,7 +1402,8 @@ teBio(all_te) "biomass energy systems technologies" bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" - biodigest "anaerobic digestion" + biodigestCHP "anaerobic digestion for CHP" + biodigestGAS "anaerobic digestion for manure" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" @@ -1431,7 +1435,8 @@ teRe(all_te) "renewable technologies including biomass" bioethl "biomass to ethanol" bioeths "sugar and starch biomass to ethanol" biodiesel "oil biomass to biodiesel" - biodigest "anaerobic digestion" + biodigestCHP "anaerobic digestion for CHP" + biodigestGAS "anaerobic digestion for manure" biopyronly "biomass pyrolysis to biochar, no energy co-product (established industrial)" biopyrhe "biomass pyrolysis to biochar plus heat (established industrial)" biopyrchp "biomass pyrolysis to biochar plus heat and power (established industrial)" @@ -2406,7 +2411,8 @@ pe2se(all_enty,all_enty,all_te) "map primary energy carriers to secondary" pebiolc.seliqbio.bioftrec pebiolc.seliqbio.bioftcrec pebioil.seliqbio.biodiesel - pemanure.seel.biodigest + pemanure.seel.biodigestCHP + pemanure.segabio.biodigestGAS pebios.seliqbio.bioeths pebiolc.seliqbio.bioethl peoil.seel.dot @@ -2564,6 +2570,7 @@ pc2te(all_enty,all_enty,all_te,all_enty) "mapping for own consumption of tech pecoal.seh2.coalh2.seel pecoal.seh2.coalh2c.seel pebiolc.seel.biochp.sehe + pemanure.seel.biodigestCHP.sehe pebiolc.segabio.biogasc.seel segabio.fegas.tdbiogas.seel segafos.fegas.tdfosgas.seel @@ -2655,13 +2662,17 @@ emi2te(all_enty,all_enty,all_te,all_enty) " map emissions to technologies" pebiolc.seliqbio.bioethl.bc pebios.seliqbio.bioeths.bc pebioil.seliqbio.biodiesel.bc - pemanure.seel.biodigest.bc + pemanure.seel.biodigestCHP.bc + pemanure.segabio.biodigestGAS.bc pebiolc.seliqbio.bioethl.oc pebios.seliqbio.bioeths.oc pebioil.seliqbio.biodiesel.oc - pemanure.seel.biodigest.oc + pemanure.seel.biodigestCHP.oc + pemanure.segabio.biodigestGAS.oc pebiolc.seh2.bioh2c.n2o pebiolc.seel.biochp.n2o + pemanure.seel.biodigestCHP.n2o + pemanure.segabio.biodigestGAS.n2o pebiolc.sehe.biohp.n2o pebiolc.sesobio.biotr.n2o pebiolc.sesobio.biotrmod.n2o @@ -2841,7 +2852,7 @@ teSe2rlf(all_te,rlf) "mapping for techologies to grades. Currently, the i igcc,igccc,pc,coaltr,coalgas,coalh2,coalh2c,coalchp,coalhp,coalftrec,coalftcrec, biotr,biotrmod,biogas,biogasc,bioftrec,bioftcrec,bioh2,bioh2c,biohp,biochp,bioigcc,bioigccc, biopyronly,biopyrhe,biopyrchp,biopyrliq, - elh2,h2turb,elh2VRE,h2turbVRE,bioethl,bioeths,biodiesel,tnrs,fnrs + elh2,h2turb,elh2VRE,h2turbVRE,bioethl,bioeths,biodiesel,biodigestCHP,biodigestGAS,tnrs,fnrs ) . 1 / diff --git a/modules/04_PE_FE_parameters/iea2014/datainput.gms b/modules/04_PE_FE_parameters/iea2014/datainput.gms index 7475fe08ae..60c9915096 100644 --- a/modules/04_PE_FE_parameters/iea2014/datainput.gms +++ b/modules/04_PE_FE_parameters/iea2014/datainput.gms @@ -295,6 +295,8 @@ p04_prodCoupleGlob("pebiolc","seel","biochp","sehe") = 0.72; p04_prodCoupleGlob("pebiolc","segabio","biogasc","seel") = -0.07; p04_prodCoupleGlob("pebiolc","seliqbio","bioethl","seel") = 0.153; +p04_prodCoupleGlob("pemanure","seel","biodigestCHP","sehe") = 0.1; + *** Electricity co-production for this Fischer-Tropsch-based biomass-to-liquids route. Values taken from: *** - Liu et al. 2011 (Making Fischer-Tropsch Fuels and Electricity from Coal and Biomass: Performance and Cost Analysis) https://doi.org/10.1021/ef101184e *** broadly in line with the other studies: diff --git a/modules/05_initialCap/on/preloop.gms b/modules/05_initialCap/on/preloop.gms index 6042bf2a59..09a34a0fa6 100644 --- a/modules/05_initialCap/on/preloop.gms +++ b/modules/05_initialCap/on/preloop.gms @@ -428,7 +428,8 @@ pm_eta_conv(ttot,regi,"elh2") = pm_dataeta(ttot,regi,"elh2"); *** happening). pm_eta_conv(ttot,regi,"bioeths") = fm_dataglob("eta","bioeths"); pm_eta_conv(ttot,regi,"biodiesel") = fm_dataglob("eta","biodiesel"); -pm_eta_conv(ttot,regi,"biodigest") = fm_dataglob("eta","biodigest"); +pm_eta_conv(ttot,regi,"biodigestCHP") = fm_dataglob("eta","biodigestCHP"); +pm_eta_conv(ttot,regi,"biodigestGAS") = fm_dataglob("eta","biodigestGAS"); *** Increase SE2FE efficiency for gases in DEU following AGEB data from 2020 *** increase incrementally from IEA data in 2005 to avoid inconsistencies with 2005 IEA calibration diff --git a/modules/30_biomass/magpie/datainput.gms b/modules/30_biomass/magpie/datainput.gms index c1a5814356..b001b36d67 100644 --- a/modules/30_biomass/magpie/datainput.gms +++ b/modules/30_biomass/magpie/datainput.gms @@ -32,7 +32,7 @@ p30_datapebio(regi,"pebiolc","2","cost",ttot)$(ttot.val ge 2005) = 1 * s30_D2 p30_datapebio(regi,"pebiolc","2","maxprod",ttot)$(ttot.val ge 2005) = p30_biolcResidues(ttot,regi,"%cm_LU_emi_scen%") * sm_EJ_2_TWa / 1000; *** maxprod 1st gen: use regional maxprod data from MAgPIE for 1st generation energy carriers (pebios, pebioil) -*** RoSa: The last one should be pretending that there is 500 PJ of Manure available in each region. +*** RoSa: The last one should be pretending that there is 500 PJ of Manure available in each region. This should be set explicitly for Germany based on Input from BENOPT or input from MAgPIE. CAUTION: IEA might define biogas, so output of digestors rather than input. p30_datapebio(regi,"pebios","5","maxprod",ttot)$(ttot.val ge 2005) = p30_bio1stgen(ttot,regi,"pebios") * sm_EJ_2_TWa / 1000; p30_datapebio(regi,"pebioil","5","maxprod",ttot)$(ttot.val ge 2005) = p30_bio1stgen(ttot,regi,"pebioil") * sm_EJ_2_TWa / 1000; p30_datapebio(regi,"pemanure","5","maxprod",ttot)$(ttot.val ge 2005) = 500 * sm_EJ_2_TWa / 1000; diff --git a/modules/47_regipol/regiCarbonPrice/bounds.gms b/modules/47_regipol/regiCarbonPrice/bounds.gms index 0aaf0532bc..8649cf0f44 100644 --- a/modules/47_regipol/regiCarbonPrice/bounds.gms +++ b/modules/47_regipol/regiCarbonPrice/bounds.gms @@ -69,6 +69,7 @@ vm_capEarlyReti.up('2025',regi,'pc')$(sameAs(regi,"DEU")) = 0.65; *' gas share of chp heat output to be between 50-55% of total district heating demand *' bio share of chp heat output to be between 15-25% of total district heating demand *' TODO: Historical fixings should be done in the core via input data from mrremind, this still needs to be moved +*' RoSa: Probably have to adjust this with second bioCHP tech with historic Values. Maybe also ask Tabea about biochar?' loop(regi$(sameAs(regi,"DEU")), loop(t$(t.val eq 2020), vm_cap.lo(t,regi,"coalchp","1")= 0.2 diff --git a/test.rmd b/test.rmd new file mode 100644 index 0000000000..5ce640a4bc --- /dev/null +++ b/test.rmd @@ -0,0 +1,25 @@ +```{r} +library(quitte) +library(mip) +library(httpgd) +``` + +```{r} +hgd() +``` + +```{r} +data <- read.quitte("/p/tmp/robertsa/digestion/remind/output/SSP2-NPi2025_2026-06-15_18.31.39/REMIND_generic_SSP2-NPi2025_withoutPlus.mif") +``` + +```{r PE Biomass Production} +options(mip.yearsBarPlot = c(2020, 2030, 2050, 2100)) +options(mip.mainReg = "World") +items <- c( + "PE|Production|Biomass|Lignocellulosic|Energy Crops", + "PE|Production|Biomass|Lignocellulosic|Residues", + "PE|Production|Biomass|1st Generation", + "PE|Production|Biomass|Manure (EJ/yr)", + NULL) +showAreaAndBarPlots(data, items, tot = "PE|Production|Biomass", orderVars = "user", scales = "fixed", mainRegion = "World") +``` From fb2e9bb2b63dd20fea5b21ad40156d385426d65d Mon Sep 17 00:00:00 2001 From: Robert Salzwedel Date: Mon, 22 Jun 2026 15:49:41 +0200 Subject: [PATCH 7/8] minor updates --- config/scenario_config.csv | 10 +++++----- modules/30_biomass/magpie/bounds.gms | 16 ++++++++++++++++ 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/config/scenario_config.csv b/config/scenario_config.csv index 99a9b23982..7cb4e613c0 100755 --- a/config/scenario_config.csv +++ b/config/scenario_config.csv @@ -12,11 +12,11 @@ SSP2-PkBudg1000;1,AMT,2;;;;;rcp26;globallyOptimal;;;9;1000;;functionalForm;;;75; SSP2-EcBudg500;1,AMT,2;;;;;rcp26;globallyOptimal;;;5;500;5;functionalForm;;exponential;70;;7;;EUR_regi 0.08, USA_regi 0.07, CHA_regi 0.07, CAZ_regi 0.07, JPN_regi 0.07, GLO 0.06;transformative;;;1;1;5000;0;;;;2060.GLO 0.9;;;;;;;;;;;;;;2;;;200;;;;;Mix3ICEban;1;2035;;SSP2-NPi2025;;SSP2-NPi2025;SSP2-EcBudg400: This climate policy scenario follows the Shared Socioeconomic Pathways 2 called Middle of the Road. The stylized climate policy scenario assumes an end-of-century budget of 400 Gt CO2 on total CO2 emissions from 2020 to 2100. This is a high overshoot scenario with delayed climate policy. SSP2-rollBack;1,AMT,2;;;;;;;;;0;;;none;;;;;;0;;;1;;;;;;;;;;none;;;;;;;;;;;;;;;;;;;;;Mix1;1;2030;;SSP2-NPi2025;;SSP2-NPi2025;SSP2-rollBack: This rollback of climate policy scenario follows the Shared Socioeconomic Pathways 3 called Middle of the Road. # EU21 SSP2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -SSP2-EU21-NPi2025-calibrate;calibrate,calibrateSSP2;calibrate;14;./config/regionmapping_21_EU11.csv;./config/extramapping_EU27.csv;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2005;;;;;SSP2-EU21-calibration: This baseline scenario follows the Shared Socioeconomic Pathways 2 called Middle of the Road. -SSP2-EU21-NPi2025;1,AMT,2;;;./config/regionmapping_21_EU11.csv;./config/extramapping_EU27.csv;;;;;0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2005;;;;;SSP2-EU21-NPi2025: This National Policies Implemented (NPi) scenario follows the Shared Socioeconomic Pathways 2 called Middle of the Road. The NPi reflects currently implemented policies, while fulfilling near-term feasibility and long-term plausibility assessments. Emissions trajectories are aligned with bottom-up studies on the effect of currently implemented policies. Carbon prices are constant in the mid- and long-term. -SSP2-EU21-PkBudg650;1,AMT,2;;;./config/regionmapping_21_EU11.csv;./config/extramapping_EU27.csv;rcp20;globallyOptimal;;;9;650;;functionalForm;;;100;2055;6;;EUR_regi 0.08, USA_regi 0.07, CHA_regi 0.07, CAZ_regi 0.07, JPN_regi 0.07, GLO 0.06;transformative;;;;;;;;;;2050.GLO 0.9;;;;;;;;;;;;;;2;;;;;;;Elec_Push;Mix4ICEban;1;2030;;SSP2-EU21-NPi2025;;SSP2-EU21-NPi2025;SSP2-EU21-PkBudg650: This climate policy scenario follows the SSP2. The stylized climate policy scenario assumes a peak budget of 650 Gt CO2 on total CO2 emissions from 2015 to 2100. This is a 1.5C scenario, peak warming is allowed to be at or slightly above 1.5C at median climate sensitivity but returns to values below 1.5C in at least 67 % of scenarios by the end of the century. -SSP2-EU21-PkBudg750;1,AMT,2;;;./config/regionmapping_21_EU11.csv;./config/extramapping_EU27.csv;rcp20;globallyOptimal;;;9;750;;functionalForm;;;100;2055;6;;EUR_regi 0.08, USA_regi 0.07, CHA_regi 0.07, CAZ_regi 0.07, JPN_regi 0.07, GLO 0.06;transformative;;;;;;;;;;2050.GLO 0.9;;;;;;;;;;;;;;2;;;;;;;Elec_Push;Mix4ICEban;1;2030;;SSP2-EU21-NPi2025;;SSP2-EU21-NPi2025;SSP2-EU21-PkBudg750: This climate policy scenario follows the SSP2. The stylized climate policy scenario assumes a peak budget of 750 Gt CO2 on total CO2 emissions from 2015 to 2100. This is a 1.5C scenario, peak warming is allowed to be at or slightly above 1.5C at median climate sensitivity but returns to values below 1.5C in at least 67 % of scenarios by the end of the century. -SSP2-EU21-PkBudg1000;1,AMT,2;;;./config/regionmapping_21_EU11.csv;./config/extramapping_EU27.csv;rcp26;globallyOptimal;;;9;1000;;functionalForm;;;75;2080;7;;EUR_regi 0.08, USA_regi 0.07, CHA_regi 0.07, CAZ_regi 0.07, JPN_regi 0.07, GLO 0.06;transformative;;;;;;;;;;2050.GLO 0.5;;;;;;;;;;;;;;2;;;;;;;;Mix3ICEban;1;2030;;SSP2-EU21-NPi2025;;SSP2-EU21-NPi2025;SSP2-EU21-PkBudg1050: This climate policy scenario follows the SSP2. The stylized climate policy scenario assumes a peak budget of 1050 Gt CO2 on total CO2 emissions from 2015 to 2100. This is a well below 2C scenario at median climate sensitivity but returns to values below 2C in at least 67 % of scenarios during the whole century. +SSP2-EU21-NPi2025-calibrate;calibrate,calibrateSSP2;calibrate;14;./config/regionmapping_21_EU11.csv;./config/extramapping_EU27.csv;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;off;;;;;;;2005;;;;;SSP2-EU21-calibration: This baseline scenario follows the Shared Socioeconomic Pathways 2 called Middle of the Road. +SSP2-EU21-NPi2025;1,AMT,2;;;./config/regionmapping_21_EU11.csv;./config/extramapping_EU27.csv;;;;;0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;off;;;;;;;2005;;;;;SSP2-EU21-NPi2025: This National Policies Implemented (NPi) scenario follows the Shared Socioeconomic Pathways 2 called Middle of the Road. The NPi reflects currently implemented policies, while fulfilling near-term feasibility and long-term plausibility assessments. Emissions trajectories are aligned with bottom-up studies on the effect of currently implemented policies. Carbon prices are constant in the mid- and long-term. +SSP2-EU21-PkBudg650;1,AMT,2;;;./config/regionmapping_21_EU11.csv;./config/extramapping_EU27.csv;rcp20;globallyOptimal;;;9;650;;functionalForm;;;100;2055;6;;EUR_regi 0.08, USA_regi 0.07, CHA_regi 0.07, CAZ_regi 0.07, JPN_regi 0.07, GLO 0.06;transformative;;;;;;;;;;2050.GLO 0.9;;;;;;;;;;;;;;2;;;off;;;;Elec_Push;Mix4ICEban;1;2030;;SSP2-EU21-NPi2025;;SSP2-EU21-NPi2025;SSP2-EU21-PkBudg650: This climate policy scenario follows the SSP2. The stylized climate policy scenario assumes a peak budget of 650 Gt CO2 on total CO2 emissions from 2015 to 2100. This is a 1.5C scenario, peak warming is allowed to be at or slightly above 1.5C at median climate sensitivity but returns to values below 1.5C in at least 67 % of scenarios by the end of the century. +SSP2-EU21-PkBudg750;1,AMT,2;;;./config/regionmapping_21_EU11.csv;./config/extramapping_EU27.csv;rcp20;globallyOptimal;;;9;750;;functionalForm;;;100;2055;6;;EUR_regi 0.08, USA_regi 0.07, CHA_regi 0.07, CAZ_regi 0.07, JPN_regi 0.07, GLO 0.06;transformative;;;;;;;;;;2050.GLO 0.9;;;;;;;;;;;;;;2;;;off;;;;Elec_Push;Mix4ICEban;1;2030;;SSP2-EU21-NPi2025;;SSP2-EU21-NPi2025;SSP2-EU21-PkBudg750: This climate policy scenario follows the SSP2. The stylized climate policy scenario assumes a peak budget of 750 Gt CO2 on total CO2 emissions from 2015 to 2100. This is a 1.5C scenario, peak warming is allowed to be at or slightly above 1.5C at median climate sensitivity but returns to values below 1.5C in at least 67 % of scenarios by the end of the century. +SSP2-EU21-PkBudg1000;1,AMT,2;;;./config/regionmapping_21_EU11.csv;./config/extramapping_EU27.csv;rcp26;globallyOptimal;;;9;1000;;functionalForm;;;75;2080;7;;EUR_regi 0.08, USA_regi 0.07, CHA_regi 0.07, CAZ_regi 0.07, JPN_regi 0.07, GLO 0.06;transformative;;;;;;;;;;2050.GLO 0.5;;;;;;;;;;;;;;2;;;off;;;;;Mix3ICEban;1;2030;;SSP2-EU21-NPi2025;;SSP2-EU21-NPi2025;SSP2-EU21-PkBudg1050: This climate policy scenario follows the SSP2. The stylized climate policy scenario assumes a peak budget of 1050 Gt CO2 on total CO2 emissions from 2015 to 2100. This is a well below 2C scenario at median climate sensitivity but returns to values below 2C in at least 67 % of scenarios during the whole century. # H12 SSP3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SSP3-NPi2025-calibrate;calibrate;calibrate;14;;;;;3;;;;;;;;;;;;;;1;;;;;;;;;;;;;;;SSP3;SSP3;;;highCoal;SSP3;;0;;SSP3;1.5;;;forcing_SSP3;;;;;2005;;;;;SSP3-NPi2025-calibrate: This reference policy/baseline scenario follows the Shared Socioeconomic Pathways 3 called High. SSP3-NPi2025_impCM-calibrate;0;calibrate;14;;;;;3;imperfect;;;;;;;;;;;;;1;;;;;;;;;;;;;;;SSP3;SSP3;;;highCoal;SSP3;;0;;SSP3;1.5;;;forcing_SSP3;;;Mix1;;2005;;;;;SSP3-NPi2025-calibrate: This reference policy/baseline scenario follows the Shared Socioeconomic Pathways 3 called High. diff --git a/modules/30_biomass/magpie/bounds.gms b/modules/30_biomass/magpie/bounds.gms index 96c47e8fd7..74240344f6 100644 --- a/modules/30_biomass/magpie/bounds.gms +++ b/modules/30_biomass/magpie/bounds.gms @@ -109,6 +109,22 @@ if(cm_1stgen_phaseout=1, *** be supplied from purpose-grown biomass. p30_maxprod_residue(ttot,regi) = max(p30_datapebio(regi,"pebiolc","2","maxprod",ttot), sum(teBioPebiolc, pm_pedem_res(ttot,regi,teBioPebiolc))); vm_fuExtr.up(t,regi,"pebiolc","2") = p30_maxprod_residue(t,regi)*1.0001; + +*** RoSa: This should become explicit values by MAgPIE, with respective projections. For now 500 PJ/yr per region. +vm_fuExtr.up(t,regi,"pemanure","5") = p30_datapebio(regi,"pemanure","5","maxprod",t); + +*** RoSa: Now include explicit limits for Germany studies. So far rather arbitrarily. +loop(regi$sameas(regi,"DEU"), +*** Manure bounds + vm_fuExtr.up(t,regi,"pemanure","5")$(t.val le 2025) = 0.39 * sm_EJ_2_TWa; + vm_fuExtr.up(t,regi,"pemanure","5")$(t.val ge 2030) = 0.35 * sm_EJ_2_TWa; + vm_fuExtr.up(t,regi,"pemanure","5")$(t.val ge 2040) = 0.3 * sm_EJ_2_TWa; +*** Residue bounds + vm_fuExtr.up(t,regi,"pebiolc","2")$(t.val ge 2030) = 0.60 * sm_EJ_2_TWa; +*** 2nd generation bounds + vm_fuExtr.up(t,regi,"pebiolc","1")$(t.val ge 2030) = 0.5 * sm_EJ_2_TWa; +); + *' ***------------------------------------------------------------- From 4084c6d062766e9699135f575b352bf34df7d414 Mon Sep 17 00:00:00 2001 From: Robert Salzwedel Date: Wed, 24 Jun 2026 11:44:01 +0200 Subject: [PATCH 8/8] Uses local calibration, added cs2 profile --- config/default.cfg | 2 +- scripts/cs2/bioMIP.Rmd | 107 ++++++++++++++++++++++++++++++++++++++ scripts/cs2/profiles.json | 9 ++++ 3 files changed, 117 insertions(+), 1 deletion(-) create mode 100644 scripts/cs2/bioMIP.Rmd diff --git a/config/default.cfg b/config/default.cfg index 4bc4892288..2006a09cb8 100644 --- a/config/default.cfg +++ b/config/default.cfg @@ -31,7 +31,7 @@ cfg$extramappings_historic <- "" cfg$inputRevision <- "7.99dev-rosa" #### Current CES parameter and GDX revision (commit hash) #### -cfg$CESandGDXversion <- "8800bf9e3658cf387e7f6aa87f8a91b20675bce9" +cfg$CESandGDXversion <- "5b90160e524bb650284cd1b6cb9bf3dda86deb8c" #### Path to a renv.lock file to restore a project's dependencies from. If NULL, all R packages in their currently installed version will be used. cfg$UseThisRenvLock <- NULL diff --git a/scripts/cs2/bioMIP.Rmd b/scripts/cs2/bioMIP.Rmd new file mode 100644 index 0000000000..40a0c4bad9 --- /dev/null +++ b/scripts/cs2/bioMIP.Rmd @@ -0,0 +1,107 @@ +# BioMIP + +## Biomass Production + +```{r PE Biomass Production} +items <- c( + "PE|Production|Biomass|Lignocellulosic|Energy Crops", + "PE|Production|Biomass|Lignocellulosic|Residues", + "PE|Production|Biomass|1st Generation|SugarAndStarch", + "PE|Production|Biomass|1st Generation|Sunflowers_PalmOil_others", + "PE|Production|Biomass|Manure", + NULL) +showAreaAndBarPlots(data, items, tot = "PE|Production|Biomass", orderVars = "user", scales = "fixed") +``` + +```{r PE Biomass Production - details} +showLinePlots(data, "PE|Production|Biomass|Lignocellulosic|Energy Crops") +showLinePlots(data, "PE|Production|Biomass|Lignocellulosic|Residues") +showLinePlots(data, "PE|Production|Biomass|1st Generation|SugarAndStarch") +showLinePlots(data, "PE|Production|Biomass|1st Generation|Sunflowers_PalmOil_others") +showLinePlots(data, "PE|Production|Biomass|Manure") +``` + +## Biomass Consumption + +### Overall Biomass Consumption +```{r PE Biomass Consumption Carriers} +tot <- "PE|Biomass" +items <- c( + "PE|Biomass|Hydrogen|w/ CC", + "PE|Biomass|Hydrogen|w/o CC", + "PE|Biomass|Electricity|w/ CC", + "PE|Biomass|Electricity|w/o CC", + "PE|Biomass|Heat", + "PE|Biomass|Gases|w/ CC", + "PE|Biomass|Gases|w/o CC", + "PE|Biomass|Liquids|w/ CC", + "PE|Biomass|Liquids|w/o CC", + "PE|Biomass|Solids", + "PE|Biomass|Biochar", + NULL) + +showLinePlots(data, tot) +showAreaAndBarPlots(data, items, tot = tot, orderVars = "user", scales = "fixed") +``` + +### PE Manure +```{r PE Manure} +tot <- "PE|Biomass|Manure" +items <- c( + "PE|Biomass|Manure|Electricity", + "PE|Biomass|Manure|Heat", + "PE|Biomass|Manure|Gases", + NULL) + +showLinePlots(data, tot) +showAreaAndBarPlots(data, items, tot = tot, orderVars = "user", scales = "fixed") +``` + +### PE Biomass Technology +```{r PE Biomass Technology} +tot <- "PE|Biomass" +items <- c( + "biotr", + "biotrmod", + "bioftrec", + "bioftcrec", + "bioethl", + "biogas", + "biogasc", + "bioigcc", + "bioigccc", + "biochp", + "bioh2", + "bioh2c", + "biohp", + "biochp", + "biopyronly", + "biopyrhe", + # "biopyrhe_char", + # "biopyrhe_heat", + "biopyrchp", + # "biopyrchp_char", + # "biopyrchp_heat", + # "biopyrchp_elec", + "bioeths", + "biodiesel", + "biodigestCHP", + # "biodigestCHP_elec", + # "biodigestCHP_heat", + "biodigestGAS", + NULL) + +showLinePlots(data, tot) +showAreaAndBarPlots(data, items, tot = tot, orderVars = "user", scales = "fixed") +``` + + +## Biomass with or without carbon capture + +```{r PE Biomass Production Carbon Capture} +items <- c( + "PE|Biomass|w/ CC", + "PE|Biomass|w/o CC", + NULL) +showAreaAndBarPlots(data, items, tot = "PE|Biomass", orderVars = "user", scales = "fixed") +``` \ No newline at end of file diff --git a/scripts/cs2/profiles.json b/scripts/cs2/profiles.json index 5969d5b09b..8bc3faaf09 100644 --- a/scripts/cs2/profiles.json +++ b/scripts/cs2/profiles.json @@ -110,6 +110,15 @@ "sections": "0", "userSectionPath": "normalizePath('./scripts/cs2/planetaryboundaries.Rmd')" }, + "bioMIP": { + "sections": "0", + "userSectionPath": "normalizePath('./scripts/cs2/bioMIP.Rmd')", + "reg": "c('DEU', 'ECE', 'ECS', 'ENC', 'ESC', 'ESW', 'EU27', 'EWN', 'FRA')", + "yearsScen": "seq(2005, 2050, 5)", + "yearsHist": "union(seq(2005, format(Sys.Date(), '%Y'), 1), seq(2030, 2050, 5))", + "yearsBarPlot": "c(2020, 2030, 2045)", + "mainReg": "'DEU'" + }, "mySection": { "sections": "0", "userSectionPath": "normalizePath('./scripts/cs2/mySection.Rmd')"