# HG changeset patch # User Andre Heinecke # Date 1426700906 -3600 # Node ID 62e0a818331d2507a106f10d48377ecac21df9d0 # Parent 717b58b158c979783d0985fce04bf54643796a37 Remove additionally uneccessary file. File was obsoleted by 8587:07c9ac22f611 diff -r 717b58b158c9 -r 62e0a818331d artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/BedParametersResult.java --- a/artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/BedParametersResult.java Wed Mar 18 18:47:07 2015 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,214 +0,0 @@ -/* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde - * Software engineering by Intevation GmbH - * - * This file is Free Software under the GNU AGPL (>=v3) - * and comes with ABSOLUTELY NO WARRANTY! Check out the - * documentation coming with Dive4Elements River for details. - */ - -package org.dive4elements.river.artifacts.model.minfo; - -import gnu.trove.TDoubleArrayList; -import org.apache.commons.math.analysis.polynomials.PolynomialSplineFunction; -import org.dive4elements.river.utils.DoubleUtil; -import org.apache.commons.math.ArgumentOutsideDomainException; - -import java.io.Serializable; - - -public class BedParametersResult -implements Serializable -{ - protected TDoubleArrayList porosityCap; - protected TDoubleArrayList porositySub; - protected TDoubleArrayList loadDensityCap; - protected TDoubleArrayList loadDensitySub; - protected TDoubleArrayList kms; - - protected PolynomialSplineFunction interpolPoroSub; - protected PolynomialSplineFunction interpolPoroCap; - protected PolynomialSplineFunction interpolDensSub; - protected PolynomialSplineFunction interpolDensCap; - - protected boolean nonInterpolPoroSub; - protected boolean nonInterpolPoroCap; - protected boolean nonInterpolDensSub; - protected boolean nonInterpolDensCap; - - public BedParametersResult() { - - } - - public BedParametersResult( - TDoubleArrayList kms, - TDoubleArrayList porosityCap, - TDoubleArrayList porositySub, - TDoubleArrayList densityCap, - TDoubleArrayList densitySub - ) { - this.kms = kms; - this.porosityCap = porosityCap; - this.porositySub = porositySub; - this.loadDensityCap = densityCap; - this.loadDensitySub = densitySub; - - PolynomialSplineFunction interpolPoroSub = null; - PolynomialSplineFunction interpolPoroCap = null; - PolynomialSplineFunction interpolDensSub = null; - PolynomialSplineFunction interpolDensCap = null; - - nonInterpolPoroSub = false; - nonInterpolPoroCap = false; - nonInterpolDensSub = false; - nonInterpolDensCap = false; - } - - public double getPorosityCap(int ndx) { - return porosityCap.get(ndx); - } - - public double getPorositySub(int ndx) { - return porositySub.get(ndx); - } - - public double getLoadDensityCap(int ndx) { - return loadDensityCap.get(ndx); - } - - public double getLoadDensitySub(int ndx) { - return loadDensitySub.get(ndx); - } - - public double getPorosityCap(double km) { - if (kms.indexOf(km) >= 0) { - return porosityCap.get(kms.indexOf(km)); - } - return Double.NaN; - } - - public double getPorositySub(double km) { - if (kms.indexOf(km) >= 0) { - return porositySub.get(kms.indexOf(km)); - } - return Double.NaN; - } - - public double getLoadDensityCap(double km) { - if (kms.indexOf(km) >= 0) { - return loadDensityCap.get(kms.indexOf(km)); - } - return Double.NaN; - } - - public double getLoadDensitySub(double km) { - if (kms.indexOf(km) >= 0) { - return loadDensitySub.get(kms.indexOf(km)); - } - return Double.NaN; - } - - public double[][] getPorosityCapData() { - return new double[][] { - kms.toNativeArray(), - porosityCap.toNativeArray() - }; - } - - public double[][] getPorositySubData() { - return new double[][] { - kms.toNativeArray(), - porositySub.toNativeArray() - }; - } - - public double[][] getDensityCapData() { - return new double[][] { - kms.toNativeArray(), - loadDensityCap.toNativeArray() - }; - } - - public double[][] getDensitySubData() { - return new double[][] { - kms.toNativeArray(), - loadDensitySub.toNativeArray() - }; - } - - public double getPorositySubInterpol(double km) { - if (nonInterpolPoroSub) { - return Double.NaN; - } - if (interpolPoroSub == null) { - interpolPoroSub = DoubleUtil.getLinearInterpolator(kms, porositySub); - if (interpolPoroSub == null) { - nonInterpolPoroSub = true; - return Double.NaN; - } - } - try { - return interpolPoroSub.value(km); - } catch (ArgumentOutsideDomainException e) { - /* This is expected for many results. */ - return Double.NaN; - } - } - - public double getPorosityCapInterpol(double km) { - if (nonInterpolPoroCap) { - return Double.NaN; - } - if (interpolPoroCap == null) { - interpolPoroCap = DoubleUtil.getLinearInterpolator(kms, porosityCap); - if (interpolPoroCap == null) { - nonInterpolPoroCap = true; - return Double.NaN; - } - } - try { - return interpolPoroCap.value(km); - } catch (ArgumentOutsideDomainException e) { - /* This is expected for many results. */ - return Double.NaN; - } - } - - public double getDensitySubInterpol(double km) { - if (nonInterpolDensSub) { - return Double.NaN; - } - if (interpolDensSub == null) { - interpolDensSub = DoubleUtil.getLinearInterpolator(kms, loadDensitySub); - if (interpolDensSub == null) { - nonInterpolDensSub = true; - return Double.NaN; - } - } - try { - return interpolDensSub.value(km); - } catch (ArgumentOutsideDomainException e) { - /* This is expected for many results. */ - return Double.NaN; - } - } - - public double getDensityCapInterpol(double km) { - if (nonInterpolDensCap) { - return Double.NaN; - } - if (interpolDensCap == null) { - interpolDensCap = DoubleUtil.getLinearInterpolator(kms, loadDensityCap); - if (interpolDensCap == null) { - nonInterpolDensCap = true; - return Double.NaN; - } - } - try { - return interpolDensCap.value(km); - } catch (ArgumentOutsideDomainException e) { - /* This is expected for many results. */ - return Double.NaN; - } - } - -}