teichmann@5831: package org.dive4elements.river.artifacts.model.minfo; ingo@3784: ingo@3784: import gnu.trove.TDoubleArrayList; ingo@3784: ingo@3784: import java.io.Serializable; ingo@3784: ingo@3784: ingo@3784: public class BedParametersResult ingo@3784: implements Serializable ingo@3784: { ingo@3784: protected TDoubleArrayList porosityCap; ingo@3784: protected TDoubleArrayList porositySub; ingo@3784: protected TDoubleArrayList loadDensityCap; ingo@3784: protected TDoubleArrayList loadDensitySub; ingo@3784: protected TDoubleArrayList kms; ingo@3784: ingo@3784: public BedParametersResult() { ingo@3784: ingo@3784: } ingo@3784: ingo@3784: public BedParametersResult( ingo@3784: TDoubleArrayList kms, ingo@3784: TDoubleArrayList porosityCap, ingo@3784: TDoubleArrayList porositySub, ingo@3784: TDoubleArrayList densityCap, ingo@3784: TDoubleArrayList densitySub ingo@3784: ) { ingo@3784: this.kms = kms; ingo@3784: this.porosityCap = porosityCap; ingo@3784: this.porositySub = porositySub; ingo@3784: this.loadDensityCap = densityCap; ingo@3784: this.loadDensitySub = densitySub; ingo@3784: } ingo@3784: ingo@3784: public double getPorosityCap(int ndx) { ingo@3784: return porosityCap.get(ndx); ingo@3784: } ingo@3784: ingo@3784: public double getPorositySub(int ndx) { ingo@3784: return porositySub.get(ndx); ingo@3784: } ingo@3784: ingo@3784: public double getLoadDensityCap(int ndx) { ingo@3784: return loadDensityCap.get(ndx); ingo@3784: } ingo@3784: ingo@3784: public double getLoadDensitySub(int ndx) { ingo@3784: return loadDensitySub.get(ndx); ingo@3784: } ingo@3784: ingo@3785: public double getPorosityCap(double km) { ingo@3785: if (kms.indexOf(km) >= 0) { ingo@3785: return porosityCap.get(kms.indexOf(km)); ingo@3785: } ingo@3785: return Double.NaN; ingo@3785: } ingo@3785: ingo@3785: public double getPorositySub(double km) { ingo@3785: if (kms.indexOf(km) >= 0) { ingo@3785: return porositySub.get(kms.indexOf(km)); ingo@3785: } ingo@3785: return Double.NaN; ingo@3785: } ingo@3785: ingo@3785: public double getLoadDensityCap(double km) { ingo@3785: if (kms.indexOf(km) >= 0) { ingo@3785: return loadDensityCap.get(kms.indexOf(km)); ingo@3785: } ingo@3785: return Double.NaN; ingo@3785: } ingo@3785: ingo@3785: public double getLoadDensitySub(double km) { ingo@3785: if (kms.indexOf(km) >= 0) { ingo@3785: return loadDensitySub.get(kms.indexOf(km)); ingo@3785: } ingo@3785: return Double.NaN; ingo@3785: } ingo@3785: ingo@3784: public double[][] getPorosityCapData() { ingo@3784: return new double[][] { ingo@3784: kms.toNativeArray(), ingo@3784: porosityCap.toNativeArray() ingo@3784: }; ingo@3784: } ingo@3784: ingo@3784: public double[][] getPorositySubData() { ingo@3784: return new double[][] { ingo@3784: kms.toNativeArray(), ingo@3784: porositySub.toNativeArray() ingo@3784: }; ingo@3784: } ingo@3784: ingo@3784: public double[][] getDensityCapData() { ingo@3784: return new double[][] { ingo@3784: kms.toNativeArray(), ingo@3784: loadDensityCap.toNativeArray() ingo@3784: }; ingo@3784: } ingo@3784: ingo@3784: public double[][] getDensitySubData() { ingo@3784: return new double[][] { ingo@3784: kms.toNativeArray(), ingo@3784: loadDensitySub.toNativeArray() ingo@3784: }; ingo@3784: } ingo@3784: }