Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/WINFOArtifact.java @ 380:5f55047a17e8
Moved expensive allocation of result arrays out of km loop.
flys-artifacts/trunk@1795 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 02 May 2011 16:28:57 +0000 |
parents | 0ccf7200fc51 |
children | 478940d06876 |
comparison
equal
deleted
inserted
replaced
379:c21fb8de54f8 | 380:5f55047a17e8 |
---|---|
282 { | 282 { |
283 logger.info("WINFOArtifact.computeWaterlevelData"); | 283 logger.info("WINFOArtifact.computeWaterlevelData"); |
284 | 284 |
285 WQKms[] wqkms = new WQKms[qs.length]; | 285 WQKms[] wqkms = new WQKms[qs.length]; |
286 for (int i = 0; i < wqkms.length; i++) { | 286 for (int i = 0; i < wqkms.length; i++) { |
287 wqkms[i] = new WQKms(); | 287 wqkms[i] = new WQKms(kms.length); |
288 } | 288 } |
289 | |
290 double [] interpolatedW = new double[qs.length]; | |
289 | 291 |
290 for (double km: kms) { | 292 for (double km: kms) { |
291 double[] interpolatedW = wst.interpolateW(km, qs); | 293 wst.interpolateW(km, qs, interpolatedW); |
292 | 294 |
293 // TODO Modify the interpolation to return a better formed data | 295 // TODO Modify the interpolation to return a better formed data |
294 // structure. | 296 // structure. |
295 for (int i = 0; i < interpolatedW.length; i++) { | 297 for (int i = 0; i < interpolatedW.length; i++) { |
296 wqkms[i].add(interpolatedW[i], qs[i], km); | 298 wqkms[i].add(interpolatedW[i], qs[i], km); |