V1_0.java [src/java/m/hydraulics/sediment] Revision: Date:
package m.hydraulics.sediment;
import csip.annotations.Description;
import csip.annotations.Name;
import csip.annotations.VersionInfo;
import csip.api.server.PayloadParameter;
import csip.api.server.PayloadResults;
import csip.ModelDataService;
import hydraulics.SedimentTransport;
import javax.ws.rs.Path;
@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 void preProcess() throws Exception {
PayloadParameter inputPayload = parameter();
model.setTransportType(inputPayload.getString("transportType"));
model.setWaterDensity(inputPayload.getDouble("rho"));
model.setWaterTemperature(inputPayload.getDouble("waterTemp"));
model.setWaterKinematicViscosity(inputPayload.getDouble("waterKinViscosity"));
model.setSedDensity(inputPayload.getDouble("rho_S"));
model.setGravelDensity(inputPayload.getDouble("rho_G"));
model.setSedDiameter(inputPayload.getDouble("diamSed"));
model.setGravelDiameter(inputPayload.getDouble("diamGravel"));
model.setSandFraction(inputPayload.getDouble("sandFraction"));
model.setSedD16(inputPayload.getDouble("d16"));
model.setSedD50(inputPayload.getDouble("d50"));
model.setSedD84(inputPayload.getDouble("d84"));
model.setR1(inputPayload.getDouble("R1"));
model.setR2(inputPayload.getDouble("R2"));
model.setRatingCurveUnits(inputPayload.getString("ratingCurveUnits"));
model.setChannelDepth(inputPayload.getDouble("depth"));
model.setChannelBottomWidth(inputPayload.getDouble("width"));
model.setChannelArea(inputPayload.getDouble("area"));
model.setChannelHydraulicRadius(inputPayload.getDouble("hydRadius"));
model.setChannelDischarge(inputPayload.getDouble("discharge"));
model.setChannelBedSlope(inputPayload.getDouble("bedSlope"));
model.setChannelEnergySlope(inputPayload.getDouble("energySlope"));
model.setChannelFrictionSlope(inputPayload.getDouble("frictionSlope"));
}
@Override
protected void doProcess() throws Exception {
model.run();
}
@Override
protected void postProcess() throws Exception {
PayloadResults resultPayload = results();
// files
// values
resultPayload.put("sedimentTransport", model.getSedTransport(), null, model.getUnits());
resultPayload.put("units", model.getUnits());
}
}