Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/tkhstate/BedHeightsFinder.java @ 8942:11bf13cf0463
Minor changes to tkh calculation. Loading default bed heights form config file.
author | gernotbelger |
---|---|
date | Fri, 09 Mar 2018 18:47:06 +0100 |
parents | d9dbf0b74bc2 |
children | 5d5d482da3e9 |
comparison
equal
deleted
inserted
replaced
8941:a9950a3a71e5 | 8942:11bf13cf0463 |
---|---|
9 */ | 9 */ |
10 package org.dive4elements.river.artifacts.sinfo.tkhstate; | 10 package org.dive4elements.river.artifacts.sinfo.tkhstate; |
11 | 11 |
12 import java.util.ArrayList; | 12 import java.util.ArrayList; |
13 import java.util.Collection; | 13 import java.util.Collection; |
14 import java.util.Collections; | |
15 import java.util.List; | 14 import java.util.List; |
16 import java.util.Map.Entry; | 15 import java.util.Map.Entry; |
17 import java.util.NavigableMap; | 16 import java.util.NavigableMap; |
18 import java.util.TreeMap; | 17 import java.util.TreeMap; |
19 | 18 |
20 import org.apache.commons.lang.math.DoubleRange; | 19 import org.apache.commons.lang.math.DoubleRange; |
21 import org.dive4elements.river.artifacts.math.Linear; | 20 import org.dive4elements.river.artifacts.math.Linear; |
22 import org.dive4elements.river.artifacts.model.Calculation; | |
23 import org.dive4elements.river.artifacts.sinfo.util.BedHeightInfo; | 21 import org.dive4elements.river.artifacts.sinfo.util.BedHeightInfo; |
24 import org.dive4elements.river.model.BedHeight; | 22 import org.dive4elements.river.model.BedHeight; |
25 import org.dive4elements.river.model.BedHeightValue; | 23 import org.dive4elements.river.model.BedHeightValue; |
26 import org.dive4elements.river.model.River; | |
27 | 24 |
28 /** | 25 /** |
29 * Provides bed heigts for vcarious calculations. | 26 * Provides bed heigts for vcarious calculations. |
30 * | 27 * |
31 * @author Gernot Belger | 28 * @author Gernot Belger |
35 private final BedHeightInfo info; | 32 private final BedHeightInfo info; |
36 | 33 |
37 private final NavigableMap<Double, BedHeightValue> values; | 34 private final NavigableMap<Double, BedHeightValue> values; |
38 | 35 |
39 /** | 36 /** |
40 * Create specific bed heights used in tkh-calculation | 37 * Create bed height finders from a collection of bed heights. |
41 * | |
42 * @param problems | |
43 */ | 38 */ |
44 public static Collection<BedHeightsFinder> createTkhBedHeights(final River river, final Calculation problems, final DoubleRange range) { | 39 public static Collection<BedHeightsFinder> createTkhBedHeights(final DoubleRange range, final Collection<BedHeight> bedHeights) { |
45 // FIXME: determine relevant bed-heights by river: read from some configuration file | |
46 // '3' is already the right one for demo-model == '"DGM-2004_Epoche-2-SOBEK"' | |
47 final int bedheightId = 3; | |
48 | |
49 final Collection<BedHeight> bedHeights = Collections.singletonList(BedHeight.getBedHeightById(bedheightId)); | |
50 | |
51 // TODO: check for overlapping ranges... and provide a warning message, else we get problems later | |
52 | |
53 final List<BedHeightsFinder> result = new ArrayList<>(bedHeights.size()); | 40 final List<BedHeightsFinder> result = new ArrayList<>(bedHeights.size()); |
54 | 41 |
55 for (final BedHeight bedHeight : bedHeights) { | 42 for (final BedHeight bedHeight : bedHeights) { |
56 result.add(createBedHeights(bedHeight, range)); | 43 final BedHeightsFinder finder = createBedHeights(bedHeight, range); |
44 result.add(finder); | |
57 } | 45 } |
58 | 46 |
59 return result; | 47 return result; |
60 } | 48 } |
61 | 49 |