diff --git a/src/ac/ed/lurg/ModelMain.java b/src/ac/ed/lurg/ModelMain.java index d86ecb774c513bfd2c45d1857265671167e46dc1..2151c1e1833c55cfe209b169c11503b98a56de28 100644 --- a/src/ac/ed/lurg/ModelMain.java +++ b/src/ac/ed/lurg/ModelMain.java @@ -244,12 +244,12 @@ public class ModelMain { writeMarketFile(timestep, cropAreaRaster); if (ModelConfig.OUTPUT_FOR_LPJG) { - for (int outputYear : timestep.getYearsFromLast()) { - LogWriter.printlnError("Year" + outputYear); - LpjgOutputer lpjOutputer; + LogWriter.printlnError("Outputing Year: " + outputYear); + RasterSet<AreasItem> areasToOutput; + if (outputYear == timestep.getYear()) { - lpjOutputer = new LpjgOutputer(timestep.getYear(), intensityRaster, cropAreaRaster, yieldSurfaces); + areasToOutput = cropAreaRaster; } else { InterpolatingRasterSet<AreasItem> intermediateAreas = new InterpolatingRasterSet<AreasItem>(cropAreaRaster.getHeaderDetails()) { @@ -259,9 +259,10 @@ public class ModelMain { } }; intermediateAreas.setup(prevCropAreaRaster, cropAreaRaster, timestep.getPreviousTimestep().getYear(), timestep.getYear(), outputYear); - lpjOutputer = new LpjgOutputer(outputYear, intensityRaster, intermediateAreas, yieldSurfaces); + areasToOutput = intermediateAreas; } - + + LpjgOutputer lpjOutputer = new LpjgOutputer(outputYear, intensityRaster, areasToOutput, yieldSurfaces); lpjOutputer.writeOutput(); } }