Mercurial > dive4elements > river
diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/Calculation6.java @ 2230:59af81364eb1
Improved the 'historical discharge' calculation: implemented findValueForW().
flys-artifacts/trunk@3872 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Wed, 01 Feb 2012 15:41:11 +0000 |
parents | 4db19a88bddb |
children | 7335c526befd |
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/Calculation6.java Wed Feb 01 15:00:13 2012 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/Calculation6.java Wed Feb 01 15:41:11 2012 +0000 @@ -26,6 +26,8 @@ public static final int MODE_W = 0; public static final int MODE_Q = 1; + public static final double SCALE = 100d; + public Calculation6(int mode, long[] timerange, double[] values) { this.mode = mode; @@ -115,6 +117,8 @@ protected WQTimerange[] prepareCalculationData(List<DischargeTable> dts) { List<WQTimerange> wqts = new ArrayList<WQTimerange>(values.length); + boolean debug = logger.isDebugEnabled(); + for (double value: values) { logger.debug("Prepare data for value: " + value); @@ -137,6 +141,10 @@ w = findValueForQ(dt, q); } + if (debug) { + logger.debug("Q=" + q + " | W=" + w); + } + wqt.add(w, q, t); } @@ -148,13 +156,15 @@ protected double findValueForW(DischargeTable dt, double w) { - logger.warn("TODO: IMPLEMENT ME!"); - return 5; + double[][] vs = DischargeTables.loadDischargeTableValues(dt,SCALE,true); + return DischargeTables.getQForW(vs, w); } protected double findValueForQ(DischargeTable dt, double q) { + double[][] vs = DischargeTables.loadDischargeTableValues(dt,SCALE,true); logger.warn("TODO: IMPLEMENT ME!"); + return 10; }