annotate artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flowdepth/FlowDepthCalculationResult.java @ 8915:d9dbf0b74bc2

Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
author gernotbelger
date Wed, 28 Feb 2018 17:27:15 +0100
parents a66f2a7c4f84
children 82998242ba84
rev   line source
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
1 /* Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
2 * Software engineering by
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
3 * Björnsen Beratende Ingenieure GmbH
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
5 *
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
6 * This file is Free Software under the GNU AGPL (>=v3)
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
8 * documentation coming with Dive4Elements River for details.
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
9 */
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
10 package org.dive4elements.river.artifacts.sinfo.flowdepth;
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
11
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
12 import java.util.Collection;
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
13
8915
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
14 import org.dive4elements.river.artifacts.sinfo.common.AbstractSInfoCalculationResult;
8894
a66f2a7c4f84 SINFO FlowDepth - slight code cleanup
gernotbelger
parents: 8886
diff changeset
15 import org.dive4elements.river.artifacts.sinfo.util.BedHeightInfo;
a66f2a7c4f84 SINFO FlowDepth - slight code cleanup
gernotbelger
parents: 8886
diff changeset
16 import org.dive4elements.river.artifacts.sinfo.util.WstInfo;
a66f2a7c4f84 SINFO FlowDepth - slight code cleanup
gernotbelger
parents: 8886
diff changeset
17
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
18 import gnu.trove.TDoubleArrayList;
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
19
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
20 /**
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
21 * Contains the results of a {@link FlowDepthCalculation}.
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
22 *
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
23 * @author Gernot Belger
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
24 */
8915
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
25 final class FlowDepthCalculationResult extends AbstractSInfoCalculationResult<FlowDepthRow> {
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
26
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
27 private static final long serialVersionUID = 1L;
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
28
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
29 private final BedHeightInfo sounding;
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
30
8915
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
31 public FlowDepthCalculationResult(final String label, final WstInfo wst, final BedHeightInfo sounding, final boolean hasTkh,
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
32 final Collection<FlowDepthRow> rows) {
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
33 super(label, wst, hasTkh, rows);
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
34
8915
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
35 this.sounding = sounding;
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
36 }
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
37
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
38 public BedHeightInfo getSounding() {
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
39 return this.sounding;
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
40 }
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
41
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
42 public double[][] getFlowDepthPoints() {
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
43
8915
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
44 final Collection<FlowDepthRow> rows = getRows();
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
45
8915
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
46 final TDoubleArrayList xPoints = new TDoubleArrayList(rows.size());
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
47 final TDoubleArrayList yPoints = new TDoubleArrayList(rows.size());
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
48
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
49 for (final FlowDepthRow row : rows) {
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
50 xPoints.add(row.getStation());
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
51 yPoints.add(row.getFlowDepth());
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
52 }
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents: 8854
diff changeset
53
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
54 return new double[][] { xPoints.toNativeArray(), yPoints.toNativeArray() };
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
55 }
8884
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
56
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
57 public double[][] getFlowDepthTkhPoints() {
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
58
8915
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
59 final Collection<FlowDepthRow> rows = getRows();
8884
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
60
8915
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
61 final TDoubleArrayList xPoints = new TDoubleArrayList(rows.size());
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
62 final TDoubleArrayList yPoints = new TDoubleArrayList(rows.size());
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
63
d9dbf0b74bc2 Refaktoring of flow depth calculation, extracting tkh part. First implementation of tkh calculation.
gernotbelger
parents: 8894
diff changeset
64 for (final FlowDepthRow row : rows) {
8884
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
65 xPoints.add(row.getStation());
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
66 yPoints.add(row.getFlowDepthWithTkh());
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
67 }
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
68
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
69 return new double[][] { xPoints.toNativeArray(), yPoints.toNativeArray() };
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
70 }
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents:
diff changeset
71 }

http://dive4elements.wald.intevation.org