raain-model 3.1.25 → 3.1.27
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/CHANGELOG.md +43 -8
- package/api/rains/RaainApiRainsCumulativeCumulativesComparesRequest.d.ts +1 -0
- package/bpInfo.js +1 -1
- package/package.json +1 -1
- package/quality/QualityIndicatorMethod.d.ts +116 -1
- package/quality/QualityIndicatorMethod.js +102 -18
- package/quality/QualityIndicatorMethod.js.map +1 -1
- package/quality/SpeedMatrix.d.ts +1 -0
- package/quality/SpeedMatrix.js +68 -7
- package/quality/SpeedMatrix.js.map +1 -1
- package/quality/SpeedMatrixContainer.js +24 -2
- package/quality/SpeedMatrixContainer.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,25 +7,58 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [3.1.27] - 2026-02-28
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- [RAD-178] `timeStepMode` option on cumulative compares request (eq/lte filtering)
|
|
15
|
+
- [RAD-178] Deduplicate matrices by name in SpeedMatrixContainer merge (combine qualityPoints)
|
|
16
|
+
|
|
17
|
+
## [3.1.26] - 2026-02-28
|
|
18
|
+
|
|
19
|
+
### Added
|
|
20
|
+
|
|
21
|
+
- `QualityIndicatorMethod.KLING_GUPTA`: new Kling-Gupta Efficiency (KGE) quality indicator (as default) — decomposes
|
|
22
|
+
model performance into correlation, variability bias, and volume bias (`1 - √((r-1)² + (α-1)² + (β-1)²)`)
|
|
23
|
+
- `QualityNormalizationOptions.kgeMinClamp`: floor value when normalizing KGE (default: 0)
|
|
24
|
+
- `QUALITY_NORMALIZATION_DEFAULTS.KGE_MIN_CLAMP`: default KGE normalization floor
|
|
25
|
+
- JSDoc documentation for all `QualityIndicatorMethod` enum members, interfaces, and defaults (TypeDoc-compatible)
|
|
26
|
+
|
|
27
|
+
### Changed
|
|
28
|
+
|
|
29
|
+
- **Breaking**: Default quality indicator method changed from `NASH_SUTCLIFFE` to `KLING_GUPTA` — callers relying on the
|
|
30
|
+
default (no explicit `method` option) will now get KGE instead of NSE
|
|
31
|
+
- **Breaking**: `normalize` now defaults to `true` (was `false`) — `ComputeQualityIndicator()` with no options now
|
|
32
|
+
returns normalized values instead of raw
|
|
33
|
+
- **Breaking**: `normalizeScale` now defaults to `1` (was `100`) — normalized output is 0-1 by default instead of 0-100
|
|
34
|
+
|
|
35
|
+
## [3.1.25] - 2026-02-27
|
|
36
|
+
|
|
10
37
|
### Changed
|
|
11
38
|
|
|
12
|
-
- `QualityIndicatorOptions`: added `normalize` and `normalizationOptions` fields directly to the interface, unifying
|
|
39
|
+
- `QualityIndicatorOptions`: added `normalize` and `normalizationOptions` fields directly to the interface, unifying
|
|
40
|
+
options across all quality indicator methods
|
|
13
41
|
- `ComputeQualityIndicator`: now supports `normalize` option to return normalized values (0–100 or 0–1) in a single call
|
|
14
|
-
- `ComputeNormalizedQualityIndicator`: now delegates to `ComputeQualityIndicator` with unified options (backward
|
|
15
|
-
|
|
42
|
+
- `ComputeNormalizedQualityIndicator`: now delegates to `ComputeQualityIndicator` with unified options (backward
|
|
43
|
+
compatible)
|
|
44
|
+
- `SpeedMatrixContainer.getQuality`: simplified signature to use `QualityIndicatorOptions` directly (removed ad-hoc type
|
|
45
|
+
intersection)
|
|
16
46
|
|
|
17
47
|
## [3.1.24] - 2026-02-27
|
|
18
48
|
|
|
19
49
|
### Added
|
|
20
50
|
|
|
21
|
-
- `QualityNormalizationOptions`: added `normalizeScale` option to control output range (default `100` for 0–100, set to
|
|
51
|
+
- `QualityNormalizationOptions`: added `normalizeScale` option to control output range (default `100` for 0–100, set to
|
|
52
|
+
`1` for 0–1)
|
|
22
53
|
|
|
23
54
|
## [3.1.23] - 2026-02-26
|
|
24
55
|
|
|
25
56
|
### Changed
|
|
26
57
|
|
|
27
|
-
- Removed `RaainApiRainsCumulativeComparesRequest` (consolidated into
|
|
28
|
-
|
|
58
|
+
- Removed `RaainApiRainsCumulativeComparesRequest` (consolidated into
|
|
59
|
+
`RaainApiRainsCumulativeCumulativesComparesRequest`)
|
|
60
|
+
- `RaainApiRainsCumulativeCumulativesComparesRequest`: removed `date` field (only `provider` and `timeStepInMinutes`
|
|
61
|
+
remain)
|
|
29
62
|
|
|
30
63
|
## [3.1.22] - 2026-02-25
|
|
31
64
|
|
|
@@ -37,13 +70,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
37
70
|
|
|
38
71
|
### Added
|
|
39
72
|
|
|
40
|
-
- `RaainApiRainsProgressResponse`: added optional `inQueueCompute` and `inQueueGround` fields to distinguish queued job
|
|
73
|
+
- `RaainApiRainsProgressResponse`: added optional `inQueueCompute` and `inQueueGround` fields to distinguish queued job
|
|
74
|
+
types
|
|
41
75
|
|
|
42
76
|
## [3.1.20] - 2026-02-24
|
|
43
77
|
|
|
44
78
|
### Fixed
|
|
45
79
|
|
|
46
|
-
- `SpeedMatrix.computeNashSutcliffe`: use relative error instead of -Infinity when gauge variance is zero but prediction
|
|
80
|
+
- `SpeedMatrix.computeNashSutcliffe`: use relative error instead of -Infinity when gauge variance is zero but prediction
|
|
81
|
+
is near-perfect (single-point or constant-gauge edge case)
|
|
47
82
|
|
|
48
83
|
## [3.1.19] - 2026-02-07
|
|
49
84
|
|
package/bpInfo.js
CHANGED
package/package.json
CHANGED
|
@@ -1,27 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Quality indicator methods for comparing radar rain predictions against gauge observations.
|
|
3
|
+
*
|
|
4
|
+
* Each method quantifies prediction quality differently. All methods can be normalized
|
|
5
|
+
* to a 0-100 scale (0=worst, 100=best) via {@link SpeedMatrix.NormalizeQualityIndicator}.
|
|
6
|
+
*
|
|
7
|
+
* Default method: {@link KLING_GUPTA}
|
|
8
|
+
*/
|
|
1
9
|
export declare enum QualityIndicatorMethod {
|
|
10
|
+
/**
|
|
11
|
+
* Average absolute difference between rain prediction and gauge observation.
|
|
12
|
+
*
|
|
13
|
+
* Formula: `mean(|rain - gauge|)`
|
|
14
|
+
*
|
|
15
|
+
* - Range: 0 to +Infinity
|
|
16
|
+
* - Perfect score: 0
|
|
17
|
+
* - Normalized: inverted using reference max (default 10 mm/h)
|
|
18
|
+
*/
|
|
2
19
|
DELTA = "delta",
|
|
20
|
+
/**
|
|
21
|
+
* Average of min/max ratio between rain and gauge values.
|
|
22
|
+
*
|
|
23
|
+
* Formula: `mean(min(rain, gauge) / max(rain, gauge))`
|
|
24
|
+
*
|
|
25
|
+
* - Range: 0 to 1
|
|
26
|
+
* - Perfect score: 1
|
|
27
|
+
* - Handles both over- and under-prediction symmetrically
|
|
28
|
+
* - Skips points where both values are zero
|
|
29
|
+
*/
|
|
3
30
|
RATIO = "ratio",
|
|
31
|
+
/**
|
|
32
|
+
* Percentage of points where the min/max ratio meets a quality threshold.
|
|
33
|
+
*
|
|
34
|
+
* Formula: `count(ratio >= threshold) / total * 100`
|
|
35
|
+
*
|
|
36
|
+
* - Range: 0 to 100
|
|
37
|
+
* - Perfect score: 100
|
|
38
|
+
* - Default threshold: 0.8 (configurable via `successThreshold`)
|
|
39
|
+
* - Both-zero points count as successful (correct "no rain" prediction)
|
|
40
|
+
*/
|
|
4
41
|
SUCCESS_RATE = "success_rate",
|
|
42
|
+
/**
|
|
43
|
+
* Root Mean Square Error — penalizes large errors more than small ones.
|
|
44
|
+
*
|
|
45
|
+
* Formula: `sqrt(mean((rain - gauge)^2))`
|
|
46
|
+
*
|
|
47
|
+
* - Range: 0 to +Infinity
|
|
48
|
+
* - Perfect score: 0
|
|
49
|
+
* - More sensitive to outliers than DELTA
|
|
50
|
+
* - Normalized: inverted using reference max (default 10 mm/h)
|
|
51
|
+
*/
|
|
5
52
|
RMSE = "rmse",
|
|
53
|
+
/**
|
|
54
|
+
* Mean Absolute Percentage Error — error relative to observed value.
|
|
55
|
+
*
|
|
56
|
+
* Formula: `mean(|rain - gauge| / gauge) * 100`
|
|
57
|
+
*
|
|
58
|
+
* - Range: 0 to +Infinity (commonly 0-100+)
|
|
59
|
+
* - Perfect score: 0
|
|
60
|
+
* - Skips zero gauge values to avoid division by zero
|
|
61
|
+
* - Normalized: inverted using reference max (default 100%)
|
|
62
|
+
*/
|
|
6
63
|
MAPE = "mape",
|
|
7
|
-
|
|
64
|
+
/**
|
|
65
|
+
* Nash-Sutcliffe Efficiency — hydrology standard comparing prediction to mean observation.
|
|
66
|
+
*
|
|
67
|
+
* Formula: `1 - sum((rain - gauge)^2) / sum((gauge - meanGauge)^2)`
|
|
68
|
+
*
|
|
69
|
+
* - Range: -Infinity to 1
|
|
70
|
+
* - Perfect score: 1
|
|
71
|
+
* - 0 means model is as good as predicting the mean
|
|
72
|
+
* - Negative values mean model is worse than predicting the mean
|
|
73
|
+
*
|
|
74
|
+
* @see {@link KLING_GUPTA} for an improved alternative that decomposes performance
|
|
75
|
+
*/
|
|
76
|
+
NASH_SUTCLIFFE = "nash_sutcliffe",
|
|
77
|
+
/**
|
|
78
|
+
* Kling-Gupta Efficiency — decomposes performance into correlation, variability bias, and volume bias.
|
|
79
|
+
*
|
|
80
|
+
* Formula: `1 - sqrt((r - 1)^2 + (alpha - 1)^2 + (beta - 1)^2)`
|
|
81
|
+
*
|
|
82
|
+
* Where:
|
|
83
|
+
* - `r` = Pearson correlation coefficient (timing/pattern accuracy)
|
|
84
|
+
* - `alpha` = stdDev(rain) / stdDev(gauge) (variability ratio)
|
|
85
|
+
* - `beta` = mean(rain) / mean(gauge) (volume bias ratio)
|
|
86
|
+
*
|
|
87
|
+
* - Range: -Infinity to 1
|
|
88
|
+
* - Perfect score: 1 (r=1, alpha=1, beta=1)
|
|
89
|
+
* - Stricter than NSE on systematic bias
|
|
90
|
+
* - KGE > -0.41 is considered better than mean prediction
|
|
91
|
+
*
|
|
92
|
+
* This is the **default** quality indicator method.
|
|
93
|
+
*
|
|
94
|
+
* @see Gupta et al. (2009) "Decomposition of the mean squared error and NSE performance criteria"
|
|
95
|
+
*/
|
|
96
|
+
KLING_GUPTA = "kling_gupta"
|
|
8
97
|
}
|
|
98
|
+
/**
|
|
99
|
+
* Options for computing a quality indicator.
|
|
100
|
+
*/
|
|
9
101
|
export interface QualityIndicatorOptions {
|
|
102
|
+
/** Quality indicator method to use. Default: {@link QualityIndicatorMethod.KLING_GUPTA} */
|
|
10
103
|
method?: QualityIndicatorMethod;
|
|
104
|
+
/** For SUCCESS_RATE: minimum ratio to consider "successful" (default: 0.8) */
|
|
11
105
|
successThreshold?: number;
|
|
106
|
+
/** If true, normalizes result to 0-1 scale (0=bad, 1=best). Default: true */
|
|
12
107
|
normalize?: boolean;
|
|
108
|
+
/** Options for normalization (reference max values, clamping, scale) */
|
|
13
109
|
normalizationOptions?: QualityNormalizationOptions;
|
|
14
110
|
}
|
|
111
|
+
/**
|
|
112
|
+
* Options for normalizing raw quality indicator values to a common scale.
|
|
113
|
+
*/
|
|
15
114
|
export interface QualityNormalizationOptions {
|
|
115
|
+
/** Reference max value for DELTA normalization (default: 10 mm/h) */
|
|
16
116
|
deltaMaxRef?: number;
|
|
117
|
+
/** Reference max value for RMSE normalization (default: 10 mm/h) */
|
|
17
118
|
rmseMaxRef?: number;
|
|
119
|
+
/** Reference max value for MAPE normalization (default: 100%) */
|
|
18
120
|
mapeMaxRef?: number;
|
|
121
|
+
/** Floor value when normalizing NASH_SUTCLIFFE: raw values below this are clamped before scaling (default: 0) */
|
|
19
122
|
nashSutcliffeMinClamp?: number;
|
|
123
|
+
/** Floor value when normalizing KLING_GUPTA: raw values below this are clamped before scaling (default: 0) */
|
|
124
|
+
kgeMinClamp?: number;
|
|
125
|
+
/** Scale for normalized output: 1 for 0-1, 100 for 0-100 (default: 1) */
|
|
20
126
|
normalizeScale?: number;
|
|
21
127
|
}
|
|
128
|
+
/**
|
|
129
|
+
* Default reference values for normalization in the rainfall domain.
|
|
130
|
+
*/
|
|
22
131
|
export declare const QUALITY_NORMALIZATION_DEFAULTS: {
|
|
132
|
+
/** 10 mm/h is considered maximum acceptable error */
|
|
23
133
|
DELTA_MAX_REF: number;
|
|
134
|
+
/** 10 mm/h RMSE is considered maximum acceptable */
|
|
24
135
|
RMSE_MAX_REF: number;
|
|
136
|
+
/** 100% error is considered maximum */
|
|
25
137
|
MAPE_MAX_REF: number;
|
|
138
|
+
/** NSE raw values below 0 are clamped to 0 during normalization */
|
|
26
139
|
NASH_SUTCLIFFE_MIN_CLAMP: number;
|
|
140
|
+
/** KGE raw values below 0 are clamped to 0 during normalization */
|
|
141
|
+
KGE_MIN_CLAMP: number;
|
|
27
142
|
};
|
|
@@ -1,33 +1,117 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.QUALITY_NORMALIZATION_DEFAULTS = exports.QualityIndicatorMethod = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Quality indicator methods for comparing radar rain predictions against gauge observations.
|
|
6
|
+
*
|
|
7
|
+
* Each method quantifies prediction quality differently. All methods can be normalized
|
|
8
|
+
* to a 0-100 scale (0=worst, 100=best) via {@link SpeedMatrix.NormalizeQualityIndicator}.
|
|
9
|
+
*
|
|
10
|
+
* Default method: {@link KLING_GUPTA}
|
|
11
|
+
*/
|
|
4
12
|
var QualityIndicatorMethod;
|
|
5
13
|
(function (QualityIndicatorMethod) {
|
|
6
|
-
|
|
7
|
-
|
|
14
|
+
/**
|
|
15
|
+
* Average absolute difference between rain prediction and gauge observation.
|
|
16
|
+
*
|
|
17
|
+
* Formula: `mean(|rain - gauge|)`
|
|
18
|
+
*
|
|
19
|
+
* - Range: 0 to +Infinity
|
|
20
|
+
* - Perfect score: 0
|
|
21
|
+
* - Normalized: inverted using reference max (default 10 mm/h)
|
|
22
|
+
*/
|
|
8
23
|
QualityIndicatorMethod["DELTA"] = "delta";
|
|
9
|
-
|
|
10
|
-
|
|
24
|
+
/**
|
|
25
|
+
* Average of min/max ratio between rain and gauge values.
|
|
26
|
+
*
|
|
27
|
+
* Formula: `mean(min(rain, gauge) / max(rain, gauge))`
|
|
28
|
+
*
|
|
29
|
+
* - Range: 0 to 1
|
|
30
|
+
* - Perfect score: 1
|
|
31
|
+
* - Handles both over- and under-prediction symmetrically
|
|
32
|
+
* - Skips points where both values are zero
|
|
33
|
+
*/
|
|
11
34
|
QualityIndicatorMethod["RATIO"] = "ratio";
|
|
12
|
-
|
|
13
|
-
|
|
35
|
+
/**
|
|
36
|
+
* Percentage of points where the min/max ratio meets a quality threshold.
|
|
37
|
+
*
|
|
38
|
+
* Formula: `count(ratio >= threshold) / total * 100`
|
|
39
|
+
*
|
|
40
|
+
* - Range: 0 to 100
|
|
41
|
+
* - Perfect score: 100
|
|
42
|
+
* - Default threshold: 0.8 (configurable via `successThreshold`)
|
|
43
|
+
* - Both-zero points count as successful (correct "no rain" prediction)
|
|
44
|
+
*/
|
|
14
45
|
QualityIndicatorMethod["SUCCESS_RATE"] = "success_rate";
|
|
15
|
-
|
|
16
|
-
|
|
46
|
+
/**
|
|
47
|
+
* Root Mean Square Error — penalizes large errors more than small ones.
|
|
48
|
+
*
|
|
49
|
+
* Formula: `sqrt(mean((rain - gauge)^2))`
|
|
50
|
+
*
|
|
51
|
+
* - Range: 0 to +Infinity
|
|
52
|
+
* - Perfect score: 0
|
|
53
|
+
* - More sensitive to outliers than DELTA
|
|
54
|
+
* - Normalized: inverted using reference max (default 10 mm/h)
|
|
55
|
+
*/
|
|
17
56
|
QualityIndicatorMethod["RMSE"] = "rmse";
|
|
18
|
-
|
|
19
|
-
|
|
57
|
+
/**
|
|
58
|
+
* Mean Absolute Percentage Error — error relative to observed value.
|
|
59
|
+
*
|
|
60
|
+
* Formula: `mean(|rain - gauge| / gauge) * 100`
|
|
61
|
+
*
|
|
62
|
+
* - Range: 0 to +Infinity (commonly 0-100+)
|
|
63
|
+
* - Perfect score: 0
|
|
64
|
+
* - Skips zero gauge values to avoid division by zero
|
|
65
|
+
* - Normalized: inverted using reference max (default 100%)
|
|
66
|
+
*/
|
|
20
67
|
QualityIndicatorMethod["MAPE"] = "mape";
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
68
|
+
/**
|
|
69
|
+
* Nash-Sutcliffe Efficiency — hydrology standard comparing prediction to mean observation.
|
|
70
|
+
*
|
|
71
|
+
* Formula: `1 - sum((rain - gauge)^2) / sum((gauge - meanGauge)^2)`
|
|
72
|
+
*
|
|
73
|
+
* - Range: -Infinity to 1
|
|
74
|
+
* - Perfect score: 1
|
|
75
|
+
* - 0 means model is as good as predicting the mean
|
|
76
|
+
* - Negative values mean model is worse than predicting the mean
|
|
77
|
+
*
|
|
78
|
+
* @see {@link KLING_GUPTA} for an improved alternative that decomposes performance
|
|
79
|
+
*/
|
|
24
80
|
QualityIndicatorMethod["NASH_SUTCLIFFE"] = "nash_sutcliffe";
|
|
81
|
+
/**
|
|
82
|
+
* Kling-Gupta Efficiency — decomposes performance into correlation, variability bias, and volume bias.
|
|
83
|
+
*
|
|
84
|
+
* Formula: `1 - sqrt((r - 1)^2 + (alpha - 1)^2 + (beta - 1)^2)`
|
|
85
|
+
*
|
|
86
|
+
* Where:
|
|
87
|
+
* - `r` = Pearson correlation coefficient (timing/pattern accuracy)
|
|
88
|
+
* - `alpha` = stdDev(rain) / stdDev(gauge) (variability ratio)
|
|
89
|
+
* - `beta` = mean(rain) / mean(gauge) (volume bias ratio)
|
|
90
|
+
*
|
|
91
|
+
* - Range: -Infinity to 1
|
|
92
|
+
* - Perfect score: 1 (r=1, alpha=1, beta=1)
|
|
93
|
+
* - Stricter than NSE on systematic bias
|
|
94
|
+
* - KGE > -0.41 is considered better than mean prediction
|
|
95
|
+
*
|
|
96
|
+
* This is the **default** quality indicator method.
|
|
97
|
+
*
|
|
98
|
+
* @see Gupta et al. (2009) "Decomposition of the mean squared error and NSE performance criteria"
|
|
99
|
+
*/
|
|
100
|
+
QualityIndicatorMethod["KLING_GUPTA"] = "kling_gupta";
|
|
25
101
|
})(QualityIndicatorMethod || (exports.QualityIndicatorMethod = QualityIndicatorMethod = {}));
|
|
26
|
-
|
|
102
|
+
/**
|
|
103
|
+
* Default reference values for normalization in the rainfall domain.
|
|
104
|
+
*/
|
|
27
105
|
exports.QUALITY_NORMALIZATION_DEFAULTS = {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
106
|
+
/** 10 mm/h is considered maximum acceptable error */
|
|
107
|
+
DELTA_MAX_REF: 10,
|
|
108
|
+
/** 10 mm/h RMSE is considered maximum acceptable */
|
|
109
|
+
RMSE_MAX_REF: 10,
|
|
110
|
+
/** 100% error is considered maximum */
|
|
111
|
+
MAPE_MAX_REF: 100,
|
|
112
|
+
/** NSE raw values below 0 are clamped to 0 during normalization */
|
|
113
|
+
NASH_SUTCLIFFE_MIN_CLAMP: 0,
|
|
114
|
+
/** KGE raw values below 0 are clamped to 0 during normalization */
|
|
115
|
+
KGE_MIN_CLAMP: 0,
|
|
32
116
|
};
|
|
33
117
|
//# sourceMappingURL=QualityIndicatorMethod.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QualityIndicatorMethod.js","sourceRoot":"","sources":["../../src/quality/QualityIndicatorMethod.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"QualityIndicatorMethod.js","sourceRoot":"","sources":["../../src/quality/QualityIndicatorMethod.ts"],"names":[],"mappings":";;;AAAA;;;;;;;GAOG;AACH,IAAY,sBA8FX;AA9FD,WAAY,sBAAsB;IAC9B;;;;;;;;OAQG;IACH,yCAAe,CAAA;IAEf;;;;;;;;;OASG;IACH,yCAAe,CAAA;IAEf;;;;;;;;;OASG;IACH,uDAA6B,CAAA;IAE7B;;;;;;;;;OASG;IACH,uCAAa,CAAA;IAEb;;;;;;;;;OASG;IACH,uCAAa,CAAA;IAEb;;;;;;;;;;;OAWG;IACH,2DAAiC,CAAA;IAEjC;;;;;;;;;;;;;;;;;;OAkBG;IACH,qDAA2B,CAAA;AAC/B,CAAC,EA9FW,sBAAsB,sCAAtB,sBAAsB,QA8FjC;AAkCD;;GAEG;AACU,QAAA,8BAA8B,GAAG;IAC1C,qDAAqD;IACrD,aAAa,EAAE,EAAE;IACjB,oDAAoD;IACpD,YAAY,EAAE,EAAE;IAChB,uCAAuC;IACvC,YAAY,EAAE,GAAG;IACjB,mEAAmE;IACnE,wBAAwB,EAAE,CAAC;IAC3B,mEAAmE;IACnE,aAAa,EAAE,CAAC;CACnB,CAAC"}
|
package/quality/SpeedMatrix.d.ts
CHANGED
package/quality/SpeedMatrix.js
CHANGED
|
@@ -37,11 +37,12 @@ class SpeedMatrix {
|
|
|
37
37
|
return created;
|
|
38
38
|
}
|
|
39
39
|
// Compute quality indicator comparing radar predictions vs gauge observations.
|
|
40
|
-
//
|
|
40
|
+
// Default: KGE, normalized to 0-1 scale (0=bad, 1=best).
|
|
41
41
|
static ComputeQualityIndicator(points, options = {}) {
|
|
42
|
-
var _a, _b;
|
|
43
|
-
const method = (_a = options.method) !== null && _a !== void 0 ? _a : QualityIndicatorMethod_1.QualityIndicatorMethod.
|
|
44
|
-
const
|
|
42
|
+
var _a, _b, _c;
|
|
43
|
+
const method = (_a = options.method) !== null && _a !== void 0 ? _a : QualityIndicatorMethod_1.QualityIndicatorMethod.KLING_GUPTA;
|
|
44
|
+
const normalize = (_b = options.normalize) !== null && _b !== void 0 ? _b : true;
|
|
45
|
+
const successThreshold = (_c = options.successThreshold) !== null && _c !== void 0 ? _c : 0.8;
|
|
45
46
|
let rawValue;
|
|
46
47
|
switch (method) {
|
|
47
48
|
case QualityIndicatorMethod_1.QualityIndicatorMethod.DELTA:
|
|
@@ -62,10 +63,13 @@ class SpeedMatrix {
|
|
|
62
63
|
case QualityIndicatorMethod_1.QualityIndicatorMethod.NASH_SUTCLIFFE:
|
|
63
64
|
rawValue = SpeedMatrix.computeNashSutcliffe(points);
|
|
64
65
|
break;
|
|
66
|
+
case QualityIndicatorMethod_1.QualityIndicatorMethod.KLING_GUPTA:
|
|
67
|
+
rawValue = SpeedMatrix.computeKlingGupta(points);
|
|
68
|
+
break;
|
|
65
69
|
default:
|
|
66
70
|
rawValue = SpeedMatrix.computeDelta(points);
|
|
67
71
|
}
|
|
68
|
-
if (
|
|
72
|
+
if (normalize) {
|
|
69
73
|
return SpeedMatrix.NormalizeQualityIndicator(rawValue, method, options.normalizationOptions);
|
|
70
74
|
}
|
|
71
75
|
return rawValue;
|
|
@@ -79,12 +83,12 @@ class SpeedMatrix {
|
|
|
79
83
|
* @returns Normalized value between 0 (worst) and 100 (best)
|
|
80
84
|
*/
|
|
81
85
|
static NormalizeQualityIndicator(rawValue, method, options = {}) {
|
|
82
|
-
var _a, _b, _c, _d, _e;
|
|
86
|
+
var _a, _b, _c, _d, _e, _f;
|
|
83
87
|
const deltaMaxRef = (_a = options.deltaMaxRef) !== null && _a !== void 0 ? _a : QualityIndicatorMethod_1.QUALITY_NORMALIZATION_DEFAULTS.DELTA_MAX_REF;
|
|
84
88
|
const rmseMaxRef = (_b = options.rmseMaxRef) !== null && _b !== void 0 ? _b : QualityIndicatorMethod_1.QUALITY_NORMALIZATION_DEFAULTS.RMSE_MAX_REF;
|
|
85
89
|
const mapeMaxRef = (_c = options.mapeMaxRef) !== null && _c !== void 0 ? _c : QualityIndicatorMethod_1.QUALITY_NORMALIZATION_DEFAULTS.MAPE_MAX_REF;
|
|
86
90
|
const nashMinClamp = (_d = options.nashSutcliffeMinClamp) !== null && _d !== void 0 ? _d : QualityIndicatorMethod_1.QUALITY_NORMALIZATION_DEFAULTS.NASH_SUTCLIFFE_MIN_CLAMP;
|
|
87
|
-
const scale = (_e = options.normalizeScale) !== null && _e !== void 0 ? _e :
|
|
91
|
+
const scale = (_e = options.normalizeScale) !== null && _e !== void 0 ? _e : 1;
|
|
88
92
|
switch (method) {
|
|
89
93
|
case QualityIndicatorMethod_1.QualityIndicatorMethod.SUCCESS_RATE:
|
|
90
94
|
// Already 0-100 where 100=best
|
|
@@ -96,6 +100,11 @@ class SpeedMatrix {
|
|
|
96
100
|
// -∞ to 1 where 1=best → clamp and scale
|
|
97
101
|
const clampedNash = Math.max(nashMinClamp, Math.min(1, rawValue));
|
|
98
102
|
return clampedNash * scale;
|
|
103
|
+
case QualityIndicatorMethod_1.QualityIndicatorMethod.KLING_GUPTA:
|
|
104
|
+
// -∞ to 1 where 1=best → clamp and scale (same pattern as NSE)
|
|
105
|
+
const kgeMinClamp = (_f = options.kgeMinClamp) !== null && _f !== void 0 ? _f : QualityIndicatorMethod_1.QUALITY_NORMALIZATION_DEFAULTS.KGE_MIN_CLAMP;
|
|
106
|
+
const clampedKge = Math.max(kgeMinClamp, Math.min(1, rawValue));
|
|
107
|
+
return clampedKge * scale;
|
|
99
108
|
case QualityIndicatorMethod_1.QualityIndicatorMethod.DELTA:
|
|
100
109
|
// 0-∞ where 0=best → invert using reference max
|
|
101
110
|
const normalizedDelta = Math.max(0, scale - (rawValue / deltaMaxRef) * scale);
|
|
@@ -313,6 +322,58 @@ class SpeedMatrix {
|
|
|
313
322
|
}
|
|
314
323
|
return 1 - sumSquaredErrors / sumSquaredDeviations;
|
|
315
324
|
}
|
|
325
|
+
// Kling-Gupta Efficiency - decomposes into correlation (r), variability (α), bias (β)
|
|
326
|
+
// KGE = 1 - √((r-1)² + (α-1)² + (β-1)²)
|
|
327
|
+
// Range: -∞ to 1, Perfect: 1
|
|
328
|
+
static computeKlingGupta(points) {
|
|
329
|
+
const validPoints = [];
|
|
330
|
+
for (const point of points) {
|
|
331
|
+
const rain = point.getRainValue();
|
|
332
|
+
const gauge = point.getGaugeValue();
|
|
333
|
+
if (typeof rain === 'number' && typeof gauge === 'number') {
|
|
334
|
+
validPoints.push({ rain, gauge });
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
if (validPoints.length === 0) {
|
|
338
|
+
return 0;
|
|
339
|
+
}
|
|
340
|
+
const n = validPoints.length;
|
|
341
|
+
// Compute means
|
|
342
|
+
const meanGauge = validPoints.reduce((sum, p) => sum + p.gauge, 0) / n;
|
|
343
|
+
const meanRain = validPoints.reduce((sum, p) => sum + p.rain, 0) / n;
|
|
344
|
+
// Compute standard deviations
|
|
345
|
+
let sumSqDevGauge = 0;
|
|
346
|
+
let sumSqDevRain = 0;
|
|
347
|
+
let sumCrossDeviation = 0;
|
|
348
|
+
for (const p of validPoints) {
|
|
349
|
+
const devGauge = p.gauge - meanGauge;
|
|
350
|
+
const devRain = p.rain - meanRain;
|
|
351
|
+
sumSqDevGauge += devGauge * devGauge;
|
|
352
|
+
sumSqDevRain += devRain * devRain;
|
|
353
|
+
sumCrossDeviation += devGauge * devRain;
|
|
354
|
+
}
|
|
355
|
+
const stdGauge = Math.sqrt(sumSqDevGauge / n);
|
|
356
|
+
const stdRain = Math.sqrt(sumSqDevRain / n);
|
|
357
|
+
// Handle edge case: no variability in observations
|
|
358
|
+
if (stdGauge === 0) {
|
|
359
|
+
if (stdRain === 0 && meanRain === meanGauge) {
|
|
360
|
+
return 1;
|
|
361
|
+
}
|
|
362
|
+
return -Infinity;
|
|
363
|
+
}
|
|
364
|
+
// Pearson correlation coefficient
|
|
365
|
+
let r;
|
|
366
|
+
if (stdRain === 0) {
|
|
367
|
+
r = 0;
|
|
368
|
+
}
|
|
369
|
+
else {
|
|
370
|
+
r = sumCrossDeviation / n / (stdRain * stdGauge);
|
|
371
|
+
}
|
|
372
|
+
// Variability ratio (α) and bias ratio (β)
|
|
373
|
+
const alpha = stdRain / stdGauge;
|
|
374
|
+
const beta = meanGauge === 0 ? (meanRain === 0 ? 1 : Infinity) : meanRain / meanGauge;
|
|
375
|
+
return (1 - Math.sqrt((r - 1) * (r - 1) + (alpha - 1) * (alpha - 1) + (beta - 1) * (beta - 1)));
|
|
376
|
+
}
|
|
316
377
|
renderFlatten(options) {
|
|
317
378
|
const positionMatrix = this.getFlatten();
|
|
318
379
|
if (positionMatrix.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpeedMatrix.js","sourceRoot":"","sources":["../../src/quality/SpeedMatrix.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SpeedMatrix.js","sourceRoot":"","sources":["../../src/quality/SpeedMatrix.ts"],"names":[],"mappings":"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"}
|
|
@@ -249,8 +249,8 @@ class SpeedMatrixContainer {
|
|
|
249
249
|
return max;
|
|
250
250
|
}
|
|
251
251
|
// Get quality indicator.
|
|
252
|
-
// By default returns
|
|
253
|
-
//
|
|
252
|
+
// By default returns normalized 0-1 scale (0=bad, 1=best).
|
|
253
|
+
// Pass normalize: false for raw values (0=best for DELTA, 1=best for NSE/KGE).
|
|
254
254
|
getQuality(matrixName, options = {}) {
|
|
255
255
|
const qualityPoints = this.getQualityPoints(matrixName);
|
|
256
256
|
return SpeedMatrix_1.SpeedMatrix.ComputeQualityIndicator(qualityPoints, options);
|
|
@@ -353,9 +353,31 @@ class SpeedMatrixContainer {
|
|
|
353
353
|
return json;
|
|
354
354
|
}
|
|
355
355
|
merge(speedMatrixContainerToMergeIn) {
|
|
356
|
+
var _a;
|
|
356
357
|
this.trustedIndicators = SpeedMatrixContainer.mergeConcat(this.getTrustedIndicators(), speedMatrixContainerToMergeIn.getTrustedIndicators());
|
|
357
358
|
this.matrices = SpeedMatrixContainer.mergeConcat(this.matrices, speedMatrixContainerToMergeIn.matrices);
|
|
358
359
|
this.flattenMatrices = SpeedMatrixContainer.mergeConcat(this.flattenMatrices, speedMatrixContainerToMergeIn.flattenMatrices);
|
|
360
|
+
// Deduplicate matrices by name: combine qualityPoints from same-name matrices
|
|
361
|
+
if (((_a = this.matrices) === null || _a === void 0 ? void 0 : _a.length) > 1) {
|
|
362
|
+
const byName = new Map();
|
|
363
|
+
for (const m of this.matrices) {
|
|
364
|
+
const existing = byName.get(m.name);
|
|
365
|
+
if (existing) {
|
|
366
|
+
byName.set(m.name, SpeedMatrix_1.SpeedMatrix.CreateFromJson({
|
|
367
|
+
name: existing.name,
|
|
368
|
+
remarks: existing.remarks,
|
|
369
|
+
qualityPoints: [
|
|
370
|
+
...existing.getQualityPoints(),
|
|
371
|
+
...m.getQualityPoints(),
|
|
372
|
+
],
|
|
373
|
+
}));
|
|
374
|
+
}
|
|
375
|
+
else {
|
|
376
|
+
byName.set(m.name, m);
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
this.matrices = [...byName.values()];
|
|
380
|
+
}
|
|
359
381
|
return this;
|
|
360
382
|
}
|
|
361
383
|
logMergedMatrix(options = { normalize: true, logger: null }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpeedMatrixContainer.js","sourceRoot":"","sources":["../../src/quality/SpeedMatrixContainer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SpeedMatrixContainer.js","sourceRoot":"","sources":["../../src/quality/SpeedMatrixContainer.ts"],"names":[],"mappings":"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"}
|