SS.Hydrology 1.2.0
Dated storm ingestion, connected catchment routing, held-out runoff calibration, deterministic uncertainty ensembles, infiltration, water balance and frequency fundamentals
Language compatibility: >=1.0.0 <2.0.0
Runtime compatibility: >=1.0.0 <2.0.0
No package dependencies declared.
Public API
Hydrology.calibrateCurveNumber
export function calibrateCurveNumber(double areaSquareMetres, double stepSeconds, double[] unitHydrograph, double baseflowCubicMetresPerSecond, double[] rainfallMm, double[] observedDischarge, double[] candidateCurveNumbers)->CatchmentCalibrationParameters: areaSquareMetres: double, stepSeconds: double, unitHydrograph: double[], baseflowCubicMetresPerSecond: double, rainfallMm: double[], observedDischarge: double[], candidateCurveNumbers: double[]
Hydrology.calibrateRunoffModel
export function calibrateRunoffModel(double areaSquareMetres, double stepSeconds, double[] unitHydrograph, double baseflowCubicMetresPerSecond, double[] trainingRainfall, double[] trainingObserved, double[] validationRainfall, double[] validationObserved, double[] candidateCurveNumbers)->RunoffCalibrationResultParameters: areaSquareMetres: double, stepSeconds: double, unitHydrograph: double[], baseflowCubicMetresPerSecond: double, trainingRainfall: double[], trainingObserved: double[], validationRainfall: double[], validationObserved: double[], candidateCurveNumbers: double[]
export record CatchmentCalibration(public CatchmentModel model, public double nashSutcliffeEfficiency, public double rootMeanSquaredError, public double volumeBias, public int candidates, public bool converged)Parameters: model: CatchmentModel, nashSutcliffeEfficiency: double, rootMeanSquaredError: double, volumeBias: double, candidates: int, converged: bool
Hydrology.catchmentModel
export function catchmentModel(double areaSquareMetres, double curveNumber, double stepSeconds, double[] unitHydrograph, double baseflowCubicMetresPerSecond)->CatchmentModelParameters: areaSquareMetres: double, curveNumber: double, stepSeconds: double, unitHydrograph: double[], baseflowCubicMetresPerSecond: double
Hydrology.CatchmentModel
export record CatchmentModel(public double areaSquareMetres, public double curveNumber, public double stepSeconds, public double[] unitHydrograph, public double baseflowCubicMetresPerSecond, public string rainfallUnit, public string dischargeUnit)Parameters: areaSquareMetres: double, curveNumber: double, stepSeconds: double, unitHydrograph: double[], baseflowCubicMetresPerSecond: double, rainfallUnit: string, dischargeUnit: string
export record CatchmentSimulation(public double[] rainfallMm, public double[] excessRainfallMm, public double[] discharge, public double precipitationVolume, public double runoffVolume, public double infiltrationVolume, public double outletVolume, public double balanceResidual, public string timeConvention)Parameters: rainfallMm: double[], excessRainfallMm: double[], discharge: double[], precipitationVolume: double, runoffVolume: double, infiltrationVolume: double, outletVolume: double, balanceResidual: double, timeConvention: string
export function connectedCatchmentGraph(CatchmentSimulation[] localSimulations, int[] downstream, double[] storageConstants, double stepSeconds)->ConnectedCatchmentGraphResultParameters: localSimulations: CatchmentSimulation[], downstream: int[], storageConstants: double[], stepSeconds: double
export record ConnectedCatchmentGraphResult(public double[] nodeOutflow, public double[] outletDischarge, public int nodes, public int steps, public double localInflowVolume, public double outletVolume, public double finalStorage, public double massBalanceResidual, public string diagnostic)Parameters: nodeOutflow: double[], outletDischarge: double[], nodes: int, steps: int, localInflowVolume: double, outletVolume: double, finalStorage: double, massBalanceResidual: double, diagnostic: string
Hydrology.convolveUnitHydrograph
export function convolveUnitHydrograph(double[] excessRainfall, double[] unitHydrograph)->double[]Parameters: excessRainfall: double[], unitHydrograph: double[]
Hydrology.curveNumberRunoff
export function curveNumberRunoff(double precipitationMm, double curveNumber, double areaSquareMetres)->RunoffResultParameters: precipitationMm: double, curveNumber: double, areaSquareMetres: double
Hydrology.datedStormSeries
export function datedStormSeries(double[] timestamps, double[] rainfall, string rainfallUnit, double expectedStepSeconds, string missingPolicy)->DatedStormSeriesResultParameters: timestamps: double[], rainfall: double[], rainfallUnit: string, expectedStepSeconds: double, missingPolicy: string
export record DatedStormSeriesResult(public double[] timestamps, public double[] rainfallMm, public bool[] imputed, public double stepSeconds, public string sourceUnit, public string missingPolicy, public int imputedCount, public string diagnostic)Parameters: timestamps: double[], rainfallMm: double[], imputed: bool[], stepSeconds: double, sourceUnit: string, missingPolicy: string, imputedCount: int, diagnostic: string
export record FrequencyEstimate(public double returnPeriod, public double nonexceedanceProbability, public double quantile, public string distribution)Parameters: returnPeriod: double, nonexceedanceProbability: double, quantile: double, distribution: string
Hydrology.greenAmptCapacity
export function greenAmptCapacity(double saturatedConductivity, double suctionHead, double moistureDeficit, double cumulativeInfiltration)->doubleParameters: saturatedConductivity: double, suctionHead: double, moistureDeficit: double, cumulativeInfiltration: double
Hydrology.gumbelQuantile
export function gumbelQuantile(double mean, double standardDeviation, double returnPeriod)->FrequencyEstimateParameters: mean: double, standardDeviation: double, returnPeriod: double
Hydrology.hortonInfiltration
export function hortonInfiltration(double initialCapacity, double finalCapacity, double decayRate, double time)->doubleParameters: initialCapacity: double, finalCapacity: double, decayRate: double, time: double
Hydrology.muskingum
export function muskingum(double[] inflow, double initialOutflow, double storageConstant, double weighting, double step)->RoutingResultParameters: inflow: double[], initialOutflow: double, storageConstant: double, weighting: double, step: double
Hydrology.rationalPeakFlow
export function rationalPeakFlow(double runoffCoefficient, double rainfallIntensityMmPerHour, double areaSquareMetres)->doubleParameters: runoffCoefficient: double, rainfallIntensityMmPerHour: double, areaSquareMetres: double
export record ReservoirRouting(public double[] outflow, public double[] storage, public double initialStorage, public double finalStorage, public double balanceResidual, public bool nonnegative)Parameters: outflow: double[], storage: double[], initialStorage: double, finalStorage: double, balanceResidual: double, nonnegative: bool
Hydrology.routeLinearReservoir
export function routeLinearReservoir(double[] inflow, double initialStorage, double storageConstant, double stepSeconds)->ReservoirRoutingParameters: inflow: double[], initialStorage: double, storageConstant: double, stepSeconds: double
Hydrology.RoutingResult
export record RoutingResult(public double[] outflow, public double initialStorage, public double finalStorage, public double balanceResidual, public bool stable)Parameters: outflow: double[], initialStorage: double, finalStorage: double, balanceResidual: double, stable: bool
export record RunoffCalibrationResult(public CatchmentCalibration training, public double validationNashSutcliffeEfficiency, public double validationRootMeanSquaredError, public double validationVolumeBias, public double bestTrainingError, public double runnerUpTrainingError, public bool identifiable, public string diagnostic)Parameters: training: CatchmentCalibration, validationNashSutcliffeEfficiency: double, validationRootMeanSquaredError: double, validationVolumeBias: double, bestTrainingError: double, runnerUpTrainingError: double, identifiable: bool, diagnostic: string
Hydrology.RunoffResult
export record RunoffResult(public double runoffDepth, public double infiltrationDepth, public double runoffVolume)Parameters: runoffDepth: double, infiltrationDepth: double, runoffVolume: double
export function runoffUncertaintyEnsemble(CatchmentModel templateModel, double[] rainfallMm, double[] curveNumbers)->RunoffUncertaintyEnsembleResultParameters: templateModel: CatchmentModel, rainfallMm: double[], curveNumbers: double[]
export record RunoffUncertaintyEnsembleResult(public double[] memberDischarge, public double[] meanDischarge, public double[] minimumDischarge, public double[] maximumDischarge, public double[] runoffVolumes, public double[] curveNumbers, public int members, public int steps, public string diagnostic)Parameters: memberDischarge: double[], meanDischarge: double[], minimumDischarge: double[], maximumDischarge: double[], runoffVolumes: double[], curveNumbers: double[], members: int, steps: int, diagnostic: string
Hydrology.simulateCatchment
export function simulateCatchment(CatchmentModel model, double[] rainfallMm)->CatchmentSimulationParameters: model: CatchmentModel, rainfallMm: double[]
Hydrology.waterBalance
export function waterBalance(double initialStorage, double precipitation, double inflow, double evaporation, double infiltration, double outflow)->WaterBalanceParameters: initialStorage: double, precipitation: double, inflow: double, evaporation: double, infiltration: double, outflow: double
Hydrology.WaterBalance
export record WaterBalance(public double initialStorage, public double inflow, public double outflow, public double finalStorage, public double residual, public bool conserved)Parameters: initialStorage: double, inflow: double, outflow: double, finalStorage: double, residual: double, conserved: bool
Documentation version
Language 1.0.0, compiler 1.0.0, runtime 1.0.0. This reference is generated from the official SS documentation so package and language details stay consistent with the release.