iapws-if97 2.0.0 → 2.0.1
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 +5 -0
- package/README.md +11 -0
- package/dist/core/public-normalization.d.ts +5 -0
- package/dist/core/public-normalization.d.ts.map +1 -0
- package/dist/core/public-normalization.js +31 -0
- package/dist/core/public-normalization.js.map +1 -0
- package/dist/core/solve-input-normalization.d.ts +36 -0
- package/dist/core/solve-input-normalization.d.ts.map +1 -0
- package/dist/core/solve-input-normalization.js +71 -0
- package/dist/core/solve-input-normalization.js.map +1 -0
- package/dist/core/solver.d.ts +2 -1
- package/dist/core/solver.d.ts.map +1 -1
- package/dist/core/solver.js +13 -10
- package/dist/core/solver.js.map +1 -1
- package/dist/index.d.ts +10 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +43 -12
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +26 -48
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## 2.0.1
|
|
6
|
+
|
|
7
|
+
- Added long-form aliases to `solve({ mode, ... })` inputs while keeping shorthand fields fully supported. Canonical output field names in `SteamState` are unchanged.
|
|
8
|
+
- Normalized tiny floating-point residue at the public API boundary.
|
|
9
|
+
|
|
5
10
|
## 2.0.0
|
|
6
11
|
|
|
7
12
|
- Narrowed the root export surface to the main solver API, core types, and error classes.
|
package/README.md
CHANGED
|
@@ -59,6 +59,13 @@ import { solve } from 'iapws-if97';
|
|
|
59
59
|
const state = solve({ mode: 'PT', p: 16, T: 823.15 });
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
+
`solve({ mode, ... })` accepts either engineering shorthand or long-form input names:
|
|
63
|
+
|
|
64
|
+
```ts
|
|
65
|
+
const a = solve({ mode: 'PT', p: 16, T: 823.15 });
|
|
66
|
+
const b = solve({ mode: 'PT', pressure: 16, temperature: 823.15 });
|
|
67
|
+
```
|
|
68
|
+
|
|
62
69
|
Supported `mode`:
|
|
63
70
|
|
|
64
71
|
```ts
|
|
@@ -73,6 +80,8 @@ type SolveInput =
|
|
|
73
80
|
| { mode: 'TS'; T: number; s: number };
|
|
74
81
|
```
|
|
75
82
|
|
|
83
|
+
For each aliased pair, provide either form. If you provide both, their values must match.
|
|
84
|
+
|
|
76
85
|
## Solver Return Value
|
|
77
86
|
|
|
78
87
|
All public solvers return a `SteamState` object with thermodynamic and transport properties already populated.
|
|
@@ -102,6 +111,8 @@ type SteamState = {
|
|
|
102
111
|
};
|
|
103
112
|
```
|
|
104
113
|
|
|
114
|
+
`SteamState` uses canonical output names only. Input aliases such as `p`/`pressure` do not create duplicate output fields.
|
|
115
|
+
|
|
105
116
|
Notes:
|
|
106
117
|
|
|
107
118
|
- `quality` is only defined for saturated states and is `null` elsewhere.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public-normalization.d.ts","sourceRoot":"","sources":["../../src/core/public-normalization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM/D,KAAK,WAAW,GAAG,eAAe,GAAG,UAAU,CAAC;AAsBhD,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAYvE"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// Only snap values that are effectively simple decimals plus machine-noise.
|
|
2
|
+
const SIMPLE_DECIMAL_PLACES = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
|
|
3
|
+
const SNAP_ULPS = 8;
|
|
4
|
+
function snapSimpleDecimal(value) {
|
|
5
|
+
if (!Number.isFinite(value)) {
|
|
6
|
+
return value;
|
|
7
|
+
}
|
|
8
|
+
for (const decimals of SIMPLE_DECIMAL_PLACES) {
|
|
9
|
+
const factor = 10 ** decimals;
|
|
10
|
+
const candidate = Math.round(value * factor) / factor;
|
|
11
|
+
// Scale the acceptance window with magnitude so we only absorb
|
|
12
|
+
// binary floating-point residue, not meaningful engineering deltas.
|
|
13
|
+
const tolerance = SNAP_ULPS * Number.EPSILON * Math.max(1, Math.abs(value), Math.abs(candidate));
|
|
14
|
+
if (Math.abs(value - candidate) <= tolerance) {
|
|
15
|
+
return Object.is(candidate, -0) ? 0 : candidate;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
return Object.is(value, -0) ? 0 : value;
|
|
19
|
+
}
|
|
20
|
+
export function normalizePublicState(state) {
|
|
21
|
+
const normalized = { ...state };
|
|
22
|
+
for (const [key, value] of Object.entries(state)) {
|
|
23
|
+
// Preserve enum/null fields exactly; only normalize exposed numeric outputs.
|
|
24
|
+
if (key === 'region' || value === null || typeof value !== 'number') {
|
|
25
|
+
continue;
|
|
26
|
+
}
|
|
27
|
+
normalized[key] = snapSimpleDecimal(value);
|
|
28
|
+
}
|
|
29
|
+
return normalized;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=public-normalization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public-normalization.js","sourceRoot":"","sources":["../../src/core/public-normalization.ts"],"names":[],"mappings":"AAEA,4EAA4E;AAC5E,MAAM,qBAAqB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAU,CAAC;AACtE,MAAM,SAAS,GAAG,CAAC,CAAC;AAIpB,SAAS,iBAAiB,CAAC,KAAa;IACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,qBAAqB,EAAE,CAAC;QAC7C,MAAM,MAAM,GAAG,EAAE,IAAI,QAAQ,CAAC;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC;QACtD,+DAA+D;QAC/D,oEAAoE;QACpE,MAAM,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QAEjG,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,SAAS,EAAE,CAAC;YAC7C,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClD,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAwB,KAAQ;IAClE,MAAM,UAAU,GAAG,EAAE,GAAG,KAAK,EAA8C,CAAC;IAE5E,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,6EAA6E;QAC7E,IAAI,GAAG,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACpE,SAAS;QACX,CAAC;QACD,UAAU,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,UAA0B,CAAC;AACpC,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { SolveInput } from '../types.js';
|
|
2
|
+
export type CanonicalSolveInput = {
|
|
3
|
+
mode: 'PT';
|
|
4
|
+
p: number;
|
|
5
|
+
T: number;
|
|
6
|
+
} | {
|
|
7
|
+
mode: 'PH';
|
|
8
|
+
p: number;
|
|
9
|
+
h: number;
|
|
10
|
+
} | {
|
|
11
|
+
mode: 'PS';
|
|
12
|
+
p: number;
|
|
13
|
+
s: number;
|
|
14
|
+
} | {
|
|
15
|
+
mode: 'HS';
|
|
16
|
+
h: number;
|
|
17
|
+
s: number;
|
|
18
|
+
} | {
|
|
19
|
+
mode: 'Px';
|
|
20
|
+
p: number;
|
|
21
|
+
x: number;
|
|
22
|
+
} | {
|
|
23
|
+
mode: 'Tx';
|
|
24
|
+
T: number;
|
|
25
|
+
x: number;
|
|
26
|
+
} | {
|
|
27
|
+
mode: 'TH';
|
|
28
|
+
T: number;
|
|
29
|
+
h: number;
|
|
30
|
+
} | {
|
|
31
|
+
mode: 'TS';
|
|
32
|
+
T: number;
|
|
33
|
+
s: number;
|
|
34
|
+
};
|
|
35
|
+
export declare function normalizeSolveInput(input: SolveInput): CanonicalSolveInput;
|
|
36
|
+
//# sourceMappingURL=solve-input-normalization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solve-input-normalization.d.ts","sourceRoot":"","sources":["../../src/core/solve-input-normalization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,MAAM,MAAM,mBAAmB,GAC3B;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA6BzC,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,UAAU,GAAG,mBAAmB,CAuD1E"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { IF97Error } from '../types.js';
|
|
2
|
+
function pickNumericAlias(input, shortKey, longKey, label) {
|
|
3
|
+
const shortValue = input[shortKey];
|
|
4
|
+
const longValue = input[longKey];
|
|
5
|
+
if (shortValue === undefined && longValue === undefined) {
|
|
6
|
+
throw new IF97Error(`solve input requires '${shortKey}' or '${longKey}' for ${label}`);
|
|
7
|
+
}
|
|
8
|
+
if (shortValue !== undefined &&
|
|
9
|
+
longValue !== undefined &&
|
|
10
|
+
!Object.is(shortValue, longValue)) {
|
|
11
|
+
throw new IF97Error(`solve input received conflicting values for '${shortKey}' and '${longKey}'`);
|
|
12
|
+
}
|
|
13
|
+
return (shortValue ?? longValue);
|
|
14
|
+
}
|
|
15
|
+
// Normalize public solve() aliases to the canonical short-key form used internally.
|
|
16
|
+
export function normalizeSolveInput(input) {
|
|
17
|
+
const raw = input;
|
|
18
|
+
switch (input.mode) {
|
|
19
|
+
case 'PT':
|
|
20
|
+
return {
|
|
21
|
+
mode: 'PT',
|
|
22
|
+
p: pickNumericAlias(raw, 'p', 'pressure', 'pressure'),
|
|
23
|
+
T: pickNumericAlias(raw, 'T', 'temperature', 'temperature'),
|
|
24
|
+
};
|
|
25
|
+
case 'PH':
|
|
26
|
+
return {
|
|
27
|
+
mode: 'PH',
|
|
28
|
+
p: pickNumericAlias(raw, 'p', 'pressure', 'pressure'),
|
|
29
|
+
h: pickNumericAlias(raw, 'h', 'enthalpy', 'enthalpy'),
|
|
30
|
+
};
|
|
31
|
+
case 'PS':
|
|
32
|
+
return {
|
|
33
|
+
mode: 'PS',
|
|
34
|
+
p: pickNumericAlias(raw, 'p', 'pressure', 'pressure'),
|
|
35
|
+
s: pickNumericAlias(raw, 's', 'entropy', 'entropy'),
|
|
36
|
+
};
|
|
37
|
+
case 'HS':
|
|
38
|
+
return {
|
|
39
|
+
mode: 'HS',
|
|
40
|
+
h: pickNumericAlias(raw, 'h', 'enthalpy', 'enthalpy'),
|
|
41
|
+
s: pickNumericAlias(raw, 's', 'entropy', 'entropy'),
|
|
42
|
+
};
|
|
43
|
+
case 'Px':
|
|
44
|
+
return {
|
|
45
|
+
mode: 'Px',
|
|
46
|
+
p: pickNumericAlias(raw, 'p', 'pressure', 'pressure'),
|
|
47
|
+
x: pickNumericAlias(raw, 'x', 'quality', 'quality'),
|
|
48
|
+
};
|
|
49
|
+
case 'Tx':
|
|
50
|
+
return {
|
|
51
|
+
mode: 'Tx',
|
|
52
|
+
T: pickNumericAlias(raw, 'T', 'temperature', 'temperature'),
|
|
53
|
+
x: pickNumericAlias(raw, 'x', 'quality', 'quality'),
|
|
54
|
+
};
|
|
55
|
+
case 'TH':
|
|
56
|
+
return {
|
|
57
|
+
mode: 'TH',
|
|
58
|
+
T: pickNumericAlias(raw, 'T', 'temperature', 'temperature'),
|
|
59
|
+
h: pickNumericAlias(raw, 'h', 'enthalpy', 'enthalpy'),
|
|
60
|
+
};
|
|
61
|
+
case 'TS':
|
|
62
|
+
return {
|
|
63
|
+
mode: 'TS',
|
|
64
|
+
T: pickNumericAlias(raw, 'T', 'temperature', 'temperature'),
|
|
65
|
+
s: pickNumericAlias(raw, 's', 'entropy', 'entropy'),
|
|
66
|
+
};
|
|
67
|
+
default:
|
|
68
|
+
throw new IF97Error(`Unsupported solve mode: ${input.mode ?? 'undefined'}`);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=solve-input-normalization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solve-input-normalization.js","sourceRoot":"","sources":["../../src/core/solve-input-normalization.ts"],"names":[],"mappings":"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"}
|
package/dist/core/solver.d.ts
CHANGED
|
@@ -13,7 +13,8 @@ import type { SteamState, SolveInput } from '../types.js';
|
|
|
13
13
|
export declare function solvePT(p: number, T: number): SteamState;
|
|
14
14
|
/**
|
|
15
15
|
* Unified solver: compute full thermodynamic state from any supported input pair.
|
|
16
|
-
* Routes to the correct solver based on input mode, enriches with transport properties
|
|
16
|
+
* Routes to the correct solver based on input mode, enriches with transport properties,
|
|
17
|
+
* and accepts either shorthand or long-form input field names.
|
|
17
18
|
*/
|
|
18
19
|
export declare function solve(input: SolveInput): SteamState;
|
|
19
20
|
//# sourceMappingURL=solver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solver.d.ts","sourceRoot":"","sources":["../../src/core/solver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAmB,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"solver.d.ts","sourceRoot":"","sources":["../../src/core/solver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAmB,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AA4C3E;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,CAqCxD;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAenD"}
|
package/dist/core/solver.js
CHANGED
|
@@ -5,6 +5,7 @@ import { region2 } from '../regions/region2.js';
|
|
|
5
5
|
import { region5 } from '../regions/region5.js';
|
|
6
6
|
import { detectRegionPT } from './region-detector.js';
|
|
7
7
|
import { solveRegion3PTBasic } from './region3-pt.js';
|
|
8
|
+
import { normalizeSolveInput } from './solve-input-normalization.js';
|
|
8
9
|
import { viscosity, thermalConductivity, surfaceTension, dielectricConstant, ionizationConstant } from '../transport/properties.js';
|
|
9
10
|
import { solvePH } from '../backward/ph.js';
|
|
10
11
|
import { solvePS } from '../backward/ps.js';
|
|
@@ -77,18 +78,20 @@ export function solvePT(p, T) {
|
|
|
77
78
|
}
|
|
78
79
|
/**
|
|
79
80
|
* Unified solver: compute full thermodynamic state from any supported input pair.
|
|
80
|
-
* Routes to the correct solver based on input mode, enriches with transport properties
|
|
81
|
+
* Routes to the correct solver based on input mode, enriches with transport properties,
|
|
82
|
+
* and accepts either shorthand or long-form input field names.
|
|
81
83
|
*/
|
|
82
84
|
export function solve(input) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
case '
|
|
86
|
-
case '
|
|
87
|
-
case '
|
|
88
|
-
case '
|
|
89
|
-
case '
|
|
90
|
-
case '
|
|
91
|
-
case '
|
|
85
|
+
const normalized = normalizeSolveInput(input);
|
|
86
|
+
switch (normalized.mode) {
|
|
87
|
+
case 'PT': return solvePT(normalized.p, normalized.T);
|
|
88
|
+
case 'PH': return enrichState(solvePH(normalized.p, normalized.h));
|
|
89
|
+
case 'PS': return enrichState(solvePS(normalized.p, normalized.s));
|
|
90
|
+
case 'HS': return enrichState(solveHS(normalized.h, normalized.s));
|
|
91
|
+
case 'Px': return enrichState(solvePx(normalized.p, normalized.x));
|
|
92
|
+
case 'Tx': return enrichState(solveTx(normalized.T, normalized.x));
|
|
93
|
+
case 'TH': return enrichState(solveTH(normalized.T, normalized.h));
|
|
94
|
+
case 'TS': return enrichState(solveTS(normalized.T, normalized.s));
|
|
92
95
|
default:
|
|
93
96
|
throw new IF97Error(`Unsupported solve mode: ${input.mode ?? 'undefined'}`);
|
|
94
97
|
}
|
package/dist/core/solver.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solver.js","sourceRoot":"","sources":["../../src/core/solver.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"solver.js","sourceRoot":"","sources":["../../src/core/solver.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,13 +3,16 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Public API exports.
|
|
5
5
|
*/
|
|
6
|
-
|
|
7
|
-
export
|
|
8
|
-
export
|
|
9
|
-
export
|
|
10
|
-
export
|
|
11
|
-
export
|
|
12
|
-
export
|
|
6
|
+
import type { BasicProperties, SteamState, SolveInput } from './types.js';
|
|
7
|
+
export declare function solvePT(p: number, T: number): SteamState;
|
|
8
|
+
export declare function solve(input: SolveInput): SteamState;
|
|
9
|
+
export declare function solvePH(p: number, h: number): BasicProperties;
|
|
10
|
+
export declare function solvePS(p: number, s: number): BasicProperties;
|
|
11
|
+
export declare function solveHS(h: number, s: number): BasicProperties;
|
|
12
|
+
export declare function solveTH(T: number, h: number): BasicProperties;
|
|
13
|
+
export declare function solveTS(T: number, s: number): BasicProperties;
|
|
14
|
+
export declare function solvePx(p: number, x: number): BasicProperties;
|
|
15
|
+
export declare function solveTx(T: number, x: number): BasicProperties;
|
|
13
16
|
export type { SteamState, SolveInput } from './types.js';
|
|
14
17
|
export { Region, IF97Error, OutOfRangeError, ConvergenceError } from './types.js';
|
|
15
18
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAqB1E,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,CAExD;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAEnD;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,eAAe,CAE7D;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,eAAe,CAE7D;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,eAAe,CAE7D;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,eAAe,CAE7D;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,eAAe,CAE7D;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,eAAe,CAE7D;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,eAAe,CAE7D;AAGD,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,15 +1,46 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { solve as solveAny, solvePT as solvePTInternal } from './core/solver.js';
|
|
2
|
+
import { normalizePublicState } from './core/public-normalization.js';
|
|
3
|
+
import { solvePH as solvePHInternal } from './backward/ph.js';
|
|
4
|
+
import { solvePS as solvePSInternal } from './backward/ps.js';
|
|
5
|
+
import { solveHS as solveHSInternal } from './backward/hs.js';
|
|
6
|
+
import { solveTH as solveTHInternal } from './backward/th.js';
|
|
7
|
+
import { solveTS as solveTSInternal } from './backward/ts.js';
|
|
8
|
+
import { solvePx as solvePxInternal, solveTx as solveTxInternal } from './saturation/two-phase.js';
|
|
9
|
+
function normalizeBasicState(state) {
|
|
10
|
+
return normalizePublicState(state);
|
|
11
|
+
}
|
|
12
|
+
function normalizeSteamState(state) {
|
|
13
|
+
return normalizePublicState(state);
|
|
14
|
+
}
|
|
6
15
|
// Core solvers
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
export
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
export
|
|
13
|
-
|
|
16
|
+
// Normalize only at the public package boundary so internal solver math
|
|
17
|
+
// keeps full raw precision during iteration and region transitions.
|
|
18
|
+
export function solvePT(p, T) {
|
|
19
|
+
return normalizeSteamState(solvePTInternal(p, T));
|
|
20
|
+
}
|
|
21
|
+
export function solve(input) {
|
|
22
|
+
return normalizeSteamState(solveAny(input));
|
|
23
|
+
}
|
|
24
|
+
export function solvePH(p, h) {
|
|
25
|
+
return normalizeBasicState(solvePHInternal(p, h));
|
|
26
|
+
}
|
|
27
|
+
export function solvePS(p, s) {
|
|
28
|
+
return normalizeBasicState(solvePSInternal(p, s));
|
|
29
|
+
}
|
|
30
|
+
export function solveHS(h, s) {
|
|
31
|
+
return normalizeBasicState(solveHSInternal(h, s));
|
|
32
|
+
}
|
|
33
|
+
export function solveTH(T, h) {
|
|
34
|
+
return normalizeBasicState(solveTHInternal(T, h));
|
|
35
|
+
}
|
|
36
|
+
export function solveTS(T, s) {
|
|
37
|
+
return normalizeBasicState(solveTSInternal(T, s));
|
|
38
|
+
}
|
|
39
|
+
export function solvePx(p, x) {
|
|
40
|
+
return normalizeBasicState(solvePxInternal(p, x));
|
|
41
|
+
}
|
|
42
|
+
export function solveTx(T, x) {
|
|
43
|
+
return normalizeBasicState(solveTxInternal(T, x));
|
|
44
|
+
}
|
|
14
45
|
export { Region, IF97Error, OutOfRangeError, ConvergenceError } from './types.js';
|
|
15
46
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEnG,SAAS,mBAAmB,CAAC,KAAsB;IACjD,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAiB;IAC5C,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAED,eAAe;AACf,wEAAwE;AACxE,oEAAoE;AACpE,MAAM,UAAU,OAAO,CAAC,CAAS,EAAE,CAAS;IAC1C,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,KAAiB;IACrC,OAAO,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAS,EAAE,CAAS;IAC1C,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAS,EAAE,CAAS;IAC1C,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAS,EAAE,CAAS;IAC1C,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAS,EAAE,CAAS;IAC1C,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAS,EAAE,CAAS;IAC1C,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAS,EAAE,CAAS;IAC1C,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAS,EAAE,CAAS;IAC1C,OAAO,mBAAmB,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAID,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -82,70 +82,47 @@ export interface BasicProperties {
|
|
|
82
82
|
}
|
|
83
83
|
/** Supported thermodynamic input combinations */
|
|
84
84
|
export type InputMode = 'PT' | 'PH' | 'PS' | 'HS' | 'Px' | 'Tx' | 'TH' | 'TS';
|
|
85
|
+
type AliasNumberField<Short extends string, Long extends string> = ({
|
|
86
|
+
[K in Short]: number;
|
|
87
|
+
} & {
|
|
88
|
+
[K in Long]?: number;
|
|
89
|
+
}) | ({
|
|
90
|
+
[K in Short]?: number;
|
|
91
|
+
} & {
|
|
92
|
+
[K in Long]: number;
|
|
93
|
+
});
|
|
85
94
|
/** Input for pressure-temperature calculation */
|
|
86
|
-
export
|
|
95
|
+
export type PTInput = {
|
|
87
96
|
mode: 'PT';
|
|
88
|
-
|
|
89
|
-
p: number;
|
|
90
|
-
/** Temperature [K] */
|
|
91
|
-
T: number;
|
|
92
|
-
}
|
|
97
|
+
} & AliasNumberField<'p', 'pressure'> & AliasNumberField<'T', 'temperature'>;
|
|
93
98
|
/** Input for pressure-enthalpy calculation */
|
|
94
|
-
export
|
|
99
|
+
export type PHInput = {
|
|
95
100
|
mode: 'PH';
|
|
96
|
-
|
|
97
|
-
p: number;
|
|
98
|
-
/** Specific enthalpy [kJ/kg] */
|
|
99
|
-
h: number;
|
|
100
|
-
}
|
|
101
|
+
} & AliasNumberField<'p', 'pressure'> & AliasNumberField<'h', 'enthalpy'>;
|
|
101
102
|
/** Input for pressure-entropy calculation */
|
|
102
|
-
export
|
|
103
|
+
export type PSInput = {
|
|
103
104
|
mode: 'PS';
|
|
104
|
-
|
|
105
|
-
p: number;
|
|
106
|
-
/** Specific entropy [kJ/(kg·K)] */
|
|
107
|
-
s: number;
|
|
108
|
-
}
|
|
105
|
+
} & AliasNumberField<'p', 'pressure'> & AliasNumberField<'s', 'entropy'>;
|
|
109
106
|
/** Input for enthalpy-entropy calculation */
|
|
110
|
-
export
|
|
107
|
+
export type HSInput = {
|
|
111
108
|
mode: 'HS';
|
|
112
|
-
|
|
113
|
-
h: number;
|
|
114
|
-
/** Specific entropy [kJ/(kg·K)] */
|
|
115
|
-
s: number;
|
|
116
|
-
}
|
|
109
|
+
} & AliasNumberField<'h', 'enthalpy'> & AliasNumberField<'s', 'entropy'>;
|
|
117
110
|
/** Input for pressure-quality (saturation) calculation */
|
|
118
|
-
export
|
|
111
|
+
export type PxInput = {
|
|
119
112
|
mode: 'Px';
|
|
120
|
-
|
|
121
|
-
p: number;
|
|
122
|
-
/** Vapour quality (0–1) */
|
|
123
|
-
x: number;
|
|
124
|
-
}
|
|
113
|
+
} & AliasNumberField<'p', 'pressure'> & AliasNumberField<'x', 'quality'>;
|
|
125
114
|
/** Input for temperature-quality (saturation) calculation */
|
|
126
|
-
export
|
|
115
|
+
export type TxInput = {
|
|
127
116
|
mode: 'Tx';
|
|
128
|
-
|
|
129
|
-
T: number;
|
|
130
|
-
/** Vapour quality (0–1) */
|
|
131
|
-
x: number;
|
|
132
|
-
}
|
|
117
|
+
} & AliasNumberField<'T', 'temperature'> & AliasNumberField<'x', 'quality'>;
|
|
133
118
|
/** Input for temperature-enthalpy calculation */
|
|
134
|
-
export
|
|
119
|
+
export type THInput = {
|
|
135
120
|
mode: 'TH';
|
|
136
|
-
|
|
137
|
-
T: number;
|
|
138
|
-
/** Specific enthalpy [kJ/kg] */
|
|
139
|
-
h: number;
|
|
140
|
-
}
|
|
121
|
+
} & AliasNumberField<'T', 'temperature'> & AliasNumberField<'h', 'enthalpy'>;
|
|
141
122
|
/** Input for temperature-entropy calculation */
|
|
142
|
-
export
|
|
123
|
+
export type TSInput = {
|
|
143
124
|
mode: 'TS';
|
|
144
|
-
|
|
145
|
-
T: number;
|
|
146
|
-
/** Specific entropy [kJ/(kg·K)] */
|
|
147
|
-
s: number;
|
|
148
|
-
}
|
|
125
|
+
} & AliasNumberField<'T', 'temperature'> & AliasNumberField<'s', 'entropy'>;
|
|
149
126
|
/** Union of all valid inputs */
|
|
150
127
|
export type SolveInput = PTInput | PHInput | PSInput | HSInput | PxInput | TxInput | THInput | TSInput;
|
|
151
128
|
/**
|
|
@@ -174,4 +151,5 @@ export declare class ConvergenceError extends IF97Error {
|
|
|
174
151
|
readonly iterations: number;
|
|
175
152
|
constructor(solver: string, iterations: number);
|
|
176
153
|
}
|
|
154
|
+
export {};
|
|
177
155
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,uCAAuC;AACvC,oBAAY,MAAM;IAChB,0CAA0C;IAC1C,OAAO,IAAI;IACX,wBAAwB;IACxB,OAAO,IAAI;IACX,0BAA0B;IAC1B,OAAO,IAAI;IACX,8CAA8C;IAC9C,OAAO,IAAI;IACX,6CAA6C;IAC7C,OAAO,IAAI;CACZ;AAID;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,sBAAsB;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,cAAc,EAAE,MAAM,CAAC;IACvB,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,0CAA0C;IAC1C,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,2BAA2B;IAC3B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,qDAAqD;IACrD,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAIvB,+BAA+B;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,2DAA2D;IAC3D,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iDAAiD;IACjD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,oFAAoF;IACpF,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAIlC,iDAAiD;IACjD,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,yCAAyC;IACzC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1C;AAID;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1C;AAID,iDAAiD;AACjD,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAE/E,uCAAuC;AACvC,MAAM,CAAN,IAAY,MAWX;AAXD,WAAY,MAAM;IAChB,0CAA0C;IAC1C,yCAAW,CAAA;IACX,wBAAwB;IACxB,yCAAW,CAAA;IACX,0BAA0B;IAC1B,yCAAW,CAAA;IACX,8CAA8C;IAC9C,yCAAW,CAAA;IACX,6CAA6C;IAC7C,yCAAW,CAAA;AACb,CAAC,EAXW,MAAM,KAAN,MAAM,QAWjB;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAE/E,uCAAuC;AACvC,MAAM,CAAN,IAAY,MAWX;AAXD,WAAY,MAAM;IAChB,0CAA0C;IAC1C,yCAAW,CAAA;IACX,wBAAwB;IACxB,yCAAW,CAAA;IACX,0BAA0B;IAC1B,yCAAW,CAAA;IACX,8CAA8C;IAC9C,yCAAW,CAAA;IACX,6CAA6C;IAC7C,yCAAW,CAAA;AACb,CAAC,EAXW,MAAM,KAAN,MAAM,QAWjB;AA6ID,+EAA+E;AAE/E,uDAAuD;AACvD,MAAM,OAAO,SAAU,SAAQ,KAAK;IAClC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;IAC1B,CAAC;CACF;AAED,mEAAmE;AACnE,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAE1B;IACA;IACA;IACA;IAJlB,YACkB,SAAiB,EACjB,KAAa,EACb,GAAW,EACX,GAAW;QAE3B,KAAK,CACH,GAAG,SAAS,MAAM,KAAK,qBAAqB,GAAG,KAAK,GAAG,GAAG,CAC3D,CAAC;QAPc,cAAS,GAAT,SAAS,CAAQ;QACjB,UAAK,GAAL,KAAK,CAAQ;QACb,QAAG,GAAH,GAAG,CAAQ;QACX,QAAG,GAAH,GAAG,CAAQ;QAK3B,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED,uDAAuD;AACvD,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAE3B;IACA;IAFlB,YACkB,MAAc,EACd,UAAkB;QAElC,KAAK,CAAC,GAAG,MAAM,6BAA6B,UAAU,aAAa,CAAC,CAAC;QAHrD,WAAM,GAAN,MAAM,CAAQ;QACd,eAAU,GAAV,UAAU,CAAQ;QAGlC,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iapws-if97",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.1",
|
|
4
4
|
"description": "TypeScript implementation of IAPWS-IF97 for water and steam properties, including forward/backward solvers, saturation states, and transport properties.",
|
|
5
5
|
"author": "jltonghui",
|
|
6
6
|
"repository": {
|