@swmmrs/swmmrs 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +264 -0
- package/dist/README.md +264 -0
- package/dist/serial/README.md +264 -0
- package/dist/serial/swmmrs.d.ts +395 -0
- package/dist/serial/swmmrs.js +3169 -0
- package/dist/serial/swmmrs_bg.wasm +0 -0
- package/dist/snippets/swmmrs-parallel-5d1c71108133e81d/worker-pool/browser.js +98 -0
- package/dist/swmmrs.d.ts +422 -0
- package/dist/swmmrs.js +3330 -0
- package/dist/swmmrs_bg.wasm +0 -0
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/lib/swmmrs/client.d.ts +11 -0
- package/lib/swmmrs/client.d.ts.map +1 -0
- package/lib/swmmrs/client.js +82 -0
- package/lib/swmmrs/client.js.map +1 -0
- package/lib/swmmrs/enums.d.ts +41 -0
- package/lib/swmmrs/enums.d.ts.map +1 -0
- package/lib/swmmrs/enums.js +2 -0
- package/lib/swmmrs/enums.js.map +1 -0
- package/lib/swmmrs/exceptions.d.ts +98 -0
- package/lib/swmmrs/exceptions.d.ts.map +1 -0
- package/lib/swmmrs/exceptions.js +86 -0
- package/lib/swmmrs/exceptions.js.map +1 -0
- package/lib/swmmrs/index.d.ts +27 -0
- package/lib/swmmrs/index.d.ts.map +1 -0
- package/lib/swmmrs/index.js +13 -0
- package/lib/swmmrs/index.js.map +1 -0
- package/lib/swmmrs/objects/amm.d.ts +114 -0
- package/lib/swmmrs/objects/amm.d.ts.map +1 -0
- package/lib/swmmrs/objects/amm.js +19 -0
- package/lib/swmmrs/objects/amm.js.map +1 -0
- package/lib/swmmrs/objects/collections.d.ts +109 -0
- package/lib/swmmrs/objects/collections.d.ts.map +1 -0
- package/lib/swmmrs/objects/collections.js +158 -0
- package/lib/swmmrs/objects/collections.js.map +1 -0
- package/lib/swmmrs/objects/definitions.d.ts +215 -0
- package/lib/swmmrs/objects/definitions.d.ts.map +1 -0
- package/lib/swmmrs/objects/definitions.js +69 -0
- package/lib/swmmrs/objects/definitions.js.map +1 -0
- package/lib/swmmrs/objects/lids.d.ts +446 -0
- package/lib/swmmrs/objects/lids.d.ts.map +1 -0
- package/lib/swmmrs/objects/lids.js +90 -0
- package/lib/swmmrs/objects/lids.js.map +1 -0
- package/lib/swmmrs/objects/links.d.ts +615 -0
- package/lib/swmmrs/objects/links.d.ts.map +1 -0
- package/lib/swmmrs/objects/links.js +90 -0
- package/lib/swmmrs/objects/links.js.map +1 -0
- package/lib/swmmrs/objects/nodes.d.ts +494 -0
- package/lib/swmmrs/objects/nodes.d.ts.map +1 -0
- package/lib/swmmrs/objects/nodes.js +147 -0
- package/lib/swmmrs/objects/nodes.js.map +1 -0
- package/lib/swmmrs/objects/options.d.ts +112 -0
- package/lib/swmmrs/objects/options.d.ts.map +1 -0
- package/lib/swmmrs/objects/options.js +27 -0
- package/lib/swmmrs/objects/options.js.map +1 -0
- package/lib/swmmrs/objects/rtk.d.ts +82 -0
- package/lib/swmmrs/objects/rtk.d.ts.map +1 -0
- package/lib/swmmrs/objects/rtk.js +19 -0
- package/lib/swmmrs/objects/rtk.js.map +1 -0
- package/lib/swmmrs/objects/subcatchments.d.ts +575 -0
- package/lib/swmmrs/objects/subcatchments.d.ts.map +1 -0
- package/lib/swmmrs/objects/subcatchments.js +243 -0
- package/lib/swmmrs/objects/subcatchments.js.map +1 -0
- package/lib/swmmrs/output.d.ts +412 -0
- package/lib/swmmrs/output.d.ts.map +1 -0
- package/lib/swmmrs/output.js +507 -0
- package/lib/swmmrs/output.js.map +1 -0
- package/lib/swmmrs/protocol.d.ts +80 -0
- package/lib/swmmrs/protocol.d.ts.map +1 -0
- package/lib/swmmrs/protocol.js +2 -0
- package/lib/swmmrs/protocol.js.map +1 -0
- package/lib/swmmrs/runtime.d.ts +22 -0
- package/lib/swmmrs/runtime.d.ts.map +1 -0
- package/lib/swmmrs/runtime.js +146 -0
- package/lib/swmmrs/runtime.js.map +1 -0
- package/lib/swmmrs/scenarios.d.ts +41 -0
- package/lib/swmmrs/scenarios.d.ts.map +1 -0
- package/lib/swmmrs/scenarios.js +2 -0
- package/lib/swmmrs/scenarios.js.map +1 -0
- package/lib/swmmrs/simulation.d.ts +249 -0
- package/lib/swmmrs/simulation.d.ts.map +1 -0
- package/lib/swmmrs/simulation.js +415 -0
- package/lib/swmmrs/simulation.js.map +1 -0
- package/lib/swmmrs/snapshots.d.ts +192 -0
- package/lib/swmmrs/snapshots.d.ts.map +1 -0
- package/lib/swmmrs/snapshots.js +2 -0
- package/lib/swmmrs/snapshots.js.map +1 -0
- package/lib/swmmrs/types.d.ts +123 -0
- package/lib/swmmrs/types.d.ts.map +1 -0
- package/lib/swmmrs/types.js +2 -0
- package/lib/swmmrs/types.js.map +1 -0
- package/lib/swmmrs/worker.d.ts +2 -0
- package/lib/swmmrs/worker.d.ts.map +1 -0
- package/lib/swmmrs/worker.js +488 -0
- package/lib/swmmrs/worker.js.map +1 -0
- package/package.json +33 -0
- package/src/swmmrs/client.ts +76 -0
- package/src/swmmrs/enums.ts +73 -0
- package/src/swmmrs/exceptions.ts +120 -0
- package/src/swmmrs/index.ts +79 -0
- package/src/swmmrs/objects/amm.ts +113 -0
- package/src/swmmrs/objects/collections.ts +153 -0
- package/src/swmmrs/objects/definitions.ts +246 -0
- package/src/swmmrs/objects/lids.ts +487 -0
- package/src/swmmrs/objects/links.ts +626 -0
- package/src/swmmrs/objects/nodes.ts +504 -0
- package/src/swmmrs/objects/options.ts +114 -0
- package/src/swmmrs/objects/rtk.ts +79 -0
- package/src/swmmrs/objects/subcatchments.ts +650 -0
- package/src/swmmrs/output.ts +798 -0
- package/src/swmmrs/protocol.ts +62 -0
- package/src/swmmrs/runtime.ts +188 -0
- package/src/swmmrs/scenarios.ts +40 -0
- package/src/swmmrs/simulation.ts +406 -0
- package/src/swmmrs/snapshots.ts +199 -0
- package/src/swmmrs/types.ts +123 -0
- package/src/swmmrs/worker.ts +233 -0
- package/worker-node.js +142 -0
- package/worker.js +1 -0
|
@@ -0,0 +1,575 @@
|
|
|
1
|
+
import type { InfilKind, OutKind } from "../enums.js";
|
|
2
|
+
import type { RainGageResults, SubcatchmentResults } from "../snapshots.js";
|
|
3
|
+
import { LidUnitCollection, type SubcatchmentLidSnapshot } from "./lids.js";
|
|
4
|
+
export type { InfilKind, OutKind } from "../enums.js";
|
|
5
|
+
/** Configured runoff destination. */
|
|
6
|
+
export interface SubcatchmentOutlet {
|
|
7
|
+
/** Receiving node or subcatchment family. */
|
|
8
|
+
readonly kind: OutKind;
|
|
9
|
+
/** Canonical configured receiving ID. */
|
|
10
|
+
readonly id: string;
|
|
11
|
+
}
|
|
12
|
+
/** Horton infiltration declarations. */
|
|
13
|
+
export interface HortonInfiltrationSettings {
|
|
14
|
+
/** Infiltration-model discriminator. */
|
|
15
|
+
readonly kind: "horton";
|
|
16
|
+
/** Initial infiltration rate in in/h or mm/h. */
|
|
17
|
+
readonly initialRate: number;
|
|
18
|
+
/** Minimum infiltration rate in in/h or mm/h. */
|
|
19
|
+
readonly minimumRate: number;
|
|
20
|
+
/** Decay coefficient in inverse hours. */
|
|
21
|
+
readonly decayCoefficient: number;
|
|
22
|
+
/** Time to dry soil fully, in days. */
|
|
23
|
+
readonly dryingTimeDays: number;
|
|
24
|
+
/** Maximum cumulative infiltration in in or mm; null means no limit. */
|
|
25
|
+
readonly maximumInfiltration: number | null;
|
|
26
|
+
}
|
|
27
|
+
/** Modified Horton infiltration declarations. */
|
|
28
|
+
export interface ModifiedHortonInfiltrationSettings {
|
|
29
|
+
/** Infiltration-model discriminator. */
|
|
30
|
+
readonly kind: "modified_horton";
|
|
31
|
+
/** {@inheritDoc HortonInfiltrationSettings.initialRate} */
|
|
32
|
+
readonly initialRate: number;
|
|
33
|
+
/** {@inheritDoc HortonInfiltrationSettings.minimumRate} */
|
|
34
|
+
readonly minimumRate: number;
|
|
35
|
+
/** {@inheritDoc HortonInfiltrationSettings.decayCoefficient} */
|
|
36
|
+
readonly decayCoefficient: number;
|
|
37
|
+
/** {@inheritDoc HortonInfiltrationSettings.dryingTimeDays} */
|
|
38
|
+
readonly dryingTimeDays: number;
|
|
39
|
+
/** {@inheritDoc HortonInfiltrationSettings.maximumInfiltration} */
|
|
40
|
+
readonly maximumInfiltration: number | null;
|
|
41
|
+
}
|
|
42
|
+
/** Green-Ampt infiltration declarations. */
|
|
43
|
+
export interface GreenAmptInfiltrationSettings {
|
|
44
|
+
/** Infiltration-model discriminator. */
|
|
45
|
+
readonly kind: "green_ampt";
|
|
46
|
+
/** Wetting-front suction head in in or mm. */
|
|
47
|
+
readonly suctionHead: number;
|
|
48
|
+
/** Saturated hydraulic conductivity in in/h or mm/h. */
|
|
49
|
+
readonly hydraulicConductivity: number;
|
|
50
|
+
/** Initial moisture deficit fraction. */
|
|
51
|
+
readonly initialMoistureDeficit: number;
|
|
52
|
+
}
|
|
53
|
+
/** Modified Green-Ampt infiltration declarations. */
|
|
54
|
+
export interface ModifiedGreenAmptInfiltrationSettings {
|
|
55
|
+
/** Infiltration-model discriminator. */
|
|
56
|
+
readonly kind: "modified_green_ampt";
|
|
57
|
+
/** {@inheritDoc GreenAmptInfiltrationSettings.suctionHead} */
|
|
58
|
+
readonly suctionHead: number;
|
|
59
|
+
/** {@inheritDoc GreenAmptInfiltrationSettings.hydraulicConductivity} */
|
|
60
|
+
readonly hydraulicConductivity: number;
|
|
61
|
+
/** {@inheritDoc GreenAmptInfiltrationSettings.initialMoistureDeficit} */
|
|
62
|
+
readonly initialMoistureDeficit: number;
|
|
63
|
+
}
|
|
64
|
+
/** Curve-number infiltration declarations. */
|
|
65
|
+
export interface CurveNumberInfiltrationSettings {
|
|
66
|
+
/** Infiltration-model discriminator. */
|
|
67
|
+
readonly kind: "curve_number";
|
|
68
|
+
/** Dimensionless runoff curve number. */
|
|
69
|
+
readonly curveNumber: number;
|
|
70
|
+
/** Time to dry soil fully, in days. */
|
|
71
|
+
readonly dryingTimeDays: number;
|
|
72
|
+
}
|
|
73
|
+
/** Detached infiltration declarations, narrowed by `kind`. */
|
|
74
|
+
export type SubcatchmentInfiltrationConfiguration = HortonInfiltrationSettings | ModifiedHortonInfiltrationSettings | GreenAmptInfiltrationSettings | ModifiedGreenAmptInfiltrationSettings | CurveNumberInfiltrationSettings;
|
|
75
|
+
/** Sparse infiltration update. Supply fields appropriate to the selected model; incompatible fields are rejected. */
|
|
76
|
+
export interface SubcatchmentInfiltrationPatch {
|
|
77
|
+
/** Model selector; omission retains the configured model. */
|
|
78
|
+
readonly kind?: InfilKind;
|
|
79
|
+
/** {@inheritDoc HortonInfiltrationSettings.initialRate} */
|
|
80
|
+
readonly initialRate?: number;
|
|
81
|
+
/** {@inheritDoc HortonInfiltrationSettings.minimumRate} */
|
|
82
|
+
readonly minimumRate?: number;
|
|
83
|
+
/** {@inheritDoc HortonInfiltrationSettings.decayCoefficient} */
|
|
84
|
+
readonly decayCoefficient?: number;
|
|
85
|
+
/** {@inheritDoc HortonInfiltrationSettings.dryingTimeDays} */
|
|
86
|
+
readonly dryingTimeDays?: number;
|
|
87
|
+
/** {@inheritDoc HortonInfiltrationSettings.maximumInfiltration} */
|
|
88
|
+
readonly maximumInfiltration?: number | null;
|
|
89
|
+
/** {@inheritDoc GreenAmptInfiltrationSettings.suctionHead} */
|
|
90
|
+
readonly suctionHead?: number;
|
|
91
|
+
/** {@inheritDoc GreenAmptInfiltrationSettings.hydraulicConductivity} */
|
|
92
|
+
readonly hydraulicConductivity?: number;
|
|
93
|
+
/** {@inheritDoc GreenAmptInfiltrationSettings.initialMoistureDeficit} */
|
|
94
|
+
readonly initialMoistureDeficit?: number;
|
|
95
|
+
/** {@inheritDoc CurveNumberInfiltrationSettings.curveNumber} */
|
|
96
|
+
readonly curveNumber?: number;
|
|
97
|
+
}
|
|
98
|
+
/** Detached groundwater declarations in project units. */
|
|
99
|
+
export interface SubcatchmentGroundwaterConfiguration {
|
|
100
|
+
/** Canonical configured aquifer ID. */
|
|
101
|
+
readonly aquifer: string;
|
|
102
|
+
/** Canonical receiving node ID. */
|
|
103
|
+
readonly node: string;
|
|
104
|
+
/** Surface elevation in ft or m. */
|
|
105
|
+
readonly surfaceElevation: number;
|
|
106
|
+
/** Groundwater-flow equation coefficient in project units. */
|
|
107
|
+
readonly groundwaterCoefficient: number;
|
|
108
|
+
/** Groundwater-flow equation exponent. */
|
|
109
|
+
readonly groundwaterExponent: number;
|
|
110
|
+
/** Surface-water equation coefficient in project units. */
|
|
111
|
+
readonly surfaceCoefficient: number;
|
|
112
|
+
/** Surface-water equation exponent. */
|
|
113
|
+
readonly surfaceExponent: number;
|
|
114
|
+
/** Groundwater/surface-water interaction coefficient in project units. */
|
|
115
|
+
readonly interactionCoefficient: number;
|
|
116
|
+
/** Fixed receiving-node surface depth in ft or m. */
|
|
117
|
+
readonly fixedSurfaceDepth: number;
|
|
118
|
+
/** Aquifer bottom elevation in ft or m. */
|
|
119
|
+
readonly bottomElevation: number;
|
|
120
|
+
/** Initial water-table elevation in ft or m. */
|
|
121
|
+
readonly waterTableElevation: number;
|
|
122
|
+
/** Initial upper-zone moisture fraction. */
|
|
123
|
+
readonly upperMoisture: number;
|
|
124
|
+
}
|
|
125
|
+
/** Sparse groundwater update; omission retains a field in an existing declaration. */
|
|
126
|
+
export interface SubcatchmentGroundwaterPatch {
|
|
127
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.aquifer} */
|
|
128
|
+
readonly aquifer?: string;
|
|
129
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.node} */
|
|
130
|
+
readonly node?: string;
|
|
131
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.surfaceElevation} */
|
|
132
|
+
readonly surfaceElevation?: number;
|
|
133
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.groundwaterCoefficient} */
|
|
134
|
+
readonly groundwaterCoefficient?: number;
|
|
135
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.groundwaterExponent} */
|
|
136
|
+
readonly groundwaterExponent?: number;
|
|
137
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.surfaceCoefficient} */
|
|
138
|
+
readonly surfaceCoefficient?: number;
|
|
139
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.surfaceExponent} */
|
|
140
|
+
readonly surfaceExponent?: number;
|
|
141
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.interactionCoefficient} */
|
|
142
|
+
readonly interactionCoefficient?: number;
|
|
143
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.fixedSurfaceDepth} */
|
|
144
|
+
readonly fixedSurfaceDepth?: number;
|
|
145
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.bottomElevation} */
|
|
146
|
+
readonly bottomElevation?: number;
|
|
147
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.waterTableElevation} */
|
|
148
|
+
readonly waterTableElevation?: number;
|
|
149
|
+
/** {@inheritDoc SubcatchmentGroundwaterConfiguration.upperMoisture} */
|
|
150
|
+
readonly upperMoisture?: number;
|
|
151
|
+
}
|
|
152
|
+
/** Atomic sparse configuration update; omitted fields retain their declarations. */
|
|
153
|
+
export interface SubcatchmentPatch {
|
|
154
|
+
/** {@inheritDoc SubcatchmentConfiguration.tag} */
|
|
155
|
+
readonly tag?: string;
|
|
156
|
+
/** {@inheritDoc SubcatchmentConfiguration.area} */
|
|
157
|
+
readonly area?: number;
|
|
158
|
+
/** {@inheritDoc SubcatchmentConfiguration.imperviousFraction} */
|
|
159
|
+
readonly imperviousFraction?: number;
|
|
160
|
+
/** {@inheritDoc SubcatchmentConfiguration.zeroImperviousFraction} */
|
|
161
|
+
readonly zeroImperviousFraction?: number;
|
|
162
|
+
/** {@inheritDoc SubcatchmentConfiguration.width} */
|
|
163
|
+
readonly width?: number;
|
|
164
|
+
/** {@inheritDoc SubcatchmentConfiguration.slope} */
|
|
165
|
+
readonly slope?: number;
|
|
166
|
+
/** {@inheritDoc SubcatchmentConfiguration.imperviousRoughness} */
|
|
167
|
+
readonly imperviousRoughness?: number;
|
|
168
|
+
/** {@inheritDoc SubcatchmentConfiguration.perviousRoughness} */
|
|
169
|
+
readonly perviousRoughness?: number;
|
|
170
|
+
/** {@inheritDoc SubcatchmentConfiguration.imperviousDepressionStorage} */
|
|
171
|
+
readonly imperviousDepressionStorage?: number;
|
|
172
|
+
/** {@inheritDoc SubcatchmentConfiguration.perviousDepressionStorage} */
|
|
173
|
+
readonly perviousDepressionStorage?: number;
|
|
174
|
+
/** {@inheritDoc SubcatchmentConfiguration.curbLength} */
|
|
175
|
+
readonly curbLength?: number;
|
|
176
|
+
/** {@inheritDoc SubcatchmentConfiguration.includedInReport} */
|
|
177
|
+
readonly includedInReport?: boolean;
|
|
178
|
+
/** {@inheritDoc SubcatchmentConfiguration.rainGage} */
|
|
179
|
+
readonly rainGage?: string;
|
|
180
|
+
/** {@inheritDoc SubcatchmentConfiguration.outlet} */
|
|
181
|
+
readonly outlet?: SubcatchmentOutlet;
|
|
182
|
+
/** Sparse infiltration parameters matching the selected model. */
|
|
183
|
+
readonly infiltration?: SubcatchmentInfiltrationPatch;
|
|
184
|
+
/** Omit to preserve; null removes the groundwater declaration. */
|
|
185
|
+
readonly groundwater?: SubcatchmentGroundwaterPatch | null;
|
|
186
|
+
/** Omit to preserve; null removes the snowpack relationship. */
|
|
187
|
+
readonly snowpack?: string | null;
|
|
188
|
+
/** Replace the complete configured pollutant buildup map. */
|
|
189
|
+
readonly initialBuildup?: Readonly<Record<string, number>>;
|
|
190
|
+
/** Replace the complete configured land-use coverage map. */
|
|
191
|
+
readonly coverageFractions?: Readonly<Record<string, number>>;
|
|
192
|
+
}
|
|
193
|
+
/** Detached subcatchment declarations; runtime precipitation scales are also exposed for inspection. */
|
|
194
|
+
export interface SubcatchmentConfiguration {
|
|
195
|
+
/** User tag; an empty string clears it. */
|
|
196
|
+
readonly tag: string;
|
|
197
|
+
/** Dimensionless rainfall multiplier; edited through `setPrecipitationScaleFactors`. */
|
|
198
|
+
readonly rainScaleFactor: number;
|
|
199
|
+
/** Dimensionless snowfall multiplier; edited through `setPrecipitationScaleFactors`. */
|
|
200
|
+
readonly snowScaleFactor: number;
|
|
201
|
+
/** Drainage area in acres for US projects or hectares for SI projects. */
|
|
202
|
+
readonly area: number;
|
|
203
|
+
/** Canonical configured rain-gage ID. */
|
|
204
|
+
readonly rainGage: string;
|
|
205
|
+
/** Whether this subcatchment is selected for reporting. */
|
|
206
|
+
readonly includedInReport: boolean;
|
|
207
|
+
/** Characteristic runoff width in ft or m. */
|
|
208
|
+
readonly width: number;
|
|
209
|
+
/** Surface slope as a fraction, not percent. */
|
|
210
|
+
readonly slope: number;
|
|
211
|
+
/** Curb length in ft or m. */
|
|
212
|
+
readonly curbLength: number;
|
|
213
|
+
/** Impervious area fraction, 0–1. */
|
|
214
|
+
readonly imperviousFraction: number;
|
|
215
|
+
/** Fraction of impervious area without depression storage, 0–1. */
|
|
216
|
+
readonly zeroImperviousFraction: number;
|
|
217
|
+
/** Impervious Manning roughness coefficient. */
|
|
218
|
+
readonly imperviousRoughness: number;
|
|
219
|
+
/** Pervious Manning roughness coefficient. */
|
|
220
|
+
readonly perviousRoughness: number;
|
|
221
|
+
/** Impervious depression storage in in or mm. */
|
|
222
|
+
readonly imperviousDepressionStorage: number;
|
|
223
|
+
/** Pervious depression storage in in or mm. */
|
|
224
|
+
readonly perviousDepressionStorage: number;
|
|
225
|
+
/** Canonical runoff destination. */
|
|
226
|
+
readonly outlet: SubcatchmentOutlet;
|
|
227
|
+
/** Model-specific infiltration declarations, or null when absent. */
|
|
228
|
+
readonly infiltration: SubcatchmentInfiltrationConfiguration | null;
|
|
229
|
+
/** Groundwater declarations, or null when absent. */
|
|
230
|
+
readonly groundwater: SubcatchmentGroundwaterConfiguration | null;
|
|
231
|
+
/** Canonical snowmelt parameter-set ID, or null. */
|
|
232
|
+
readonly snowpack: string | null;
|
|
233
|
+
/** Configured pollutant-ID map of initial buildup in pollutant load units. */
|
|
234
|
+
readonly initialBuildup: Readonly<Record<string, number>>;
|
|
235
|
+
/** Configured land-use-ID map of area fractions, 0–1. */
|
|
236
|
+
readonly coverageFractions: Readonly<Record<string, number>>;
|
|
237
|
+
}
|
|
238
|
+
/** Detached pollutant results; all arrays follow `pollutantIds`. */
|
|
239
|
+
export interface SubcatchmentQuality {
|
|
240
|
+
/** Canonical pollutant IDs in configured order. */
|
|
241
|
+
readonly pollutantIds: readonly string[];
|
|
242
|
+
/** Runoff concentrations in each pollutant's configured concentration units. */
|
|
243
|
+
readonly runoffConcentrations: readonly number[];
|
|
244
|
+
/** Ponded-water concentrations in configured concentration units. */
|
|
245
|
+
readonly pondedConcentrations: readonly number[];
|
|
246
|
+
/** Current buildup in each pollutant's load units. */
|
|
247
|
+
readonly buildupLoads: readonly number[];
|
|
248
|
+
/** Cumulative washoff in each pollutant's load units. */
|
|
249
|
+
readonly totalWashoffLoads: readonly number[];
|
|
250
|
+
}
|
|
251
|
+
/** Detached pollutant-major matrices: outer rows follow `pollutantIds`, inner columns follow `objectIds`. */
|
|
252
|
+
export interface SubcatchmentQualitySnapshot {
|
|
253
|
+
/** Selected canonical subcatchment IDs in requested order. */
|
|
254
|
+
readonly objectIds: readonly string[];
|
|
255
|
+
/** Canonical pollutant IDs in configured order. */
|
|
256
|
+
readonly pollutantIds: readonly string[];
|
|
257
|
+
/** Runoff concentrations in configured pollutant concentration units. */
|
|
258
|
+
readonly runoffConcentrations: readonly (readonly number[])[];
|
|
259
|
+
/** Ponded concentrations in configured pollutant concentration units. */
|
|
260
|
+
readonly pondedConcentrations: readonly (readonly number[])[];
|
|
261
|
+
/** Current buildup in configured pollutant load units. */
|
|
262
|
+
readonly buildupLoads: readonly (readonly number[])[];
|
|
263
|
+
/** Cumulative washoff in configured pollutant load units. */
|
|
264
|
+
readonly totalWashoffLoads: readonly (readonly number[])[];
|
|
265
|
+
}
|
|
266
|
+
/** Detached cumulative runoff statistics, available before `end()`. */
|
|
267
|
+
export interface SubcatchmentStatistics {
|
|
268
|
+
/** Total precipitation depth in in or mm. */
|
|
269
|
+
readonly precipitation: number;
|
|
270
|
+
/** Total runon volume in ft³ or m³. */
|
|
271
|
+
readonly runonVolume: number;
|
|
272
|
+
/** Total evaporated volume in ft³ or m³. */
|
|
273
|
+
readonly evaporationVolume: number;
|
|
274
|
+
/** Total infiltrated volume in ft³ or m³. */
|
|
275
|
+
readonly infiltrationVolume: number;
|
|
276
|
+
/** Total runoff volume in ft³ or m³. */
|
|
277
|
+
readonly runoffVolume: number;
|
|
278
|
+
/** Maximum runoff rate in project flow units. */
|
|
279
|
+
readonly maximumRunoff: number;
|
|
280
|
+
/** Impervious runoff volume in ft³ or m³. */
|
|
281
|
+
readonly imperviousRunoffVolume: number;
|
|
282
|
+
/** Pervious runoff volume in ft³ or m³. */
|
|
283
|
+
readonly perviousRunoffVolume: number;
|
|
284
|
+
}
|
|
285
|
+
/** Detached statistics arrays, all aligned to `objectIds`. */
|
|
286
|
+
export interface SubcatchmentStatisticsSnapshot {
|
|
287
|
+
/** Selected canonical subcatchment IDs in requested order. */
|
|
288
|
+
readonly objectIds: readonly string[];
|
|
289
|
+
/** {@inheritDoc SubcatchmentStatistics.precipitation} */
|
|
290
|
+
readonly precipitation: readonly number[];
|
|
291
|
+
/** {@inheritDoc SubcatchmentStatistics.runonVolume} */
|
|
292
|
+
readonly runonVolume: readonly number[];
|
|
293
|
+
/** {@inheritDoc SubcatchmentStatistics.evaporationVolume} */
|
|
294
|
+
readonly evaporationVolume: readonly number[];
|
|
295
|
+
/** {@inheritDoc SubcatchmentStatistics.infiltrationVolume} */
|
|
296
|
+
readonly infiltrationVolume: readonly number[];
|
|
297
|
+
/** {@inheritDoc SubcatchmentStatistics.runoffVolume} */
|
|
298
|
+
readonly runoffVolume: readonly number[];
|
|
299
|
+
/** {@inheritDoc SubcatchmentStatistics.maximumRunoff} */
|
|
300
|
+
readonly maximumRunoff: readonly number[];
|
|
301
|
+
/** {@inheritDoc SubcatchmentStatistics.imperviousRunoffVolume} */
|
|
302
|
+
readonly imperviousRunoffVolume: readonly number[];
|
|
303
|
+
/** {@inheritDoc SubcatchmentStatistics.perviousRunoffVolume} */
|
|
304
|
+
readonly perviousRunoffVolume: readonly number[];
|
|
305
|
+
}
|
|
306
|
+
/** Persistent dimensionless precipitation multipliers; both initially default to 1. */
|
|
307
|
+
export interface SubcatchmentPrecipitationScaleFactors {
|
|
308
|
+
/** Rainfall multiplier. */
|
|
309
|
+
readonly rainfall: number;
|
|
310
|
+
/** Snowfall multiplier. */
|
|
311
|
+
readonly snowfall: number;
|
|
312
|
+
}
|
|
313
|
+
/** Persistent external precipitation additions in in/h or mm/h; initially zero. */
|
|
314
|
+
export interface SubcatchmentExternalForcing {
|
|
315
|
+
/** External rainfall rate. */
|
|
316
|
+
readonly rainfall: number;
|
|
317
|
+
/** External snowfall rate. */
|
|
318
|
+
readonly snowfall: number;
|
|
319
|
+
}
|
|
320
|
+
/** Select initial pollutant buildup (`loading`) or land-use area fractions (`coverage`). */
|
|
321
|
+
export type SubcatchmentNamedSettingsKind = "loading" | "coverage";
|
|
322
|
+
/** Canonical pollutant-ID/load or land-use-ID/fraction map, as selected by the operation. */
|
|
323
|
+
export type SubcatchmentNamedValues = Readonly<Record<string, number>>;
|
|
324
|
+
/** Canonical pollutant-ID map; values use the operation's concentration or load units. */
|
|
325
|
+
export type SubcatchmentPollutantValues = Readonly<Record<string, number>>;
|
|
326
|
+
export interface SubcatchmentOperations {
|
|
327
|
+
subcatchmentConfiguration: {
|
|
328
|
+
args: [string];
|
|
329
|
+
result: SubcatchmentConfiguration;
|
|
330
|
+
};
|
|
331
|
+
configureSubcatchment: {
|
|
332
|
+
args: [string, SubcatchmentPatch];
|
|
333
|
+
result: void;
|
|
334
|
+
};
|
|
335
|
+
useRainGageExternalPrecipitation: {
|
|
336
|
+
args: [string, number];
|
|
337
|
+
result: void;
|
|
338
|
+
};
|
|
339
|
+
rainGageExternalPrecipitationRate: {
|
|
340
|
+
args: [string];
|
|
341
|
+
result: number | null;
|
|
342
|
+
};
|
|
343
|
+
rainGageRainfallOverride: {
|
|
344
|
+
args: [string];
|
|
345
|
+
result: number | null;
|
|
346
|
+
};
|
|
347
|
+
subcatchmentPrecipitationScaleFactors: {
|
|
348
|
+
args: [string];
|
|
349
|
+
result: SubcatchmentPrecipitationScaleFactors;
|
|
350
|
+
};
|
|
351
|
+
setSubcatchmentPrecipitationScaleFactors: {
|
|
352
|
+
args: [string, number, number];
|
|
353
|
+
result: void;
|
|
354
|
+
};
|
|
355
|
+
subcatchmentExternalForcing: {
|
|
356
|
+
args: [string];
|
|
357
|
+
result: SubcatchmentExternalForcing;
|
|
358
|
+
};
|
|
359
|
+
setSubcatchmentExternalRainfall: {
|
|
360
|
+
args: [string, number];
|
|
361
|
+
result: void;
|
|
362
|
+
};
|
|
363
|
+
setSubcatchmentExternalSnowfall: {
|
|
364
|
+
args: [string, number];
|
|
365
|
+
result: void;
|
|
366
|
+
};
|
|
367
|
+
subcatchmentQuality: {
|
|
368
|
+
args: [string];
|
|
369
|
+
result: SubcatchmentQuality;
|
|
370
|
+
};
|
|
371
|
+
subcatchmentQualitySnapshot: {
|
|
372
|
+
args: [readonly string[] | undefined];
|
|
373
|
+
result: SubcatchmentQualitySnapshot;
|
|
374
|
+
};
|
|
375
|
+
subcatchmentNamedSettings: {
|
|
376
|
+
args: [string, SubcatchmentNamedSettingsKind];
|
|
377
|
+
result: SubcatchmentNamedValues;
|
|
378
|
+
};
|
|
379
|
+
subcatchmentNamedSetting: {
|
|
380
|
+
args: [string, SubcatchmentNamedSettingsKind, string];
|
|
381
|
+
result: number;
|
|
382
|
+
};
|
|
383
|
+
updateSubcatchmentNamedSettings: {
|
|
384
|
+
args: [string, SubcatchmentNamedSettingsKind, SubcatchmentNamedValues, boolean];
|
|
385
|
+
result: void;
|
|
386
|
+
};
|
|
387
|
+
subcatchmentExternalPollutantBuildupIncrement: {
|
|
388
|
+
args: [string];
|
|
389
|
+
result: SubcatchmentPollutantValues;
|
|
390
|
+
};
|
|
391
|
+
subcatchmentExternalPollutantBuildupIncrementValue: {
|
|
392
|
+
args: [string, string];
|
|
393
|
+
result: number;
|
|
394
|
+
};
|
|
395
|
+
updateSubcatchmentExternalPollutantBuildupIncrement: {
|
|
396
|
+
args: [string, SubcatchmentPollutantValues, boolean];
|
|
397
|
+
result: void;
|
|
398
|
+
};
|
|
399
|
+
subcatchmentStatistics: {
|
|
400
|
+
args: [string];
|
|
401
|
+
result: SubcatchmentStatistics;
|
|
402
|
+
};
|
|
403
|
+
subcatchmentStatisticsSnapshot: {
|
|
404
|
+
args: [readonly string[] | undefined];
|
|
405
|
+
result: SubcatchmentStatisticsSnapshot;
|
|
406
|
+
};
|
|
407
|
+
}
|
|
408
|
+
/** Subcatchment handle owned by one Simulation. Worker reads return detached values; use `configure` only in `open` or `ended`. */
|
|
409
|
+
export declare class Subcatchment {
|
|
410
|
+
#private;
|
|
411
|
+
/** Canonical configured subcatchment ID. */
|
|
412
|
+
readonly id: string;
|
|
413
|
+
/** Asynchronously indexed LID usages belonging to this subcatchment. */
|
|
414
|
+
readonly lidUnits: LidUnitCollection;
|
|
415
|
+
private constructor();
|
|
416
|
+
/** Read current runoff results in `running`, `complete`, or `ended`.
|
|
417
|
+
* @returns Detached result record in project units.
|
|
418
|
+
*/
|
|
419
|
+
results(): Promise<SubcatchmentResults>;
|
|
420
|
+
/** Read aggregate LID-group results in `running` or `complete`, before `end()`.
|
|
421
|
+
* @returns Detached aggregate LID results.
|
|
422
|
+
* @throws A solver error when this subcatchment has no LID group.
|
|
423
|
+
*/
|
|
424
|
+
lidSnapshot(): Promise<SubcatchmentLidSnapshot>;
|
|
425
|
+
/** Read declarations in any healthy owner state.
|
|
426
|
+
* @returns Detached configuration with canonical relationship IDs.
|
|
427
|
+
*/
|
|
428
|
+
configuration(): Promise<SubcatchmentConfiguration>;
|
|
429
|
+
/** Atomically update declarations in `open` or `ended`; preparation-sensitive edits return the owner to `open`.
|
|
430
|
+
* @param patch - Sparse project-unit declarations. Null removes optional relationships; supplied buildup/coverage maps replace those complete maps.
|
|
431
|
+
* @returns Resolves after all supplied fields are accepted; rejected patches apply no fields.
|
|
432
|
+
*/
|
|
433
|
+
configure(patch: SubcatchmentPatch): Promise<void>;
|
|
434
|
+
/** Read persistent precipitation multipliers in a healthy owner state.
|
|
435
|
+
* @returns Dimensionless rainfall and snowfall factors.
|
|
436
|
+
*/
|
|
437
|
+
precipitationScaleFactors(): Promise<SubcatchmentPrecipitationScaleFactors>;
|
|
438
|
+
/** Read the persistent dimensionless rainfall multiplier; initially 1. */
|
|
439
|
+
rainScaleFactor(): Promise<number>;
|
|
440
|
+
/** Read the persistent dimensionless snowfall multiplier; initially 1. */
|
|
441
|
+
snowScaleFactor(): Promise<number>;
|
|
442
|
+
/** Replace persistent precipitation multipliers in `open`, `running`, or `ended`.
|
|
443
|
+
* @param rainfall - Finite nonnegative rainfall multiplier.
|
|
444
|
+
* @param snowfall - Finite nonnegative snowfall multiplier.
|
|
445
|
+
* @returns Resolves after both values are accepted; values persist until replaced.
|
|
446
|
+
*/
|
|
447
|
+
setPrecipitationScaleFactors(rainfall: number, snowfall: number): Promise<void>;
|
|
448
|
+
/** Read persistent external rainfall/snowfall additions in a healthy owner state.
|
|
449
|
+
* @returns Rates in in/h or mm/h, initially zero.
|
|
450
|
+
*/
|
|
451
|
+
externalForcing(): Promise<SubcatchmentExternalForcing>;
|
|
452
|
+
/** Read the persistent external rainfall addition in in/h or mm/h. */
|
|
453
|
+
externalRainfall(): Promise<number>;
|
|
454
|
+
/** Replace the persistent rainfall addition in `open`, `running`, or `ended`.
|
|
455
|
+
* @param value - Finite nonnegative rate in in/h or mm/h; zero clears the addition.
|
|
456
|
+
*/
|
|
457
|
+
setExternalRainfall(value: number): Promise<void>;
|
|
458
|
+
/** Read the persistent external snowfall addition in in/h or mm/h. */
|
|
459
|
+
externalSnowfall(): Promise<number>;
|
|
460
|
+
/** Replace the persistent snowfall addition in `open`, `running`, or `ended`.
|
|
461
|
+
* @param value - Finite nonnegative rate in in/h or mm/h; zero clears the addition.
|
|
462
|
+
*/
|
|
463
|
+
setExternalSnowfall(value: number): Promise<void>;
|
|
464
|
+
/** Read pollutant-aligned quality results in `running`, `complete`, or `ended`.
|
|
465
|
+
* @returns Detached concentrations and loads in configured pollutant units.
|
|
466
|
+
*/
|
|
467
|
+
quality(): Promise<SubcatchmentQuality>;
|
|
468
|
+
/** Read runoff concentrations keyed by pollutant ID in `running`, `complete`, or `ended`; values use configured concentration units. */
|
|
469
|
+
runoffPollutantConcentration(): Promise<SubcatchmentPollutantValues>;
|
|
470
|
+
/** Read ponded-water concentrations keyed by pollutant ID in `running`, `complete`, or `ended`; values use configured concentration units. */
|
|
471
|
+
pondedPollutantConcentration(): Promise<SubcatchmentPollutantValues>;
|
|
472
|
+
/** Read current buildup keyed by pollutant ID in `running`, `complete`, or `ended`; values use configured pollutant load units. */
|
|
473
|
+
pollutantBuildup(): Promise<SubcatchmentPollutantValues>;
|
|
474
|
+
/** Read cumulative washoff keyed by pollutant ID in `running`, `complete`, or `ended`; values use configured pollutant load units. */
|
|
475
|
+
pollutantTotalLoad(): Promise<SubcatchmentPollutantValues>;
|
|
476
|
+
/** Read configured loading or coverage in a healthy owner state.
|
|
477
|
+
* @param kind - `loading` for pollutant buildup; `coverage` for land-use fractions.
|
|
478
|
+
* @returns Detached canonical-ID map in pollutant load units or area fractions, respectively.
|
|
479
|
+
*/
|
|
480
|
+
namedSettings(kind: SubcatchmentNamedSettingsKind): Promise<SubcatchmentNamedValues>;
|
|
481
|
+
/** Read one named declaration in a healthy owner state.
|
|
482
|
+
* @param kind - Loading or coverage selector.
|
|
483
|
+
* @param name - Configured pollutant ID or land-use ID, respectively.
|
|
484
|
+
* @returns Initial load or coverage fraction for the selected definition.
|
|
485
|
+
*/
|
|
486
|
+
namedSetting(kind: SubcatchmentNamedSettingsKind, name: string): Promise<number>;
|
|
487
|
+
/** Atomically update loading or coverage in `open` or `ended`; accepted declaration edits return the owner to `open`.
|
|
488
|
+
* @param kind - Loading or coverage selector.
|
|
489
|
+
* @param values - Configured pollutant-ID/load or land-use-ID/fraction map.
|
|
490
|
+
* @param replace - False by default merges supplied entries; true clears omitted entries to zero.
|
|
491
|
+
* @returns Resolves after the update is accepted.
|
|
492
|
+
*/
|
|
493
|
+
updateNamedSettings(kind: SubcatchmentNamedSettingsKind, values: SubcatchmentNamedValues, replace?: boolean): Promise<void>;
|
|
494
|
+
/** Clear every entry in one named declaration family in `open` or `ended`.
|
|
495
|
+
* @param kind - Loading or coverage selector.
|
|
496
|
+
*/
|
|
497
|
+
clearNamedSettings(kind: SubcatchmentNamedSettingsKind): Promise<void>;
|
|
498
|
+
/** Read configured initial buildup by pollutant ID in a healthy owner state; values use pollutant load units. */
|
|
499
|
+
initialBuildup(): Promise<SubcatchmentNamedValues>;
|
|
500
|
+
/** Update configured initial buildup in `open` or `ended`.
|
|
501
|
+
* @param values - Canonical pollutant-ID map in configured load units.
|
|
502
|
+
* @param replace - False by default merges; true clears omitted pollutants to zero.
|
|
503
|
+
*/
|
|
504
|
+
updateInitialBuildup(values: SubcatchmentNamedValues, replace?: boolean): Promise<void>;
|
|
505
|
+
/** Clear configured initial buildup in `open` or `ended`. */
|
|
506
|
+
clearInitialBuildup(): Promise<void>;
|
|
507
|
+
/** Read configured land-use area fractions by ID in a healthy owner state. */
|
|
508
|
+
coverageFractions(): Promise<SubcatchmentNamedValues>;
|
|
509
|
+
/** Update land-use coverage in `open` or `ended`.
|
|
510
|
+
* @param values - Canonical land-use-ID map of area fractions, not percentages.
|
|
511
|
+
* @param replace - False by default merges; true clears omitted land uses to zero.
|
|
512
|
+
*/
|
|
513
|
+
updateCoverageFractions(values: SubcatchmentNamedValues, replace?: boolean): Promise<void>;
|
|
514
|
+
/** Clear all land-use coverage declarations in `open` or `ended`. */
|
|
515
|
+
clearCoverageFractions(): Promise<void>;
|
|
516
|
+
/** Read persistent external buildup increments in `open`, `running`, or `ended`; values are loads applied on runoff updates, not concentrations. */
|
|
517
|
+
externalPollutantBuildupIncrement(): Promise<SubcatchmentPollutantValues>;
|
|
518
|
+
/** Read one persistent buildup increment in `open`, `running`, or `ended`.
|
|
519
|
+
* @param pollutantId - Configured pollutant ID.
|
|
520
|
+
* @returns External increment in that pollutant's load units.
|
|
521
|
+
*/
|
|
522
|
+
externalPollutantBuildupIncrementValue(pollutantId: string): Promise<number>;
|
|
523
|
+
/** Update persistent buildup increments in `open`, `running`, or `ended`.
|
|
524
|
+
* @param values - Configured pollutant-ID map of finite nonnegative increments in pollutant load units.
|
|
525
|
+
* @param replace - False by default merges; true clears omitted pollutants to zero.
|
|
526
|
+
* @returns Resolves after the update; increments persist until explicitly replaced or cleared.
|
|
527
|
+
*/
|
|
528
|
+
updateExternalPollutantBuildupIncrement(values: SubcatchmentPollutantValues, replace?: boolean): Promise<void>;
|
|
529
|
+
/** Clear all persistent buildup increments in `open`, `running`, or `ended`. */
|
|
530
|
+
clearExternalPollutantBuildupIncrement(): Promise<void>;
|
|
531
|
+
/** Read cumulative statistics in `running` or `complete`, before `end()`.
|
|
532
|
+
* @returns Detached runoff statistics in project units.
|
|
533
|
+
*/
|
|
534
|
+
statistics(): Promise<SubcatchmentStatistics>;
|
|
535
|
+
}
|
|
536
|
+
/** Rain-gage handle owned by one Simulation; source selection and temporary overrides are distinct persistent inputs. */
|
|
537
|
+
export declare class RainGage {
|
|
538
|
+
#private;
|
|
539
|
+
/** Canonical configured rain-gage ID. */
|
|
540
|
+
readonly id: string;
|
|
541
|
+
private constructor();
|
|
542
|
+
/** Read current precipitation in `running`, `complete`, or `ended`.
|
|
543
|
+
* @returns Detached rainfall, snowfall, and total rates in in/h or mm/h.
|
|
544
|
+
*/
|
|
545
|
+
results(): Promise<RainGageResults>;
|
|
546
|
+
/** Read total precipitation rate, not accumulated depth, in in/h or mm/h; requires `running`, `complete`, or `ended`. */
|
|
547
|
+
totalPrecip(): Promise<number>;
|
|
548
|
+
/** Read liquid rainfall rate in in/h or mm/h; requires `running`, `complete`, or `ended`. */
|
|
549
|
+
rainfall(): Promise<number>;
|
|
550
|
+
/** Read snowfall water-equivalent rate in in/h or mm/h; requires `running`, `complete`, or `ended`. */
|
|
551
|
+
snowfall(): Promise<number>;
|
|
552
|
+
/** Read the selected API source rate in a healthy owner state.
|
|
553
|
+
* @returns Rate in in/h or mm/h, or null when the API is not the underlying source.
|
|
554
|
+
*/
|
|
555
|
+
externalPrecipitationRate(): Promise<number | null>;
|
|
556
|
+
/** Select the API as the persistent precipitation source in `open`, `running`, or `ended`.
|
|
557
|
+
* @param rate - Finite nonnegative rate in in/h or mm/h; zero selects a dry API source, not the original source.
|
|
558
|
+
* @returns Resolves after source selection; the value persists until replaced.
|
|
559
|
+
*/
|
|
560
|
+
useExternalPrecipitation(rate: number): Promise<void>;
|
|
561
|
+
/** Alias for selecting the persistent API precipitation source in `open`, `running`, or `ended`.
|
|
562
|
+
* @param rate - Finite nonnegative rate in in/h or mm/h; this is not a temporary override.
|
|
563
|
+
*/
|
|
564
|
+
setPrecipitation(rate: number): Promise<void>;
|
|
565
|
+
/** Read the temporary source override in a healthy owner state.
|
|
566
|
+
* @returns Rate in in/h or mm/h, or null when no override is active.
|
|
567
|
+
*/
|
|
568
|
+
rainfallOverride(): Promise<number | null>;
|
|
569
|
+
/** Override the current source in `open`, `running`, or `ended` without changing source selection.
|
|
570
|
+
* @param rate - Finite nonnegative rate in in/h or mm/h; null clears the override and resumes the selected underlying source.
|
|
571
|
+
* @returns Resolves after the update; an override remains active until changed or cleared.
|
|
572
|
+
*/
|
|
573
|
+
setRainfallOverride(rate: number | null): Promise<void>;
|
|
574
|
+
}
|
|
575
|
+
//# sourceMappingURL=subcatchments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subcatchments.d.ts","sourceRoot":"","sources":["../../../src/swmmrs/objects/subcatchments.ts"],"names":[],"mappings":"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"}
|