view artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/BedParametersResult.java @ 5863:4897a58c8746

River artifacts: Added new copyright headers.
author Sascha L. Teichmann <teichmann@intevation.de>
date Sun, 28 Apr 2013 14:40:59 +0200
parents 5aa05a7a34b7
children af13ceeba52a
line wrap: on
line source
/* 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 java.io.Serializable;


public class BedParametersResult
implements Serializable
{
    protected TDoubleArrayList porosityCap;
    protected TDoubleArrayList porositySub;
    protected TDoubleArrayList loadDensityCap;
    protected TDoubleArrayList loadDensitySub;
    protected TDoubleArrayList kms;

    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;
    }

    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()
        };
    }
}

http://dive4elements.wald.intevation.org