annotate flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/minfo/SedimentLoad.java @ 4546:af1938d4e957

New field in sediment load object and calculation. * Factory reads total load value. * New field in sediment load object. * State adds new facet to generate output for this type of data.
author Raimund Renkert <rrenkert@intevation.de>
date Thu, 15 Nov 2012 17:44:07 +0100
parents 17d896822d70
children 2fadc6c5cdad
rev   line source
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.artifacts.model.minfo;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
2
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
3 import java.util.Date;
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
4 import java.util.HashMap;
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
5 import java.util.Set;
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
6
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
7 import org.apache.log4j.Logger;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
8
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
9 import de.intevation.flys.artifacts.model.NamedObjectImpl;
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
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
12 public class SedimentLoad
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
13 extends NamedObjectImpl
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
14 {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
15 protected String description;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
16 protected Date start;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
17 protected Date end;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
18 protected boolean isEpoch;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
19
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
20 protected HashMap<Double, SedimentLoadFraction> kms;
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
21
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
22 public SedimentLoad() {
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
23 kms = new HashMap<Double, SedimentLoadFraction>();
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
24 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
25
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
26 public SedimentLoad(
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
27 String description,
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
28 Date start,
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
29 Date end,
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
30 boolean isEpoch
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
31 ) {
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
32 this();
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
33 this.description = description;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
34 this.start = start;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
35 this.end = end;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
36 this.isEpoch = isEpoch;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
37 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
38
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
39 public String getDescription() {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
40 return description;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
41 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
42
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
43 public void setDescription(String description) {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
44 this.description = description;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
45 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
46
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
47 public Date getStart() {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
48 return start;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
49 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
50
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
51 public void setStart(Date start) {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
52 this.start = start;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
53 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
54
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
55 public Date getEnd() {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
56 return end;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
57 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
58
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
59 public void setEnd(Date end) {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
60 this.end = end;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
61 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
62
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
63 public boolean isEpoch() {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
64 return isEpoch;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
65 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
66
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
67 public void setEpoch(boolean isEpoch) {
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
68 this.isEpoch = isEpoch;
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
69 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
70
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
71 public Set<Double> getKms() {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
72 return kms.keySet();
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
73 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
74
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
75 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
76 kms.put(km, fraction);
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
77 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
78
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
79 public SedimentLoadFraction getFraction(double km) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
80 if (kms.get(km) == null) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
81 return new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
82 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
83 return kms.get(km);
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
84 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
85
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
86 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
87 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
88 kms.get(km).setCoarse(coarse);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
89 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
90 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
91 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
92 f.setCoarse(coarse);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
93 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
94 }
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
95 }
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
96
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
97 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
98 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
99 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
100 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
101 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
102 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
103 f.setFine_middle(fine_middle);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
104 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
105 }
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
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
108 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
109 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
110 kms.get(km).setSand(sand);
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 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
113 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
114 f.setSand(sand);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
115 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
116 }
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
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
119 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
120 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
121 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
122 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
123 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
124 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
125 f.setSusp_sand(susp_sand);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
126 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
127 }
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
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
130 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
131 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
132 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
133 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
134 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
135 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
136 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
137 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
138 }
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
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
141 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
142 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
143 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
144 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
145 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
146 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
147 f.setSusp_sediment(susp_sediment);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
148 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
149 }
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
4546
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
152 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
153 if (kms.containsKey(km)) {
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
154 kms.get(km).setLoadTotal(total);
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
155 }
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
156 else {
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
157 SedimentLoadFraction f = new SedimentLoadFraction();
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
158 f.setLoadTotal(total);
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
159 kms.put(km, f);
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
160 }
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
4370
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
163 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
164 if (kms.containsKey(km)) {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
165 kms.get(km).setTotal(total);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
166 }
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
167 else {
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
168 SedimentLoadFraction f = new SedimentLoadFraction();
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
169 f.setTotal(total);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
170 kms.put(km, f);
6a65e7ef43c0 Updated data object and factory for sediment load.
Raimund Renkert <rrenkert@intevation.de>
parents: 4296
diff changeset
171 }
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
172 }
4515
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
173
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
174 public boolean hasCoarse() {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
175 for (SedimentLoadFraction slf : kms.values()) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
176 if (slf.getCoarse() > 0d) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
177 return true;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
178 }
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 return false;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
181 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
182
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
183 public boolean hasFineMiddle() {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
184 for (SedimentLoadFraction slf : kms.values()) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
185 if (slf.getFine_middle() > 0d) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
186 return true;
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 return false;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
190 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
191
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
192 public boolean hasSand() {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
193 for (SedimentLoadFraction slf : kms.values()) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
194 if (slf.getSand() > 0d) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
195 return true;
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 return false;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
199 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
200
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
201 public boolean hasSuspSand() {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
202 for (SedimentLoadFraction slf : kms.values()) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
203 if (slf.getSusp_sand() > 0d) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
204 return true;
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 return false;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
208 }
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
209
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
210 public boolean hasSuspSediment() {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
211 for (SedimentLoadFraction slf : kms.values()) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
212 if (slf.getSusp_sediment() > 0d) {
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
213 return true;
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 return false;
17d896822d70 Added methods to sediment load object to check fractions.
Raimund Renkert <rrenkert@intevation.de>
parents: 4483
diff changeset
217 }
4546
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
218
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
219 public boolean hasTotalLoad() {
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
220 for (SedimentLoadFraction slf : kms.values()) {
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
221 if (slf.getLoadTotal() > 0d) {
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
222 return true;
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
223 }
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 return false;
af1938d4e957 New field in sediment load object and calculation.
Raimund Renkert <rrenkert@intevation.de>
parents: 4515
diff changeset
226 }
4296
3051bc28ac43 Added data object and factory for sediment load calculation.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
227 }

http://dive4elements.wald.intevation.org