V1_0.java [src/java/m/hydraulics/sediment] Revision: d7f5753d17a248a580cdadcf956847d30e6267e6  Date: Wed Feb 17 15:30:54 MST 2016
package m.hydraulics.sediment;

import csip.ModelDataService;
import hydraulics.SedimentTransport;
import javax.ws.rs.Path;
import oms3.annotations.Description;
import oms3.annotations.Name;
import oms3.annotations.VersionInfo;

@Name("sediment")
@Description("sediment")
@VersionInfo("1.0")
@Path("m/hydraulics/sediment/1.0")
public class V1_0 extends ModelDataService {

    SedimentTransport model = new SedimentTransport();

    @Override
    protected String process() throws Exception {
        model.setTransportType(getStringParam("transportType"));
        model.setWaterDensity(getDoubleParam("rho"));
        model.setWaterTemperature(getDoubleParam("waterTemp"));
        model.setWaterKinematicViscosity(getDoubleParam("waterKinViscosity"));
        model.setSedDensity(getDoubleParam("rho_S"));
        model.setGravelDensity(getDoubleParam("rho_G"));
        model.setSedDiameter(getDoubleParam("diamSed"));
        model.setGravelDiameter(getDoubleParam("diamGravel"));
        model.setSandFraction(getDoubleParam("sandFraction"));
        model.setSedD16(getDoubleParam("d16"));
        model.setSedD50(getDoubleParam("d50"));
        model.setSedD84(getDoubleParam("d84"));
        model.setR1(getDoubleParam("R1"));
        model.setR2(getDoubleParam("R2"));
        model.setRatingCurveUnits(getStringParam("ratingCurveUnits"));
        model.setChannelDepth(getDoubleParam("depth"));
        model.setChannelBottomWidth(getDoubleParam("width"));
        model.setChannelArea(getDoubleParam("area"));
        model.setChannelHydraulicRadius(getDoubleParam("hydRadius"));
        model.setChannelDischarge(getDoubleParam("discharge"));
        model.setChannelBedSlope(getDoubleParam("bedSlope"));
        model.setChannelEnergySlope(getDoubleParam("energySlope"));
        model.setChannelFrictionSlope(getDoubleParam("frictionSlope"));

        model.run();
        return EXEC_OK;
    }

    @Override
    protected void postProcess() throws Exception {
        // files

        // values
        putResult("sedimentTransport", model.getSedTransport(), null, model.getUnits());
        putResult("units", model.getUnits());
    }
}