comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/fixings/FixAnalysisCalculation.java @ 3605:7196f06e0928

FixA: Made indices of analysis periods QWs zero based. flys-artifacts/trunk@5232 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Wed, 22 Aug 2012 11:58:48 +0000
parents 2382b26079ac
children e0f54fab55d3
comparison
equal deleted inserted replaced
3604:2382b26079ac 3605:7196f06e0928
24 import de.intevation.flys.utils.DateAverager; 24 import de.intevation.flys.utils.DateAverager;
25 import de.intevation.flys.utils.KMIndex; 25 import de.intevation.flys.utils.KMIndex;
26 26
27 import java.util.ArrayList; 27 import java.util.ArrayList;
28 import java.util.Date; 28 import java.util.Date;
29 import java.util.HashMap;
29 import java.util.List; 30 import java.util.List;
30 31
31 import org.apache.commons.math.stat.descriptive.moment.StandardDeviation; 32 import org.apache.commons.math.stat.descriptive.moment.StandardDeviation;
32 33
33 import org.apache.log4j.Logger; 34 import org.apache.log4j.Logger;
126 KMIndex<AnalysisPeriod []> results = 127 KMIndex<AnalysisPeriod []> results =
127 new KMIndex<AnalysisPeriod []>(parameters.size()); 128 new KMIndex<AnalysisPeriod []>(parameters.size());
128 129
129 IdsFilter idsFilter = new IdsFilter(events); 130 IdsFilter idsFilter = new IdsFilter(events);
130 131
132 HashMap<Integer, Integer> col2index = new HashMap<Integer, Integer>();
133
134
131 for (int row = 0, R = parameters.size(); row < R; ++row) { 135 for (int row = 0, R = parameters.size(); row < R; ++row) {
132 double km = parameters.get(row, kmIndex); 136 double km = parameters.get(row, kmIndex);
133 parameters.get(row, parameterIndices, parameterValues); 137 parameters.get(row, parameterIndices, parameterValues);
134 138
135 // This is the paraterized function for a given km. 139 // This is the paraterized function for a given km.
197 stdDev.increment(dw); 201 stdDev.increment(dw);
198 202
199 Date date = column.getDate(); 203 Date date = column.getDate();
200 String description = column.getDescription(); 204 String description = column.getDescription();
201 205
206 Integer colIdx = column.getIndex();
207 Integer index = col2index.get(colIdx);
208 if (index == null) {
209 index = col2index.size();
210 col2index.put(colIdx, index);
211 }
212
202 QWD qwd = new QWD( 213 QWD qwd = new QWD(
203 wq[1], wq[0], 214 wq[1], wq[0],
204 description, 215 description,
205 date, true, 216 date, true,
206 dw, column.getIndex()); 217 dw, index);
207 218
208 qwds.add(qwd); 219 qwds.add(qwd);
209 220
210 sumW += wq[0]; 221 sumW += wq[0];
211 sumQ += wq[1]; 222 sumQ += wq[1];

http://dive4elements.wald.intevation.org