annotate artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/util/BedHeightInfo.java @ 9573:b9c87bbff6a4

mean bed height -> mean bed LEVEL
author gernotbelger
date Tue, 06 Nov 2018 10:56:22 +0100
parents 6a1580b38e7d
children
rev   line source
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
2 * Software engineering by
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
3 * Björnsen Beratende Ingenieure GmbH
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
5 *
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
6 * This file is Free Software under the GNU AGPL (>=v3)
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
8 * documentation coming with Dive4Elements River for details.
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
9 */
8894
a66f2a7c4f84 SINFO FlowDepth - slight code cleanup
gernotbelger
parents: 8884
diff changeset
10 package org.dive4elements.river.artifacts.sinfo.util;
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
11
8884
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8882
diff changeset
12 import java.io.Serializable;
8942
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
13 import java.math.BigDecimal;
8884
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8882
diff changeset
14
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
15 import org.dive4elements.river.model.BedHeight;
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
16
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
17 /**
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
18 * Basic infos about a {@link BedHeight}.
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
19 *
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
20 * @author Gernot Belger
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
21 */
8894
a66f2a7c4f84 SINFO FlowDepth - slight code cleanup
gernotbelger
parents: 8884
diff changeset
22 public final class BedHeightInfo implements Serializable {
8884
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8882
diff changeset
23
7a8c12706834 Work on SINFO-FlowDepth
gernotbelger
parents: 8882
diff changeset
24 private static final long serialVersionUID = 1L;
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
25
8946
5d5d482da3e9 Implementing SINFO - FlowDepthMinMax calculation
gernotbelger
parents: 8942
diff changeset
26 private final int year;
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
27
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
28 private final String description;
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
29
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
30 private final String type;
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
31
8882
f762fadc5313 Further work on SINFO-FlowDepth
gernotbelger
parents: 8879
diff changeset
32 private final String evaluationBy;
f762fadc5313 Further work on SINFO-FlowDepth
gernotbelger
parents: 8879
diff changeset
33
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
34 private final String locationSystem;
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
35
8879
64ca63f79f6f Further work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
36 private final String curElevationModelUnit;
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
37
8879
64ca63f79f6f Further work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
38 private final String oldElevationModelUnit;
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
39
8942
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
40 private final BigDecimal from;
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
41
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
42 private final BigDecimal to;
8882
f762fadc5313 Further work on SINFO-FlowDepth
gernotbelger
parents: 8879
diff changeset
43
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
44 public static BedHeightInfo from(final BedHeight bedHeight) {
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
45 return new BedHeightInfo(bedHeight);
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
46 }
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
47
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
48 private BedHeightInfo(final BedHeight bedHeight) {
9230
6a1580b38e7d Using a bed height without year in tkh calculation now throws an immediate error
gernotbelger
parents: 8946
diff changeset
49 final Integer bhYear = bedHeight.getYear();
6a1580b38e7d Using a bed height without year in tkh calculation now throws an immediate error
gernotbelger
parents: 8946
diff changeset
50 if (bhYear == null) {
9573
b9c87bbff6a4 mean bed height -> mean bed LEVEL
gernotbelger
parents: 9230
diff changeset
51 // REMARK: this should never happen, as we do not allow the user to select bed levels without a year information
9230
6a1580b38e7d Using a bed height without year in tkh calculation now throws an immediate error
gernotbelger
parents: 8946
diff changeset
52 throw new IllegalArgumentException("bedHeight has no year");
6a1580b38e7d Using a bed height without year in tkh calculation now throws an immediate error
gernotbelger
parents: 8946
diff changeset
53 }
6a1580b38e7d Using a bed height without year in tkh calculation now throws an immediate error
gernotbelger
parents: 8946
diff changeset
54
6a1580b38e7d Using a bed height without year in tkh calculation now throws an immediate error
gernotbelger
parents: 8946
diff changeset
55 this.year = bhYear;
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
56 this.description = bedHeight.getDescription();
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
57 this.type = bedHeight.getType().getName();
8882
f762fadc5313 Further work on SINFO-FlowDepth
gernotbelger
parents: 8879
diff changeset
58 this.evaluationBy = bedHeight.getEvaluationBy();
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
59 this.locationSystem = bedHeight.getLocationSystem().getName();
8879
64ca63f79f6f Further work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
60 this.curElevationModelUnit = bedHeight.getCurElevationModel().getUnit().getName();
64ca63f79f6f Further work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
61 this.oldElevationModelUnit = bedHeight.getCurElevationModel().getUnit().getName();
8942
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
62
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
63 this.from = bedHeight.getRange().getA();
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
64 this.to = bedHeight.getRange().getB();
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
65 }
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
66
8946
5d5d482da3e9 Implementing SINFO - FlowDepthMinMax calculation
gernotbelger
parents: 8942
diff changeset
67 public int getYear() {
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
68 return this.year;
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
69 }
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
70
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
71 public String getDescription() {
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
72 return this.description;
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
73 }
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
74
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
75 public String getType() {
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
76 return this.type;
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
77 }
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
78
8882
f762fadc5313 Further work on SINFO-FlowDepth
gernotbelger
parents: 8879
diff changeset
79 public String getEvaluationBy() {
f762fadc5313 Further work on SINFO-FlowDepth
gernotbelger
parents: 8879
diff changeset
80 return this.evaluationBy;
f762fadc5313 Further work on SINFO-FlowDepth
gernotbelger
parents: 8879
diff changeset
81 }
f762fadc5313 Further work on SINFO-FlowDepth
gernotbelger
parents: 8879
diff changeset
82
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
83 public String getLocationSystem() {
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
84 return this.locationSystem;
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
85 }
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
86
8879
64ca63f79f6f Further work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
87 public String getCurElevationModelUnit() {
64ca63f79f6f Further work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
88 return this.curElevationModelUnit;
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
89 }
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
90
8879
64ca63f79f6f Further work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
91 public String getOldElevationModelUnit() {
64ca63f79f6f Further work on SINFO-FlowDepth
gernotbelger
parents: 8877
diff changeset
92 return this.oldElevationModelUnit;
8877
9f7a285b0ee3 Some work on SINFO FlowDepth
gernotbelger
parents:
diff changeset
93 }
8942
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
94
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
95 public BigDecimal getFrom() {
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
96 return this.from;
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
97 }
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
98
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
99 public BigDecimal getTo() {
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
100 return this.to;
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
101 }
11bf13cf0463 Minor changes to tkh calculation. Loading default bed heights form config file.
gernotbelger
parents: 8894
diff changeset
102 }

http://dive4elements.wald.intevation.org