Skip to content

Releases: magpiemodel/magpie

MAgPIE 4.7.3 - FSEC

03 Nov 11:40

Choose a tag to compare

[4.7.3-FSEC] - 2025-10-20

This is a special release that documents the state of MAgPIE as used in the corresponding Nature Food article.

changed

  • config updated scenario names and RCPs in config files
  • scripts/output/FSDP_collect.R updates list of variables to collect, clearly indicates deprecation of old FSDP collect script

added

  • 21_trade added the exo trade realization

fixed

  • scripts updated scripts to work with newer SLURM versions

MAgPIE 4.13.0

23 Oct 09:01
7401f4e

Choose a tag to compare

[4.13.0] - 2025-10-23

changed

  • 56_ghg_policy extended set of available ghg price scenarios
  • 60_bioenergy extended set of available second generation bioenergy scenarios
  • config input data upgraded from rev4.121 to rev4.122, incorporating new bioenergy demand and GHG price trajectories from REMIND standalone runs with biochar (R34BC).
  • inputdata updated input data to rev4.123, which uses LUH3 instead of LUH2v2

added

  • renv/archive store renv.lock for release versions

fixed

  • 14_yield avoid division by zero for special cases
  • 14_yield avoid too high yields in edge cases (in case of data mismatches between FAO/LUH croparea and LPJmL yield data avoid zero references yields that lead to overestimated yields)
  • 60_bioenergy Harmonize 2nd gen bioenergy demand for historic period based on default trajectory "R34M410-SSP2-NPi2025"
  • inputdata updated input data to rev4.124, which includes two fixes, one with nitrogen emissions being to low and one about accounting for starches in FAO processing data
  • inputdata updated input data to rev4.126, including fixes related to inconsistencies as part of LUH3 update and growing primary forest
  • scripts/output removed deprecated dir option from disaggBII in disaggregation.R

MAgPIE 4.12.0

08 Sep 13:52
327f2cc

Choose a tag to compare

[4.12.0] - 2025-09-08

changed

  • inputdata updated input data to include new FAO food balances, allowing for a new set of past years "coup_2015", i.e. past held until 2015 instead of 2010. To be updated once LUH3 input data comes in, to 2020.
  • readme added detailed Windows instructions and common installation issues
  • renv/activate.R updated to version 1.1.5

fixed

  • 21_trade included trade costs into exo realization
  • 62_material fixed inconsistency for historical bioplastic substrate demand
  • default.cfg input data upgraded to use corrected clusters using aligned population data (rev4.120 onwards)

MAgPIE 4.11.0

11 Jul 10:55
c043532

Choose a tag to compare

[4.11.0] - 2025-07-11

changed

  • 15_food add calculation of consumer margins to the postsolve for calculation in model run
  • 53_methane CH4 emissions from enteric fermentation are now calculated using vm_feed_intake
  • 55_awms Manure excretion is now calculated using vm_feed_intake
  • 70_livestock pasture feed balance flows dynamically linked to pasture demand in regions with high historical scavenged feed use
  • default.cfg input data upgraded from rev4.118 to rev4.119 (minor update population and GDP)
  • README added forestry to model description
  • readme added setup instruction specifics for Linux/macOS
  • scenario_config update of VLLO scenario to EAT-Lancet 2
  • scripts changed setting in the 'mitigation and conservation' start script.

added

  • 56_ghg_policy added optional temporal fader for start of C prive driven afforestation
  • 70_livestock added new interfaces vm_feed_intake and vm_feed_balanceflow
  • core added unused set number_order to force number sets like maccs_steps to be ordered
  • default.cfg added switch to control the inclusion of feed balance flows in the calculation of future feed intake

removed

  • main Removed Dockerfile, as that is no longer supported/maintained

fixed

  • 32_forestry clean-up of switches for rotation length calculation. Removed c32_interest_rate. Merged with c32_rot_calc_type.
  • 71_disagg_lvst added set.gms to the off realization to make these sets available for other modules independent of the selected realization

MAgPIE 4.10.1

28 May 13:56
97951e9

Choose a tag to compare

[4.10.1] - 2025-05-27

changed

  • 21_trade changed export share calculation to be done at region level in the model
  • default.cfg changed running magpie by default with optfile for specified solver settings (Tol_Optimality)
  • default.cfg input data upgraded from rev4.117 to rev4.118, default for bioenergy demand and GHG prices changed from R32M46 to R34M410, rcp4p5 used for SSP2-NPi2025 in line with MAGICC climate outcome and REMIND assumptions.
  • scenario_config.csv SSP2 food system assumptions for ScenarioMIP VLLO to avoid sudden jump of calorie intake after 2025
  • script/start/test_runs.R Test runs adjusted based on availability from coupled runs for R34M410.
  • scripts disaggregation.R moved disaggregateLandConservation function to magpie4
  • scripts request 24h for SLURM jobs (except for medium which still requests 7 days)

added

  • 80_optimization added writing of conopt opt files with using scalars from input
  • default.cfg added option to set Tol_Optimality (GAMS solver setting) to a certain value (GAMS-default 1e-7, new MAgPIE-default 1e-8)

removed

  • 80_optimization removed older optfile, that should be tried if no optimal solution can be found

fixed

  • 18_residues fixed equation for cluster level production of crop residues in flexreg_apr16 realization
  • 32_forestry fixed inconsistency in the application of s32_max_aff_area
  • 44_biodiversity expanded age-classes from 150 to 300 years in line with ac set. This bugfix is crucial for the BII indicator.

MAgPIE 4.10.0

04 Apr 12:10
ad37a5f

Choose a tag to compare

[4.10.0] - 2025-04-03

changed

  • 09_drivers removed SSP2EU scenario from set
  • 15_food included a convergence mechanism to support convergence between iterations
  • 15_food tax recycling for income effect in elastic food demand
  • 21_trade Cost for additional imports to maintain feasibility reduced from 12300 to 1500 USD17MER per tDM to avoid implausibly high costs and prices for wood and woodfuel
  • 32_forestry revised plantation establishment assumptions
  • 32_forestry timber plantation harvest is no longer enforced at rotation age to avoid conflicts with q21_trade_reg_up, which can result in huge costs and negative prices for wood
  • 35_natveg revised wood harvest assumptions
  • 38_factor_costs code cleanup, documentation
  • 41_area_equipped_for_irrigation code cleanup
  • 56_ghg_policy Minimum CO2 price of 1 $ per ton CO2 on emissions from deforestation and other land conversion in all time steps to avoid sudden jumps in carbon stock changes (cfg$gms$s56_minimum_cprice <- 3.67)
  • 60_bioenergy renamed c60_bioenergy_subsidy to s60_bioenergy_1st_subsidy to more clearly reflect its use and changed its unit to USD17MER per GJ. Adjusted q60_bioenergy_incentive accordingly
  • 60_bioenergy renamed s60_bioenergy_gj_price_1st to s60_bioenergy_1st_price and s60_bioenergy_price_2nd to s60_bioenergy_2nd_price
  • 73_timber revised timber demand calculations
  • config.cfg default for cfg$gms$cropland changed from "simple_apr24" to "detail_apr24"
  • config.cfg default for cfg$gms$s29_fallow_max changed from 0.4 to 0
  • config.cfg default for cfg$gms$s29_treecover_max changed from 0.4 to 1
  • config.cfg default for cfg$gms$s35_forest_damage changed from 2 to 0
  • default.cfg default for cfg$gms$bioenergy change from 1stgen_priced_dec18 to 1st2ndgen_priced_feb24
  • default.cfg default for s60_bioenergy_1st_subsidy (formerly c60_bioenergy_subsidy) changed from 246 USD17MER per ton to 6.5 USD17MER per GJ based on mean GJ per ton of 1st generation bioenergy products.
  • default.cfg default for module 44_biodiversity changed from bii_target_apr24 to `bii_target
  • default.cfg input data upgraded from rev4.116 to rev4.117
  • default.cfg Reactivated external scenario for damage from shifting agriculture (cfg$gms$s35_forest_damage <- 2)
  • default.cfg settings for land conversion cost calibration updated
  • scenario_config.csv cfg$gms$s56_minimum_cprice no longer used for NCD
  • scripts changed c30_bioen_water switch to all in EAT2p0 start script and re-included missing BAU_MITI scenario
  • scripts land conversion cost calibration for cropland - FAO as target data set instead of MAgPIEown
  • scripts reduced setup information written to main.gms

added

  • 11_cost added cost term for soil carbon management
  • 22_land_conservation added option for base protection reversal
  • 32_forestry Upper annual limit for re/afforestation (s32_annual_aff_limit) applied to NPI/NDC and CO2-price driven re/afforestation (default: 3% of overall forest establishment potential)
  • 58_peatland Limit for annual peatland rewetting (2% of degraded peatland per year) to avoid adhoc rewetting of degraded peatlands with the introduction of the CO2 price (cfg$gms$s58_annual_rewetting_limit <- 0.02)
  • 59_som added soil carbon management option to cellpool_jan23 realization
  • default.cfg added selection of low and middle-income countries isoCountriesLowMiddleIncome
  • default.cfg added setting for soil carbon management to config and set cellpool_jan23 realizaton as new default for 59_som module.
  • scenario_config.csv added column NPI-revert
  • scenario_config.csv added columns AR-natveg and AR-plant for CO2 price re/afforestation and AgroForestry settings
  • scenario_config.csv added scenario VLLO based on SDP-MC
  • scripts output script for testing elastic demand
  • scripts start script for ScenarioMIP MAgPIE standalone runs
  • scripts The constraint to maintain 20% semi-natural vegetation at the 1x1km scale is passed on to SEALS, if the setting is changed from the default.cfg

removed

  • 15_food/anthropometrics_jan18 removed as outdated
  • 44_biodiversity realisation bii_target_apr24 removed because it is identical to bii_target. bii_target set as new default.
  • 59_som removed cellpool_aug16 realization (out-dated parameters)
  • 60_bioenergy removed s60_bioenergy_1st_subsidy_fix_SSP2, s60_2ndgen_bioenergy_dem_min_post_fix since no longer in use
  • scenario_config.csv GDP scenario for VLLO in scenario_config.csv changed from SDP-MC to SSP1 (needed for consistency with REMIND)
  • scenario_config.csv removed column SSP2-EU

fixed

  • 29_cropland identical results for historic period when using s29_treecover_bii_coeff 0 and 1 in scenarios.
  • 32_forestry added contraint q32_ndc_aff_limit to make sure that NPI/NDC re/afforestation does not happen at the cost of forests and other natural vegetation.
  • 35_natveg added interface vm_natforest_reduction
  • 44_biodiversity scaling of equation q44_bii removed, which caused non-matching LHS and RHS
  • 56_ghg_policy bugfixes for regional GHG policy fader
  • 59_som soil carbon reference stock for natural vegetation changed to mean value over cluster ("other_land" lu types)
  • core/macro wrong use of vm_supply corrected in macro m21_baseline_production
  • scripts/output peatland share calculation fixed in disaggreagtion.R and minor bugfixes in disaggreagtion_LUH2.R

MAgPIE 4.9.1

31 Jan 09:03
817f599

Choose a tag to compare

[4.9.1] - 2025-01-28

changed

  • scripts peatland rewetting now automatically considered in extra/runSEALSallocation.R

added

  • scripts added start script for land-based mitigation and biodiversity conservation paper
  • scripts release number can be passed as an argument to test_runs.R to tag as release
  • start_scripts added lock_timeout as option to start_run function

fixed

  • 44_biodiversity bugfix i44_biome_share, code cleanup, added scaling of q44_bii

MAgPIE 4.9.0

06 Dec 12:55
72620bc

Choose a tag to compare

[4.9.0] - 2024-12-05

changed

  • 35_natveg revised age-class initialization of secondary forest
  • 38_factor_costs updated use of USDA cost shares
  • config changed default input data to use 2017USD
  • config default for c60_bioenergy_subsidy changed from 369 to 246 USD17MER per ton
  • config SHAPE scenarios start year of dietary shift changed to 2025
  • config updated input data to rev4.114
  • core number of age-classes doubled from 150 to 300 years for better match of growth curves with potential natural vegetation.
  • extra/disaggregation Peatland now considered in disaggregation of land pools
  • inputdata changed GDP base year from 2005USD to 2017USD
  • module_documentation all references to USD05 changed to USD17
  • modules update of scaling factors in several modules
  • scripts NPI/NDC policies synced to the year 2025 - update of additional data to additional_data_rev4.59.tgz
  • scripts REMIND coupling reads data in US$2017, not US$2005
  • scripts renamed disaggregation_mrdownscale.R -> mrdownscale_LUH2.R

added

  • 32_forestry added option s32_npi_ndc_reversal
  • 35_natveg added option s35_npi_ndc_reversal
  • 56_ghg_policy added new interface pcm_carbon_stock to avoid use of vm_carbon_stock.l in equations
  • 58_peatland added option for exogenous peatland rewetting
  • 62_material added switch to turn off future material demand for bioplastic
  • config added SSP1-POP-GDP SSP2-POP-GDP and SSP5-POP-GDP
  • modules[29-35] added initial values for ov_bv for better starting point
  • scripts add mrdownscale script (0.5deg downscaling using LandUseInit as reference)

removed

  • 13_tau removed interface fm_pastr_tau_hist
  • 31_past removed grasslands_apr22 realization

fixed

  • 10_land Simplified land transition matrix for improved feasibility
  • 11_costs changed equation to fix bug in total water cost calculation
  • 28_ageclass bugfix input data unit and code clean-up. Renamed feb21 realization to oct24
  • 29_cropland treecover age-class growth was not working properly because ac_sub was erroneously not fixed
  • 44_biodiversity bugfix biorealm_biome.cs3 in input data (shares did not add-up to 1)
  • 56_ghg_policy Fader for GHG emission pricing policy
  • 70_livestock bugfix scaling.gms file in wrong folder
  • config additional data increased to additional_data_rev4.58.tgz which fixes missing gdp2017 conversions in f20_processing_unitcosts
  • config settings in default.cfg for some switches in 73_timber did not work correctly
  • scripts script/output/extra/resubmit.R

MAgPIE 4.8.2

24 Sep 11:54
088b45f

Choose a tag to compare

[4.8.2] - 2024-09-24

changed

  • 15_food revision of MP/SCP implementation for milk and meat alternatives. Added demand for fat and sugar as ingredients for MP-based milk alternatives. Added optional demand for fat as ingredient for MP-based meat alternatives.
  • 21_trade refactor equations for enhanced readablility and improve documentation
  • 29_cropland added option for linear and sigmoidal faders
  • 32_forestry Interfaces vm_landexpansion_forestry and vm_landreduction_forestry have been corrected by harvested and replanted timber plantation area
  • 58_peatland variable v58_scalingFactorExp converted into parameter p58_scalingFactorExp to avoid infeasibilites. p58_scalingFactorRed has been revised.
  • 80_optimization abort GAMS in case of execution errors, added threads = 1 as default to avoid infeasibilites and Flg_NoDefc = TRUE as option
  • config cfg$gms$land_snvchanged from "secdforest, forestry, past, other" to "secdforest, other"
  • config additional data update additional_data_rev4.53.tgz
  • config default settings for 58_peatland revised
  • config initial treecover on cropland starts from zero
  • config split scenario_config into project-specific configs
  • config Submissions with high memory requirements now get 16 CPUs and 80GB of memory to account for the new specifications of PIK's new HPC 'Foote'. maxMem was renamed to highMem, because 80GB of memory does not correspond to the maximum available memory of a compute node.
  • config The default realization for the 38_factor_costs module was switched to sticky_feb18. In this realization, capital stocks and their depreciation are tracked, giving some inertia to random relocation of production, improving high resolution outputs.
  • script replaced gdx package with gdx2 package calls
  • script scripts/start_functions.R decide individually for demand and price whether they are read from a REMIND report.
  • script updated EATLancet project start scripts
  • scripts .nc files are no longer created by default after disaggregation
  • scripts output/extra/highres.R use default 13_tc realization
  • scripts rewrite of merge_report.R based on rds files and rbind, which allows for more flexibility when merging reports. Avoid inconsistent use of "GLO" instead of "World" in report.rds files.

added

  • 42_water_demand added water abstraction type dimension for non-ag uses
  • 56_ghg_policy added optional temporal and regional fader for GHG emission pricing policy
  • 70_livestock added realization fbask_jan16_sticky
  • config added scenario_config_year_fix.csv for choosing until when parameters are fixed to SSP2 values
  • cropland added option for discarding initial treecover on cropland
  • script added output script for conversion of validation.mif file into validation.rds
  • script check of variables needed in piamInterfaces in report_rds.R
  • script for downscaling to 0.25 deg using LUH2v2h as reference via mrdownscale
  • scripts added out of bounds check as output script
  • scripts added output report EU_report.R that uses EU_report.Rmd
  • scripts added output script converting all grid-level .mz files to .nc (netCDF)
  • scripts added script for automatic submission of SEALS allocation runs ./extra/runSEALSallocation.R
  • scripts added start script for 'Healthly Landscapes' paper paper_healthyLscps.R

fixed

  • 15_food fixing parameter declaration of i15_processed_kcal_structure_iso
  • 35_natveg bugfix secdforest and other land restoration to avoid double-counting of restoration in equation q29_land_snv
  • 80_optimization bugfix for variables levels not obeying the bounds in nlp_par, conopt changed to conopt3
  • scripts fixing an error in start.R and output.R which occurred if more than one slurm job was submitted at the same time.

MAgPIE 4.8.1

20 Jun 11:57
92e0505

Choose a tag to compare

[4.8.1] - 2024-06-19

notes

  • for running MAgPIE without POP/GDP update, change all instances of rev4.109 to rev4.107 in these two files: config/default.cfg and config/scenario_config.csv
  • rev4.108 should not be used anymore because MER-GDP was wrong and was identical to PPP-GDP

changed

  • 29_ageclass module 29_ageclass has been renamed to 28_ageclass to make space for 29_cropland just before 30_croparea
  • 30_crop module 30_crop renamed to 30_croparea, which now only accounts for crop area.
  • 30_crop Semi-Natural Vegetation (SNV) implementation has been moved from 30_crop to 29_cropland
  • 30_crop the previous 30_crop/endo_apr21 realization has been moved to 30_croparea/simple_apr24
  • 30_crop the two realizations penalty_apr22 and rotation_apr22 have been merged into a single 30_croparea/detail_apr24 realization
  • default.cfg update additional data to rev4.51
  • scripts adjusted SLURM job handling
  • scripts updated EL2p0 start scripts

added

  • 10_land added interface pm_land_hist with historic land use patterns
  • 29_cropland new module 29_cropland accounting for crop area, fallow cropland and tree cover on cropland with two realizations: detail_apr24 and simple_apr24 (default).
  • 42_water_demand added non-agricultural water demand for entire year

removed

  • 32_forestry removed technical balance term v32_land_missing_ndc

fixed

  • 22_land_conservation avoid infeasibilities due to very small numbers, account for cropland tree cover and lower bound of cropland
  • 32_forestry avoid infeasibilities due to very small numbers
  • 35_natveg avoid infeasibilities due to very small numbers
  • 44_biodiversity Fixing to SSP2 parameters until 2025 was not working
  • config update to input data rev4.109. In the previous rev4.108, MER GDP was wrong and was identical to PPP GDP