annotate artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/SedimentLoad.java @ 5863:4897a58c8746

River artifacts: Added new copyright headers.
author Sascha L. Teichmann <teichmann@intevation.de>
date Sun, 28 Apr 2013 14:40:59 +0200
parents 5aa05a7a34b7
children af13ceeba52a
rev   line source
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
6 * documentation coming with Dive4Elements River for details.
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5787
diff changeset
9 package org.dive4elements.river.artifacts.model.minfo;
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
10
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
11 import java.util.Date;
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
12 import java.util.HashMap;
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
13 import java.util.Set;
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
14
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5787
diff changeset
15 import org.dive4elements.river.artifacts.model.NamedObjectImpl;
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
16
5787
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5662
diff changeset
17 /** Gives access to Fractions (at kms). */
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
18 public class SedimentLoad
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
19 extends NamedObjectImpl
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
20 {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
21 protected String description;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
22 protected Date start;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
23 protected Date end;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
24 protected boolean isEpoch;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
25
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
26 protected HashMap<Double, SedimentLoadFraction> kms;
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
27
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
28 public SedimentLoad() {
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
29 kms = new HashMap<Double, SedimentLoadFraction>();
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
30 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
31
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
32 public SedimentLoad(
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
33 String description,
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
34 Date start,
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
35 Date end,
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
36 boolean isEpoch
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
37 ) {
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
38 this();
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
39 this.description = description;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
40 this.start = start;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
41 this.end = end;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
42 this.isEpoch = isEpoch;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
43 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
44
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
45 public String getDescription() {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
46 return description;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
47 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
48
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
49 public void setDescription(String description) {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
50 this.description = description;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
51 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
52
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
53 public Date getStart() {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
54 return start;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
55 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
56
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
57 public void setStart(Date start) {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
58 this.start = start;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
59 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
60
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
61 public Date getEnd() {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
62 return end;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
63 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
64
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
65 public void setEnd(Date end) {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
66 this.end = end;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
67 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
68
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
69 public boolean isEpoch() {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
70 return isEpoch;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
71 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
72
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
73 public void setEpoch(boolean isEpoch) {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
74 this.isEpoch = isEpoch;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
75 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
76
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
77 public Set<Double> getKms() {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
78 return kms.keySet();
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
79 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
80
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
81 public void addKm(double km, SedimentLoadFraction fraction) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
82 kms.put(km, fraction);
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
83 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
84
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
85 public SedimentLoadFraction getFraction(double km) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
86 if (kms.get(km) == null) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
87 return new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
88 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
89 return kms.get(km);
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
90 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
91
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
92 public void setCoarse(double km, double coarse) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
93 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
94 kms.get(km).setCoarse(coarse);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
95 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
96 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
97 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
98 f.setCoarse(coarse);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
99 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
100 }
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
101 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
102
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
103 public void setFineMiddle(double km, double fine_middle) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
104 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
105 kms.get(km).setFine_middle(fine_middle);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
106 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
107 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
108 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
109 f.setFine_middle(fine_middle);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
110 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
111 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
112 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
113
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
114 public void setSand(double km, double sand) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
115 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
116 kms.get(km).setSand(sand);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
117 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
118 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
119 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
120 f.setSand(sand);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
121 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
122 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
123 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
124
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
125 public void setSuspSand(double km, double susp_sand) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
126 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
127 kms.get(km).setSusp_sand(susp_sand);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
128 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
129 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
130 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
131 f.setSusp_sand(susp_sand);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
132 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
133 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
134 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
135
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
136 public void setSuspSandBed(double km, double susp_sand_bed) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
137 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
138 kms.get(km).setSusp_sand_bed(susp_sand_bed);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
139 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
140 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
141 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
142 f.setSusp_sand_bed(susp_sand_bed);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
143 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
144 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
145 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
146
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
147 public void setSuspSediment(double km, double susp_sediment) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
148 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
149 kms.get(km).setSusp_sediment(susp_sediment);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
150 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
151 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
152 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
153 f.setSusp_sediment(susp_sediment);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
154 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
155 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
156 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
157
4546
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
158 public void setLoadTotal(double km, double total) {
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
159 if (kms.containsKey(km)) {
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
160 kms.get(km).setLoadTotal(total);
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
161 }
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
162 else {
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
163 SedimentLoadFraction f = new SedimentLoadFraction();
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
164 f.setLoadTotal(total);
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
165 kms.put(km, f);
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
166 }
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
167 }
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
168
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
169 public void setTotal(double km, double total) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
170 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
171 kms.get(km).setTotal(total);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
172 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
173 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
174 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
175 f.setTotal(total);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
176 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
177 }
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
178 }
4515
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
179
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
180 public boolean hasCoarse() {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
181 for (SedimentLoadFraction slf : kms.values()) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
182 if (slf.getCoarse() > 0d) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
183 return true;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
184 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
185 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
186 return false;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
187 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
188
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
189 public boolean hasFineMiddle() {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
190 for (SedimentLoadFraction slf : kms.values()) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
191 if (slf.getFine_middle() > 0d) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
192 return true;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
193 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
194 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
195 return false;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
196 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
197
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
198 public boolean hasSand() {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
199 for (SedimentLoadFraction slf : kms.values()) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
200 if (slf.getSand() > 0d) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
201 return true;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
202 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
203 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
204 return false;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
205 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
206
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
207 public boolean hasSuspSand() {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
208 for (SedimentLoadFraction slf : kms.values()) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
209 if (slf.getSusp_sand() > 0d) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
210 return true;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
211 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
212 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
213 return false;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
214 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
215
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
216 public boolean hasSuspSediment() {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
217 for (SedimentLoadFraction slf : kms.values()) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
218 if (slf.getSusp_sediment() > 0d) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
219 return true;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
220 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
221 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
222 return false;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
223 }
4546
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
224
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
225 public boolean hasTotalLoad() {
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
226 for (SedimentLoadFraction slf : kms.values()) {
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
227 if (slf.getLoadTotal() > 0d) {
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
228 return true;
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
229 }
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
230 }
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
231 return false;
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
232 }
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
233 }
5662
7e3cde8b564c Cosmetics, docs, vimlines.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4551
diff changeset
234 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org