Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/Calculation3.java @ 4655:cd44d28d0fbc
Move the access to artifact data to the Access object
Use BedHeightAccess class to receive the data from the artifact. This abstracts
the data access from the actual artifact.
author | Björn Ricks <bjoern.ricks@intevation.de> |
---|---|
date | Tue, 11 Dec 2012 09:44:04 +0100 |
parents | 2898b1ff6013 |
children |
line wrap: on
line source
package de.intevation.flys.artifacts.model; import org.apache.log4j.Logger; public class Calculation3 extends Calculation { private static Logger logger = Logger.getLogger(Calculation3.class); protected double km; protected int [] days; protected double [] qs; public Calculation3() { } public Calculation3(double km, int [] days, double [] qs) { this.km = km; this.days = days; this.qs = qs; } public CalculationResult calculate(WstValueTable wst) { double [] ws = wst.interpolateW(km, qs, new double[qs.length], this); if (days == null || days.length == 0) { addProblem(km, "cannot.find.ds"); } if (logger.isDebugEnabled()) { logger.debug("Calculate duration curve data:"); logger.debug(" km : " + km); logger.debug(" num Days : " + (days != null ? days.length : 0)); logger.debug(" num Qs : " + (qs != null ? qs.length : 0)); logger.debug(" result Ws: " + (ws != null ? ws.length : 0)); } WQDay wqday = new WQDay(days, ws, qs); if (hasProblems()) { logger.debug("calculation caused "+numProblems()+" problem(s)."); wqday.removeNaNs(); } return new CalculationResult(wqday, this); } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :