From d7f9df86e009ba93eaabbb18d496b1bc09597730 Mon Sep 17 00:00:00 2001 From: Peter Alexander <peter@blackhillock.co.uk> Date: Thu, 6 Aug 2015 11:44:13 +0100 Subject: [PATCH] Intermediate pasture fert rate --- GAMS/IntExtOpt.gms | 6 +++--- src/ac/ed/lurg/yield/LPJYieldResponseMapReader.java | 6 ++++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/GAMS/IntExtOpt.gms b/GAMS/IntExtOpt.gms index 340f38a7..45ae5bf1 100644 --- a/GAMS/IntExtOpt.gms +++ b/GAMS/IntExtOpt.gms @@ -157,8 +157,8 @@ $gdxin ENERGY_EQ .. energy =E= (SUM((crop, location), area(crop, location) * unitEnergy(crop, location)) + (sum(location, agriLandExpansion(location)) * landChangeEnergy) - + (sum(location, (cropIncrease(location) + cropDecrease(location)) * landChangeEnergy/5) ) - + (sum(location, (pastureIncrease(location) + pastureDecrease(location)) * landChangeEnergy/5 )) + + (sum(location, (cropIncrease(location) + cropDecrease(location)) * landChangeEnergy/8)) + + (sum(location, (pastureIncrease(location) + pastureDecrease(location)) * landChangeEnergy/8 )) + sum(import_crop, (netImportAmount(import_crop)) * worldInputEnergy(import_crop))) / 1000000; MODEL LAND_USE /ALL/ ; @@ -183,7 +183,7 @@ $gdxin basePasture = sum(location, previousArea("pasture", location)); baseCropland = sum((location, crop_less_pasture), previousArea(crop_less_pasture, location)); - while((count le 1 and not (abs(basePasture-newPasture) le 0.1 and abs(baseCropland-newCropland) le 0.1)), + while((count le 10 and not (abs(basePasture-newPasture) le 0.1 and abs(baseCropland-newCropland) le 0.1)), SOLVE LAND_USE USING NLP MINIMIZING energy; display pastureIncrease.l, pastureDecrease.l, cropDecrease.l, cropIncrease.l, unitEnergy.l; diff --git a/src/ac/ed/lurg/yield/LPJYieldResponseMapReader.java b/src/ac/ed/lurg/yield/LPJYieldResponseMapReader.java index 518c0558..dc7d7ec6 100644 --- a/src/ac/ed/lurg/yield/LPJYieldResponseMapReader.java +++ b/src/ac/ed/lurg/yield/LPJYieldResponseMapReader.java @@ -57,8 +57,10 @@ public class LPJYieldResponseMapReader extends AbstractTabularRasterReader<Yield item.setYield(YieldType.NO_FERT_NO_IRRIG, CropType.PASTURE, pastureYield); item.setYield(YieldType.NO_FERT_IRRIG_MAX, CropType.PASTURE, pastureYield*1.2); - item.setYield(YieldType.FERT_MAX_NO_IRRIG, CropType.PASTURE, pastureYield*1.2); - item.setYield(YieldType.FERT_MAX_IRRIG_MAX, CropType.PASTURE, pastureYield*1.3); + item.setYield(YieldType.FERT_MID_NO_IRRIG, CropType.PASTURE, pastureYield*1.1); + item.setYield(YieldType.FERT_MID_IRRIG_MAX, CropType.PASTURE, pastureYield*1.3); + item.setYield(YieldType.FERT_MAX_NO_IRRIG, CropType.PASTURE, pastureYield*1.3); + item.setYield(YieldType.FERT_MAX_IRRIG_MAX, CropType.PASTURE, pastureYield*1.4); } else { // TeWWhi TeWWme TeWWlo TeSWhi TeSWme TeSWlo TeCohi TeCome TeColo TrRihi TrRime TrRilo -- GitLab