comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/W.java @ 4838:ac9a3d9576b4

merged.
author Raimund Renkert <rrenkert@intevation.de>
date Wed, 23 Jan 2013 11:15:35 +0100
parents bcf25d8c183e
children
comparison
equal deleted inserted replaced
4837:9e25c7523485 4838:ac9a3d9576b4
1 package de.intevation.flys.artifacts.model; 1 package de.intevation.flys.artifacts.model;
2 2
3 import de.intevation.flys.utils.DataUtil; 3 import de.intevation.flys.utils.DataUtil;
4 import de.intevation.flys.utils.DoubleUtil;
4 5
5 import gnu.trove.TDoubleArrayList; 6 import gnu.trove.TDoubleArrayList;
6 7
7 import org.apache.log4j.Logger; 8 import org.apache.log4j.Logger;
8 9
58 59
59 public double minWs() { 60 public double minWs() {
60 return ws.min(); 61 return ws.min();
61 } 62 }
62 63
63 public static void removeNaNs(TDoubleArrayList [] arrays) {
64
65 int dest = 0;
66
67 int A = arrays.length;
68 int N = arrays[0].size();
69
70 OUTER: for (int i = 0; i < N; ++i) {
71 for (int j = 0; j < A; ++j) {
72 TDoubleArrayList a = arrays[j];
73 double v = a.getQuick(i);
74 if (Double.isNaN(v)) {
75 continue OUTER;
76 }
77 a.setQuick(dest, v);
78 }
79 ++dest;
80 }
81
82 if (dest < N) {
83 for (int i = 0; i < A; ++i) {
84 arrays[i].remove(dest, N-dest);
85 }
86 }
87 }
88
89 public void removeNaNs() { 64 public void removeNaNs() {
90 removeNaNs(new TDoubleArrayList [] { ws }); 65 DoubleUtil.removeNaNs(new TDoubleArrayList [] { ws });
91 } 66 }
92 67
93 public boolean guessWaterIncreasing() { 68 public boolean guessWaterIncreasing() {
94 return guessWaterIncreasing(0.05f); 69 return guessWaterIncreasing(0.05f);
95 } 70 }

http://dive4elements.wald.intevation.org