Skip to content
Snippets Groups Projects
Commit 6bbbb598 authored by Peter Alexander's avatar Peter Alexander
Browse files

Offset in irrig constraint now applied as a rate

parent 08c7de1a
No related branches found
No related tags found
No related merge requests found
fpu,basin fpu,basin
70,Nile, \ No newline at end of file
72,Nile
74,Nile
146,Nile
149,Nile
150,Nile
203,Nile
9,Amazon
10,Amazon
12,Amazon
13,Amazon
package ac.ed.lurg.country.gams; package ac.ed.lurg.country.gams;
import java.util.HashSet; import java.util.HashSet;
import java.util.Map; import java.util.Map;
......
...@@ -6,6 +6,7 @@ import java.util.Map; ...@@ -6,6 +6,7 @@ import java.util.Map;
import ac.ed.lurg.ModelConfig; import ac.ed.lurg.ModelConfig;
import ac.ed.lurg.Timestep; import ac.ed.lurg.Timestep;
import ac.ed.lurg.utils.LogWriter;
import ac.sac.raster.RasterHeaderDetails; import ac.sac.raster.RasterHeaderDetails;
import ac.sac.raster.RasterKey; import ac.sac.raster.RasterKey;
import ac.sac.raster.RasterSet; import ac.sac.raster.RasterSet;
...@@ -28,11 +29,19 @@ public class IrrigationRasterSet extends RasterSet<IrrigationItem> { ...@@ -28,11 +29,19 @@ public class IrrigationRasterSet extends RasterSet<IrrigationItem> {
Map<RasterKey, Double> lpjIrrigConstraints = getIrrigFromLpjRunoff(timestep.getYear(), false); Map<RasterKey, Double> lpjIrrigConstraints = getIrrigFromLpjRunoff(timestep.getYear(), false);
for (Map.Entry<RasterKey, IrrigationItem> entry : entrySet()) { for (Map.Entry<RasterKey, IrrigationItem> entry : entrySet()) {
if (entry.getKey().getCol() == 521 & entry.getKey().getRow()==121)
LogWriter.println("Found bit of Nepal");
IrrigationItem irrigItem = entry.getValue(); IrrigationItem irrigItem = entry.getValue();
if (irrigItem != null) { if (irrigItem != null) {
Double d = lpjIrrigConstraints.get(entry.getKey()); Double lpjConstraint = lpjIrrigConstraints.get(entry.getKey());
if (d != null) double d;
irrigItem.setIrrigConstraint(d + irrigItem.getConstraintOffset()); if (lpjConstraint != null && lpjConstraint > 0 && irrigItem.getConstraintOffset() > 0)
d = irrigItem.getConstraintOffset() * lpjConstraint;
else
d = irrigItem.getBaselineIrrigConstraint();
irrigItem.setIrrigConstraint(d);
} }
} }
} }
...@@ -41,11 +50,14 @@ public class IrrigationRasterSet extends RasterSet<IrrigationItem> { ...@@ -41,11 +50,14 @@ public class IrrigationRasterSet extends RasterSet<IrrigationItem> {
Map<RasterKey, Double> lpjIrrigConstraints = getIrrigFromLpjRunoff(ModelConfig.ELLIOTT_BASEYEAR, true); Map<RasterKey, Double> lpjIrrigConstraints = getIrrigFromLpjRunoff(ModelConfig.ELLIOTT_BASEYEAR, true);
for (Map.Entry<RasterKey, IrrigationItem> entry : entrySet()) { for (Map.Entry<RasterKey, IrrigationItem> entry : entrySet()) {
if (entry.getKey().getCol() == 521 & entry.getKey().getRow()==121)
LogWriter.println("Found bit of Nepal");
IrrigationItem irrigItem = entry.getValue(); IrrigationItem irrigItem = entry.getValue();
if (irrigItem != null) { if (irrigItem != null) {
Double d = lpjIrrigConstraints.get(entry.getKey()); Double d = lpjIrrigConstraints.get(entry.getKey());
if (d != null) { if (d != null) {
double offset = irrigItem.getBaselineIrrigConstraint() - d; double offset = irrigItem.getBaselineIrrigConstraint()/d;
irrigItem.setConstraintOffsets(offset); irrigItem.setConstraintOffsets(offset);
} }
} }
...@@ -58,6 +70,9 @@ public class IrrigationRasterSet extends RasterSet<IrrigationItem> { ...@@ -58,6 +70,9 @@ public class IrrigationRasterSet extends RasterSet<IrrigationItem> {
Collection<WaterBasin> waterBasins = fpuManager.getWaterBasins(); Collection<WaterBasin> waterBasins = fpuManager.getWaterBasins();
for (WaterBasin basin : waterBasins) { for (WaterBasin basin : waterBasins) {
if (basin.toString().contains("87"))
LogWriter.println("Found Nepal");
Collection<RasterKey> rasterKeys = fpuManager.getKeysFor(basin); Collection<RasterKey> rasterKeys = fpuManager.getKeysFor(basin);
RasterSet<IrrigationItem> irrigData = createSubsetForKeys(rasterKeys); RasterSet<IrrigationItem> irrigData = createSubsetForKeys(rasterKeys);
double basinRunOff = 0.0, otherUses = 0.0, areaOfBasin = 0.0; double basinRunOff = 0.0, otherUses = 0.0, areaOfBasin = 0.0;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment