diff --git a/CHANGELOG.md b/CHANGELOG.md index 698c1a0eb2..86871eb759 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - **14_yields_and_config** The new default is to not use yield calibration factors from a calibration run. The switch s14_use_yield_calib can optionally reenable the use of yield calibration factors. - **scripts** LUH2_disaggregation output script was modified. Specifically, flooded area was made compatible with the LUH definition, cropland and grazing land were added to the states.nc file, and specific naming/details (datatype, zname, xname, and yname) were added when creating the .nc files. - **scripts** For the emulator scripts select a different bioenergy demand variable that excludes bioenergy sources other than second generation bioenergy crops. Set the minimal bioenergy demand to zero. Both avoid artificial clustering of data points and allow for better fits. +- **31_past** in grasslands_apr22 realization: changed structure of f31_pastr_suitability to align with ssp-rcp specific input data formulation. Changed input filename from cs3 to cs2. Added `cc`, `nocc` and `nocc_hist` options for `i31_manpast_suit` and changed input gams code from table to parameter. Climate scenario assignment moved from preloop.gms to input.gms. Removed pastSuit set in sets.gms as not needed anymore. Adjusted not_used.txt in both grasslands_apr22 and static realizations. - **36_employment** regression between hourly labor regression and GDP pc changed from linear to log-log ### added @@ -22,7 +23,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - **scripts** added peatland to output/extra/disaggregation.R ### removed -- +- **default.cfg** Removed description of cfg$gms$c31_past_suit_scen since no longer needed due to changes in 31_past described below. Its function is now done by cfg$gms$c31_grassl_yld_scenario. ### fixed - **inputdata** There was another bug (terra default na.rm changed) in the inputdata that was fixed with rev4.93 diff --git a/CITATION.cff b/CITATION.cff index bde8fd0ac5..a152dd2299 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -112,6 +112,12 @@ authors: affiliation: "Potsdam Institute for Climate Impact Research" email: pascal.sauer@pik-potsdam.de + - family-names: Köberle + given-names: Alexandre + orcid: https://orcid.org/0000-0003-0328-4750 + affiliation: "Potsdam Institute for Climate Impact Research" + email: alexkob@pik-potsdam.de + - family-names: Lotze-Campen given-names: Hermann orcid: https://orcid.org/0000-0002-0003-5508 diff --git a/config/default.cfg b/config/default.cfg index a1293ce6ed..39f47ab09b 100644 --- a/config/default.cfg +++ b/config/default.cfg @@ -22,9 +22,9 @@ cfg$model <- "main.gms" #def = "main.gms" #### input settings #### # which input data sets should be used? -cfg$input <- c(regional = "rev4.94_h12_magpie.tgz", - cellular = "rev4.94_h12_fd712c0b_cellularmagpie_c200_MRI-ESM2-0-ssp370_lpjml-8e6c5eb1.tgz", - validation = "rev4.94_h12_validation.tgz", +cfg$input <- c(regional = "rev4.95_h12_magpie.tgz", + cellular = "rev4.95_h12_fd712c0b_cellularmagpie_c200_MRI-ESM2-0-ssp370_lpjml-8e6c5eb1.tgz", + validation = "rev4.95_h12_validation.tgz", additional = "additional_data_rev4.46.tgz", calibration = "calibration_H12_per_ton_fao_may22_glo_08Aug23.tgz") @@ -718,19 +718,12 @@ cfg$gms$s31_fac_req_past <- 1 # def = 1 # * reflecting that not all pasture area is grazed. cfg$gms$s31_unequal <- 1 # def = 1 -# * Scenario for grassland and pasture yields (only take effect for realization grasslands_apr22) +# * Scenario for grassland, pasture suitability areas and pasture yields (only take effect for realization grasslands_apr22) # * options: cc (climate change) # * nocc (no climate change) # * nocc_hist (no climate change after year defined by sm_fix_cc) cfg$gms$c31_grassl_yld_scenario <- "cc" # def = "cc" - -# * SSP scenario switch for pasture suitability areas (only take effect for realization grasslands_apr22) -# * options: ssp126, ssp245, ssp370, ssp460, ssp585 -# * nocc (fixed to values from 1995), -# * nocc_hist (ssp245 until year defined in sm_fix_cc, fixed thereafter) -cfg$gms$c31_past_suit_scen <- "ssp370" # def = "ssp370" - # * Switch that allows selecting how yield calibration factors will be calculated. # * If 0, grassland yield calibration will be calculated as multiplicative relative values. # * If 1, calibration values will be limited to additive absolute values when modeled yields strongly diff --git a/main.gms b/main.gms index 74151a0464..5427e7b2fb 100644 --- a/main.gms +++ b/main.gms @@ -148,25 +148,25 @@ $title magpie *##################### R SECTION START (VERSION INFO) ########################## * -* Used data set: rev4.88_h12_magpie.tgz -* md5sum: 740da40ceda04850eb374df215837c1b -* Repository: /p/projects/rd3mod/mirror/rse.pik-potsdam.de/data/magpie/public +* Used data set: rev4.94_h12_magpie.tgz +* md5sum: 25623b5ad3e8b72bd3008da9b69adfe0 +* Repository: /p/projects/rd3mod/inputdata/output * -* Used data set: rev4.88_h12_fd712c0b_cellularmagpie_c200_MRI-ESM2-0-ssp370_lpjml-8e6c5eb1.tgz -* md5sum: 9edbcc62e75b663eada84524402bccbf -* Repository: /p/projects/rd3mod/mirror/rse.pik-potsdam.de/data/magpie/public +* Used data set: rev4.94_h12_fd712c0b_cellularmagpie_c200_MRI-ESM2-0-ssp370_lpjml-8e6c5eb1.tgz +* md5sum: d7800a0ffe271483116a8f00a939a89a +* Repository: /p/projects/rd3mod/inputdata/output * -* Used data set: rev4.88_h12_validation.tgz -* md5sum: d42abd58de683506a807b411d7fe87cb -* Repository: /p/projects/rd3mod/mirror/rse.pik-potsdam.de/data/magpie/public +* Used data set: rev4.94_h12_validation.tgz +* md5sum: 4b4128910822cf45603cab46f45ccf78 +* Repository: /p/projects/rd3mod/inputdata/output * -* Used data set: additional_data_rev4.45.tgz -* md5sum: bb51c8c8608b8b9363582eb4aa220754 -* Repository: /p/projects/landuse/data/input/archive +* Used data set: additional_data_rev4.46.tgz +* md5sum: NA +* Repository: https://rse.pik-potsdam.de/data/magpie/public * * Used data set: calibration_H12_per_ton_fao_may22_glo_08Aug23.tgz -* md5sum: 5d34e4b54112db10f330f1e59dd60cc9 -* Repository: /p/projects/rd3mod/mirror/rse.pik-potsdam.de/data/magpie/public +* md5sum: NA +* Repository: https://rse.pik-potsdam.de/data/magpie/public * * Low resolution: c200 * High resolution: 0.5 @@ -175,15 +175,15 @@ $title magpie * * Number of cells per region: * CAZ CHA EUR IND JPN LAM MEA NEU OAS REF SSA USA -* 6 17 9 8 1 44 26 7 10 13 38 21 +* 5 16 8 7 2 41 30 8 11 12 39 21 * * Regionscode: 62eff8f7 * -* Regions data revision: 4.88 +* Regions data revision: 4.94 * * lpj2magpie settings: * * LPJmL data: MRI-ESM2-0:ssp370 -* * Revision: 4.88 +* * Revision: 4.94 * * aggregation settings: * * Input resolution: 0.5 @@ -191,11 +191,11 @@ $title magpie * * Regionscode: 62eff8f7 * * Number of clusters per region: * CAZ CHA EUR IND JPN LAM MEA NEU OAS REF SSA USA -* 6 17 9 8 1 44 26 7 10 13 38 21 +* 5 16 8 7 2 41 30 8 11 12 39 21 * * Call: withCallingHandlers(expr, message = messageHandler, warning = warningHandler, error = errorHandler) * * -* Last modification (input data): Fri Sep 22 15:20:24 2023 +* Last modification (input data): Fri Nov 17 19:42:06 2023 * *###################### R SECTION END (VERSION INFO) ########################### diff --git a/modules/31_past/endo_jun13/not_used.txt b/modules/31_past/endo_jun13/not_used.txt index e695835bae..2b47ed0ec1 100644 --- a/modules/31_past/endo_jun13/not_used.txt +++ b/modules/31_past/endo_jun13/not_used.txt @@ -2,5 +2,4 @@ name,type,reason pcm_land, input, not needed vm_tau,input,questionnaire fm_pastr_tau_hist,input,questionnaire -sm_fix_SSP2, input, not needed sm_fix_cc, input, not needed diff --git a/modules/31_past/grasslands_apr22/input.gms b/modules/31_past/grasslands_apr22/input.gms index 0896afc475..dcb0bca3bf 100644 --- a/modules/31_past/grasslands_apr22/input.gms +++ b/modules/31_past/grasslands_apr22/input.gms @@ -11,26 +11,26 @@ scalars s31_cost_grass_prod Grasslands factor costs (USD05MER per tDM) / 1 / ; -$setglobal c31_past_suit_scen ssp370 +$setglobal c31_grassl_yld_scenario cc +* options: cc (climate change) +* nocc (no climate change) +* nocc_hist (no climate change after year defined by sm_fix_cc) -table f31_pastr_suitability(t_all,j,ssp_past) Areas suitable for pasture management (mio. ha) +parameter f31_pastr_suitability(t_all,j) Areas suitable for pasture management (mio. ha) +/ $ondelim -$include "./modules/31_past/input/f31_pastr_suitability.cs3" +$include "./modules/31_past/input/f31_pastr_suitability.cs2" $offdelim -; +/; + +i31_manpast_suit(t_all,j) = f31_pastr_suitability(t_all,j) +* set values to 1995 if nocc scenario is used, or to sm_fix_cc after sm_fix_cc if nocc_hist is used +$if "%c31_grassl_yld_scenario%" == "nocc" i31_manpast_suit(t_all,j) = f31_pastr_suitability("y1995",j); +$if "%c31_grassl_yld_scenario%" == "nocc_hist" i31_manpast_suit(t_all,j)$(m_year(t_all) > sm_fix_cc) = i31_manpast_suit(t_all,j)$(m_year(t_all) = sm_fix_cc); -table f31_LUH2v2(t_all,j,f31_luh) Different land type areas (mio. ha) -$ondelim -$include "./modules/31_past/input/f31_LUH2v2.cs3" -$offdelim -; scalar s31_limit_calib Relative managament calibration switch (1=limited 0=pure relative) / 1 /; -$setglobal c31_grassl_yld_scenario cc -* options: cc (climate change) -* nocc (no climate change) -* nocc_hist (no climate change after year defined by sm_fix_cc) table f31_grassl_yld(t_all,j,grassland,w) LPJmL potential yields per cell (rainfed only) (tDM per ha) $ondelim @@ -46,3 +46,10 @@ table f31_grass_bio(t_all,i, grassland) Estimated regional grass biomass consump $ondelim $include "./modules/31_past/input/f31_grass_bio_hist.cs3" $offdelim; + + + +table f31_LUH2v2(t_all,j, f31_luh) LUH2v2 land classes separating rangelands from managed pastures +$ondelim +$include "./modules/31_past/input/f31_LUH2v2.cs3" +$offdelim; diff --git a/modules/31_past/grasslands_apr22/preloop.gms b/modules/31_past/grasslands_apr22/preloop.gms index 5b48e2cfc5..7a84ab73e3 100644 --- a/modules/31_past/grasslands_apr22/preloop.gms +++ b/modules/31_past/grasslands_apr22/preloop.gms @@ -5,15 +5,6 @@ *** | MAgPIE License Exception, version 1.0 (see LICENSE file). *** | Contact: magpie@pik-potsdam.de -$ifthen "%c31_past_suit_scen%" == "nocc" - i31_manpast_suit(t_all,j) = f31_pastr_suitability("y1995",j,"ssp245"); -$elseif "%c31_past_suit_scen%" == "nocc_hist" - i31_manpast_suit(t_all,j) = f31_pastr_suitability(t_all,j,"ssp245"); - i31_manpast_suit(t_all,j)$(m_year(t_all) > sm_fix_cc) = f31_pastr_suitability(t_all,j,"ssp245")$(m_year(t_all) = sm_fix_cc); -$else - i31_manpast_suit(t_all,j) = f31_pastr_suitability(t_all,j,"%c31_past_suit_scen%"); - i31_manpast_suit(t_all,j)$(m_year(t_all) <= sm_fix_SSP2) = f31_pastr_suitability(t_all,j,"ssp245"); -$endif pc31_grass(j,grassland) = f31_LUH2v2("y1995",j,grassland); diff --git a/modules/31_past/grasslands_apr22/sets.gms b/modules/31_past/grasslands_apr22/sets.gms index a157221583..0fa2cee21e 100644 --- a/modules/31_past/grasslands_apr22/sets.gms +++ b/modules/31_past/grasslands_apr22/sets.gms @@ -19,7 +19,4 @@ sets grass_from31(grassland) pasture management options / pastr,range / - ssp_past SSP scenarios for pasture suitability areas - / ssp126, ssp245, ssp370, ssp460, ssp585 / - ; diff --git a/modules/31_past/input/files b/modules/31_past/input/files index f4f049409d..b628d2f69c 100644 --- a/modules/31_past/input/files +++ b/modules/31_past/input/files @@ -1,5 +1,5 @@ * list of files that are required here -f31_pastr_suitability.cs3 +f31_pastr_suitability.cs2 f31_LUH2v2.cs3 f31_grassl_yld.cs3 f31_grass_bio_hist.cs3 diff --git a/modules/31_past/static/not_used.txt b/modules/31_past/static/not_used.txt index 57f7b20c03..6bd07855f0 100644 --- a/modules/31_past/static/not_used.txt +++ b/modules/31_past/static/not_used.txt @@ -4,5 +4,4 @@ vm_yld, input, not needed pm_land_conservation,input,questionnaire vm_tau,input,questionnaire fm_pastr_tau_hist,input,questionnaire -sm_fix_SSP2, input, not needed sm_fix_cc, input, not needed