# HG changeset patch # User Sascha L. Teichmann # Date 1338887484 0 # Node ID e341606faeb475717e5cbfeda274f85e1b78d73f # Parent ba62c1751f076f9a3a2aa38d3df8ea08e935b42d FixA: Use KMIndex for outliers. flys-artifacts/trunk@4579 c6561f87-3c4e-4783-a992-168aeb5c3f6f diff -r ba62c1751f07 -r e341606faeb4 flys-artifacts/ChangeLog --- a/flys-artifacts/ChangeLog Tue Jun 05 09:04:01 2012 +0000 +++ b/flys-artifacts/ChangeLog Tue Jun 05 09:11:24 2012 +0000 @@ -1,3 +1,10 @@ +2012-06-05 Sascha L. Teichmann + + * src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java, + src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java: + Now uses the KMIndex for outliers. + TODO: Use KMIndex for DeltaWTs, too. + 2012-06-05 Sascha L. Teichmann * src/main/java/de/intevation/flys/utils/KMIndex.java: New. diff -r ba62c1751f07 -r e341606faeb4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java Tue Jun 05 09:04:01 2012 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/fixings/FixCalculation.java Tue Jun 05 09:11:24 2012 +0000 @@ -25,14 +25,13 @@ import de.intevation.flys.utils.DateAverager; import de.intevation.flys.utils.DoubleUtil; -import de.intevation.flys.utils.EpsilonComparator; +import de.intevation.flys.utils.KMIndex; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.TreeMap; import org.apache.log4j.Logger; @@ -206,8 +205,7 @@ log.debug("number of kms: " + kms.length); } - TreeMap outliers = - new TreeMap(EpsilonComparator.INSTANCE); + KMIndex outliers = new KMIndex(); int kmIndex = results.columnIndex("km"); int chiSqrIndex = results.columnIndex("chi_sqr"); @@ -235,7 +233,7 @@ } if (fitting.hasOutliers()) { - outliers.put(Double.valueOf(km), fitting.outliersToArray()); + outliers.add(km, fitting.outliersToArray()); } int row = results.newRow(); @@ -263,6 +261,8 @@ overview, results); + outliers.sort(); + FixResult fr = new FixResult(results, deltaWTsKM, outliers); return new CalculationResult(fr, this); diff -r ba62c1751f07 -r e341606faeb4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java Tue Jun 05 09:04:01 2012 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/fixings/FixResult.java Tue Jun 05 09:11:24 2012 +0000 @@ -2,7 +2,7 @@ import de.intevation.flys.artifacts.model.Parameters; -import java.util.TreeMap; +import de.intevation.flys.utils.KMIndex; import java.io.Serializable; @@ -11,15 +11,15 @@ { protected Parameters parameters; protected DeltaWTsKM deltaWTsKM; - protected TreeMap outliers; + protected KMIndex outliers; public FixResult() { } public FixResult( - Parameters parameters, - DeltaWTsKM deltaWTsKM, - TreeMap outliers + Parameters parameters, + DeltaWTsKM deltaWTsKM, + KMIndex outliers ) { this.parameters = parameters; this.deltaWTsKM = deltaWTsKM; @@ -42,11 +42,11 @@ this.deltaWTsKM = deltaWTsKM; } - public TreeMap getOutliers() { + public KMIndex getOutliers() { return outliers; } - public void setOutliers(TreeMap outliers) { + public void setOutliers(KMIndex outliers) { this.outliers = outliers; } }