comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisCalculation.java @ 3420:7f7ab030a4e3

FixA: Minor refactoring flys-artifacts/trunk@5074 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Thu, 19 Jul 2012 16:57:44 +0000
parents da7cf0e3ccaa
children 1a636be7612b
comparison
equal deleted inserted replaced
3419:da7cf0e3ccaa 3420:7f7ab030a4e3
1 package de.intevation.flys.artifacts.model.fixings; 1 package de.intevation.flys.artifacts.model.fixings;
2
3 import de.intevation.artifacts.common.utils.StringUtils;
2 4
3 import de.intevation.flys.artifacts.access.FixAnalysisAccess; 5 import de.intevation.flys.artifacts.access.FixAnalysisAccess;
4 6
5 import de.intevation.flys.artifacts.math.fitting.Function; 7 import de.intevation.flys.artifacts.math.fitting.Function;
6 import de.intevation.flys.artifacts.math.fitting.FunctionFactory; 8 import de.intevation.flys.artifacts.math.fitting.FunctionFactory;
44 extends FixCalculation 46 extends FixCalculation
45 { 47 {
46 private static Logger log = Logger.getLogger(FixAnalysisCalculation.class); 48 private static Logger log = Logger.getLogger(FixAnalysisCalculation.class);
47 49
48 public static final double EPSILON = 1e-4; 50 public static final double EPSILON = 1e-4;
51
52 // TODO: Move to base class?
53 public static final String [] STANDARD_COLUMNS = {
54 "km", "chi_sqr", "max_q", "std-dev"
55 };
49 56
50 protected DateRange referencePeriod; 57 protected DateRange referencePeriod;
51 protected DateRange [] analysisPeriods; 58 protected DateRange [] analysisPeriods;
52 59
53 public FixAnalysisCalculation() { 60 public FixAnalysisCalculation() {
133 Fitting fitting = new Fitting(func, qwdFactory, preprocessing); 140 Fitting fitting = new Fitting(func, qwdFactory, preprocessing);
134 141
135 String [] parameterNames = func.getParameterNames(); 142 String [] parameterNames = func.getParameterNames();
136 143
137 Parameters results = 144 Parameters results =
138 new Parameters(createColumnNames(parameterNames)); 145 new Parameters(
146 StringUtils.join(STANDARD_COLUMNS, parameterNames));
139 147
140 boolean invalid = false; 148 boolean invalid = false;
141 149
142 if (debug) { 150 if (debug) {
143 log.debug("number of kms: " + kms.length); 151 log.debug("number of kms: " + kms.length);
538 columns[i] = cols.toArray(new Column[cols.size()]); 546 columns[i] = cols.toArray(new Column[cols.size()]);
539 } 547 }
540 548
541 return columns; 549 return columns;
542 } 550 }
543
544 protected static String [] createColumnNames(String [] parameters) {
545 String [] result = new String[parameters.length + 4];
546 result[0] = "km";
547 result[1] = "chi_sqr";
548 result[2] = "max_q";
549 result[3] = "std-dev";
550 System.arraycopy(parameters, 0, result, 4, parameters.length);
551 return result;
552 }
553 } 551 }
554 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : 552 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org