diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQ.java @ 744:b385577bcaca

WQ: Added a method to guess is increasing. flys-artifacts/trunk@2246 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Mon, 27 Jun 2011 09:17:41 +0000
parents cbaa3ca86f2f
children 30be4b71c36c
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQ.java	Mon Jun 27 07:45:32 2011 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQ.java	Mon Jun 27 09:17:41 2011 +0000
@@ -2,6 +2,8 @@
 
 import gnu.trove.TDoubleArrayList;
 
+import java.util.Random;
+
 public class WQ
 extends      NamedObject
 {
@@ -103,5 +105,29 @@
     public void removeNaNs() {
         removeNaNs(new TDoubleArrayList [] { w, q });
     }
+
+    public boolean guessWaterIncreasing() {
+        return guessWaterIncreasing(0.05f);
+    }
+
+    public boolean guessWaterIncreasing(float factor) {
+
+        int N = w.size();
+        int samples = (int)(factor*N) + 1;
+
+        int up = 0;
+
+        Random rand = new Random();
+
+        for (int i = 0; i < samples; ++i) {
+            int    pos = rand.nextInt(N-1) + 1;
+            double w1  = w.getQuick(pos-1);
+            double w2  = w.getQuick(pos);
+            if (w2 > w1) ++up;
+        }
+
+        return up > samples/2;
+    }
+
 }
 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org