universal-physics-tensor 6.1.0 → 7.0.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.
Files changed (113) hide show
  1. package/README.md +4 -4
  2. package/dist/atlas/physjs-entries.generated.d.ts +112 -1
  3. package/dist/atlas/physjs-entries.generated.d.ts.map +1 -1
  4. package/dist/atlas/physjs-entries.generated.js +125 -1
  5. package/dist/atlas/physjs-entries.generated.js.map +1 -1
  6. package/dist/atlas/physjs-ref.d.ts +7 -1
  7. package/dist/atlas/physjs-ref.d.ts.map +1 -1
  8. package/dist/atlas/physjs-ref.js +19 -1
  9. package/dist/atlas/physjs-ref.js.map +1 -1
  10. package/dist/bridges/condensed-r8-catalog.d.ts +28 -0
  11. package/dist/bridges/condensed-r8-catalog.d.ts.map +1 -0
  12. package/dist/bridges/condensed-r8-catalog.js +272 -0
  13. package/dist/bridges/condensed-r8-catalog.js.map +1 -0
  14. package/dist/bridges/condensed-r8.d.ts +260 -0
  15. package/dist/bridges/condensed-r8.d.ts.map +1 -0
  16. package/dist/bridges/condensed-r8.js +329 -0
  17. package/dist/bridges/condensed-r8.js.map +1 -0
  18. package/dist/bridges/evaluator-inputs.d.ts.map +1 -1
  19. package/dist/bridges/evaluator-inputs.js +19 -7
  20. package/dist/bridges/evaluator-inputs.js.map +1 -1
  21. package/dist/bridges/evaluators.d.ts.map +1 -1
  22. package/dist/bridges/evaluators.js +61 -0
  23. package/dist/bridges/evaluators.js.map +1 -1
  24. package/dist/bridges/index.d.ts +2 -0
  25. package/dist/bridges/index.d.ts.map +1 -1
  26. package/dist/bridges/index.js +6 -0
  27. package/dist/bridges/index.js.map +1 -1
  28. package/dist/canonical/entries/atomic.d.ts.map +1 -1
  29. package/dist/canonical/entries/atomic.js +4 -3
  30. package/dist/canonical/entries/atomic.js.map +1 -1
  31. package/dist/canonical/entries/electromagnetism.d.ts.map +1 -1
  32. package/dist/canonical/entries/electromagnetism.js +6 -2
  33. package/dist/canonical/entries/electromagnetism.js.map +1 -1
  34. package/dist/cli/commands/_discovery-opts.d.ts.map +1 -1
  35. package/dist/cli/commands/_discovery-opts.js +18 -1
  36. package/dist/cli/commands/_discovery-opts.js.map +1 -1
  37. package/dist/cli/commands/eval.d.ts.map +1 -1
  38. package/dist/cli/commands/eval.js +9 -1
  39. package/dist/cli/commands/eval.js.map +1 -1
  40. package/dist/cli/commands/evaluate.d.ts.map +1 -1
  41. package/dist/cli/commands/evaluate.js +25 -13
  42. package/dist/cli/commands/evaluate.js.map +1 -1
  43. package/dist/cli/commands/explain.d.ts.map +1 -1
  44. package/dist/cli/commands/explain.js +14 -3
  45. package/dist/cli/commands/explain.js.map +1 -1
  46. package/dist/cli/commands/map.js +1 -1
  47. package/dist/cli/commands/map.js.map +1 -1
  48. package/dist/cli/commands/regime.d.ts.map +1 -1
  49. package/dist/cli/commands/regime.js +15 -3
  50. package/dist/cli/commands/regime.js.map +1 -1
  51. package/dist/cli/search-index.d.ts +1 -1
  52. package/dist/cli/search-index.js +1 -1
  53. package/dist/cli/search-index.js.map +1 -1
  54. package/dist/cli-api.d.ts +7 -1
  55. package/dist/cli-api.d.ts.map +1 -1
  56. package/dist/cli-api.js +7 -1
  57. package/dist/cli-api.js.map +1 -1
  58. package/dist/composition/aliases.d.ts +10 -29
  59. package/dist/composition/aliases.d.ts.map +1 -1
  60. package/dist/composition/aliases.js +17 -66
  61. package/dist/composition/aliases.js.map +1 -1
  62. package/dist/composition/canonical-compare.d.ts.map +1 -1
  63. package/dist/composition/canonical-compare.js +4 -3
  64. package/dist/composition/canonical-compare.js.map +1 -1
  65. package/dist/composition/canonical-graph.d.ts +7 -4
  66. package/dist/composition/canonical-graph.d.ts.map +1 -1
  67. package/dist/composition/canonical-graph.js +17 -14
  68. package/dist/composition/canonical-graph.js.map +1 -1
  69. package/dist/composition/catalog-graph.d.ts.map +1 -1
  70. package/dist/composition/catalog-graph.js +2 -0
  71. package/dist/composition/catalog-graph.js.map +1 -1
  72. package/dist/composition/edges/condensed-r8.d.ts +30 -0
  73. package/dist/composition/edges/condensed-r8.d.ts.map +1 -0
  74. package/dist/composition/edges/condensed-r8.js +325 -0
  75. package/dist/composition/edges/condensed-r8.js.map +1 -0
  76. package/dist/composition/evaluate-relation.d.ts +16 -0
  77. package/dist/composition/evaluate-relation.d.ts.map +1 -1
  78. package/dist/composition/evaluate-relation.js +80 -18
  79. package/dist/composition/evaluate-relation.js.map +1 -1
  80. package/dist/composition/index.d.ts +5 -1
  81. package/dist/composition/index.d.ts.map +1 -1
  82. package/dist/composition/index.js +5 -1
  83. package/dist/composition/index.js.map +1 -1
  84. package/dist/composition/quantities/condensed-r8.d.ts +96 -0
  85. package/dist/composition/quantities/condensed-r8.d.ts.map +1 -0
  86. package/dist/composition/quantities/condensed-r8.js +107 -0
  87. package/dist/composition/quantities/condensed-r8.js.map +1 -0
  88. package/dist/composition/quantities.d.ts +1 -0
  89. package/dist/composition/quantities.d.ts.map +1 -1
  90. package/dist/composition/quantities.js +1 -0
  91. package/dist/composition/quantities.js.map +1 -1
  92. package/dist/composition/user-equation.d.ts +0 -10
  93. package/dist/composition/user-equation.d.ts.map +1 -1
  94. package/dist/composition/user-equation.js +5 -27
  95. package/dist/composition/user-equation.js.map +1 -1
  96. package/dist/dimensional/bridge-check.d.ts.map +1 -1
  97. package/dist/dimensional/bridge-check.js +13 -0
  98. package/dist/dimensional/bridge-check.js.map +1 -1
  99. package/dist/dimensional/formula-names.d.ts +49 -0
  100. package/dist/dimensional/formula-names.d.ts.map +1 -1
  101. package/dist/dimensional/formula-names.js +117 -0
  102. package/dist/dimensional/formula-names.js.map +1 -1
  103. package/dist/dimensional/units.d.ts.map +1 -1
  104. package/dist/dimensional/units.js +90 -34
  105. package/dist/dimensional/units.js.map +1 -1
  106. package/dist/index.d.ts +7 -1
  107. package/dist/index.d.ts.map +1 -1
  108. package/dist/index.js +7 -1
  109. package/dist/index.js.map +1 -1
  110. package/dist/numerical/binding-value.d.ts.map +1 -1
  111. package/dist/numerical/binding-value.js +6 -6
  112. package/dist/numerical/binding-value.js.map +1 -1
  113. package/package.json +1 -1
@@ -0,0 +1,325 @@
1
+ import { DIMENSIONLESS } from '../../dimensional/types.js';
2
+ import { CONSTANTS } from '../../dimensional/symbolic-constants.js';
3
+ import { evaluateAcDrude, evaluateBlochLaw, evaluateBuiltinVoltage, evaluateDensityOfStates2D, evaluateDensityOfStates3D, evaluateGorterCasimir, evaluateJosephsonInductance, evaluateLowerCritical, evaluateMatthiessen, evaluateOnsagerFrequency, evaluateSemiconductorFermi, evaluateStoner, evaluateThomasFermi, } from '../../bridges/condensed-r8.js';
4
+ import { withBoundAliases } from '../edge.js';
5
+ import { acdrudeBandmassQ, acdrudeConductQ, acdrudeN3Q, acdrudeRadianQ, acdrudeScatterQ, blochlawDeficitQ, blochlawDstiffQ, blochlawMubQ, blochlawWarmthQ, blochlawZetaQ, builtinAcceptorQ, builtinDonorQ, builtinNiQ, builtinVbiQ, builtinWarmthQ, dos2dBandmassQ, dos2dStatesQ, dos3dAbscissaQ, dos3dBandmassQ, dos3dStatesQ, fermioffsetElecmassQ, fermioffsetHolemassQ, fermioffsetMuoffQ, fermioffsetWarmthQ, gortercasNsQ, gortercasTcQ, gortercasWarmthQ, josephsonlHenryQ, josephsonlIcQ, lowercritBc1Q, lowercritPenQ, lowercritXiQ, matthsumScatter1Q, matthsumScatter2Q, matthsumScatterQ, onsagerkKareaQ, onsagerkOrbitQ, stonerchiEnhancedQ, stonerchiIgQ, stonerchiPauliQ, tfscreenChemicalQ, tfscreenK2Q, tfscreenN3Q, } from '../quantities.js';
6
+ const finite = Number.isFinite;
7
+ const qsym = (quantity) => ({ kind: 'symbol', name: quantity.name, dim: quantity.dim });
8
+ const csym = (name) => ({ kind: 'symbol', name, dim: CONSTANTS[name].dim });
9
+ const lit = (n) => ({ kind: 'symbol', name: String(n), dim: DIMENSIONLESS });
10
+ const prod = (...args) => ({ kind: 'op', op: '*', args });
11
+ const plus = (...args) => ({ kind: 'op', op: '+', args });
12
+ const minus = (a, b) => ({ kind: 'op', op: '-', args: [a, b] });
13
+ const ratio = (num, den) => ({ kind: 'op', op: '/', args: [num, den] });
14
+ const pow = (base, exp) => ({ kind: 'op', op: '^', args: [base, exp] });
15
+ const lnOf = (arg) => ({ kind: 'transcendental', fn: 'ln', arg });
16
+ const pi = { kind: 'symbol', name: 'pi', dim: DIMENSIONLESS };
17
+ const domain = (description, predicate) => ({
18
+ description,
19
+ predicate,
20
+ });
21
+ /** BE-134 Bloch deficit. g = 2 is not this edge. @public */
22
+ export const be134Edge = withBoundAliases({
23
+ id: 'be-134',
24
+ beId: 134,
25
+ kind: 'law',
26
+ label: 'Bloch deficit ΔM = μ_B ζ(3/2) (k_B T/(4 π D))^{3/2}',
27
+ sources: [blochlawMubQ, blochlawZetaQ, blochlawWarmthQ, blochlawDstiffQ],
28
+ aliases: {
29
+ 'blochlaw-mub': ['muB_J_per_T'],
30
+ 'blochlaw-zeta': ['zeta_3_2'],
31
+ 'blochlaw-warmth': ['T_K'],
32
+ 'blochlaw-dstiff': ['D_J_m2'],
33
+ },
34
+ target: blochlawDeficitQ,
35
+ confidence: 'established',
36
+ domain: domain('D > 0 and T ≥ 0', (i) => finite(i['blochlaw-dstiff']) && i['blochlaw-dstiff'] > 0 && finite(i['blochlaw-warmth']) && i['blochlaw-warmth'] >= 0),
37
+ evaluate: (i) => evaluateBlochLaw({
38
+ muB_J_per_T: i['blochlaw-mub'],
39
+ zeta_3_2: i['blochlaw-zeta'],
40
+ T_K: i['blochlaw-warmth'],
41
+ D_J_m2: i['blochlaw-dstiff'],
42
+ }).dM_A_per_m,
43
+ symbolic: prod(qsym(blochlawMubQ), qsym(blochlawZetaQ), pow(ratio(prod(csym('k_B'), qsym(blochlawWarmthQ)), prod(csym('4pi'), qsym(blochlawDstiffQ))), lit(1.5))),
44
+ citation: 'PhysJS.BlochLaw.bloch_law. ζ(3/2) is not evaluated. g μ_B at g = 2 is not one Bohr magneton.',
45
+ });
46
+ /** BE-135 three-dimensional density of states. One spin is half. @public */
47
+ export const be135Edge = withBoundAliases({
48
+ id: 'be-135',
49
+ beId: 135,
50
+ kind: 'law',
51
+ label: 'g(E) = (1/(2 π²)) (2 m/ℏ²)^{3/2} √E',
52
+ sources: [dos3dBandmassQ, dos3dAbscissaQ],
53
+ aliases: {
54
+ 'dos3d-bandmass': ['m_kg'],
55
+ 'dos3d-abscissa': ['E_J'],
56
+ },
57
+ target: dos3dStatesQ,
58
+ confidence: 'established',
59
+ domain: domain('m > 0 and E ≥ 0', (i) => finite(i['dos3d-bandmass']) && i['dos3d-bandmass'] > 0 && finite(i['dos3d-abscissa']) && i['dos3d-abscissa'] >= 0),
60
+ evaluate: (i) => evaluateDensityOfStates3D({ m_kg: i['dos3d-bandmass'], E_J: i['dos3d-abscissa'] }).g_per_J_m3,
61
+ symbolic: prod(ratio(lit(1), prod(lit(2), pow(pi, lit(2)))), pow(ratio(prod(lit(2), qsym(dos3dBandmassQ)), pow(csym('hbar'), lit(2))), lit(1.5)), pow(qsym(dos3dAbscissaQ), lit(0.5))),
62
+ citation: 'PhysJS.DensityOfStates3D.dos_3d. One spin replaces 1/(2 π²) by 1/(4 π²). Not be-88.',
63
+ });
64
+ /** BE-136 two-dimensional density of states. A valley factor is not 1. @public */
65
+ export const be136Edge = withBoundAliases({
66
+ id: 'be-136',
67
+ beId: 136,
68
+ kind: 'law',
69
+ label: 'g = m / (π ℏ²)',
70
+ sources: [dos2dBandmassQ],
71
+ aliases: { 'dos2d-bandmass': ['m_kg'] },
72
+ target: dos2dStatesQ,
73
+ confidence: 'established',
74
+ domain: domain('m ≠ 0', (i) => finite(i['dos2d-bandmass']) && i['dos2d-bandmass'] !== 0),
75
+ evaluate: (i) => evaluateDensityOfStates2D({ m_kg: i['dos2d-bandmass'] }).g_per_J_m2,
76
+ symbolic: ratio(qsym(dos2dBandmassQ), prod(pi, pow(csym('hbar'), lit(2)))),
77
+ citation: 'PhysJS.DensityOfStates2D.dos_2d. A valley factor other than 1 is not this density.',
78
+ });
79
+ /** BE-137 Thomas–Fermi wavevector squared. A flat density drops 3/2. @public */
80
+ export const be137Edge = withBoundAliases({
81
+ id: 'be-137',
82
+ beId: 137,
83
+ kind: 'law',
84
+ label: 'k_TF² = (e²/ε0) (3 n)/(2 E_F)',
85
+ sources: [tfscreenN3Q, tfscreenChemicalQ],
86
+ aliases: {
87
+ 'tfscreen-n3': ['n_per_m3'],
88
+ 'tfscreen-chemical': ['EF_J'],
89
+ },
90
+ target: tfscreenK2Q,
91
+ confidence: 'established',
92
+ domain: domain('E_F > 0', (i) => finite(i['tfscreen-n3']) && finite(i['tfscreen-chemical']) && i['tfscreen-chemical'] > 0),
93
+ evaluate: (i) => evaluateThomasFermi({ n_per_m3: i['tfscreen-n3'], EF_J: i['tfscreen-chemical'] }).k2_per_m2,
94
+ symbolic: prod(ratio(pow(csym('e'), lit(2)), csym('epsilon_0')), ratio(prod(lit(3), qsym(tfscreenN3Q)), prod(lit(2), qsym(tfscreenChemicalQ)))),
95
+ citation: 'PhysJS.ThomasFermi.thomas_fermi. A flat density leaves the factor 1. Not the Debye length.',
96
+ });
97
+ /** BE-138 built-in voltage. The logarithm is the catalog value. @public */
98
+ export const be138Edge = withBoundAliases({
99
+ id: 'be-138',
100
+ beId: 138,
101
+ kind: 'law',
102
+ label: 'V_bi = (k_B T/e) ln(N_A N_D/n_i²)',
103
+ sources: [builtinWarmthQ, builtinAcceptorQ, builtinDonorQ, builtinNiQ],
104
+ aliases: {
105
+ 'builtin-warmth': ['T_K'],
106
+ 'builtin-acceptor': ['NA_per_m3'],
107
+ 'builtin-donor': ['ND_per_m3'],
108
+ 'builtin-ni': ['ni_per_m3'],
109
+ },
110
+ target: builtinVbiQ,
111
+ confidence: 'established',
112
+ domain: domain('N_A > 0, N_D > 0, and n_i > 0', (i) => finite(i['builtin-warmth']) &&
113
+ finite(i['builtin-acceptor']) &&
114
+ i['builtin-acceptor'] > 0 &&
115
+ finite(i['builtin-donor']) &&
116
+ i['builtin-donor'] > 0 &&
117
+ finite(i['builtin-ni']) &&
118
+ i['builtin-ni'] > 0),
119
+ evaluate: (i) => evaluateBuiltinVoltage({
120
+ T_K: i['builtin-warmth'],
121
+ NA_per_m3: i['builtin-acceptor'],
122
+ ND_per_m3: i['builtin-donor'],
123
+ ni_per_m3: i['builtin-ni'],
124
+ }).V_bi_V,
125
+ symbolic: prod(ratio(prod(csym('k_B'), qsym(builtinWarmthQ)), csym('e')), lnOf(ratio(prod(qsym(builtinAcceptorQ), qsym(builtinDonorQ)), pow(qsym(builtinNiQ), lit(2))))),
126
+ citation: 'PhysJS.BuiltinVoltage.builtin_voltage. Not the ideal diode of be-82.',
127
+ });
128
+ /** BE-139 intrinsic Fermi offset. The extrinsic energy is not this edge. @public */
129
+ export const be139Edge = withBoundAliases({
130
+ id: 'be-139',
131
+ beId: 139,
132
+ kind: 'law',
133
+ label: 'E_F − (E_c+E_v)/2 = (3/4) k_B T ln(m_h*/m_e*)',
134
+ sources: [fermioffsetWarmthQ, fermioffsetHolemassQ, fermioffsetElecmassQ],
135
+ aliases: {
136
+ 'fermioffset-warmth': ['T_K'],
137
+ 'fermioffset-holemass': ['mh_kg'],
138
+ 'fermioffset-elecmass': ['me_kg'],
139
+ },
140
+ target: fermioffsetMuoffQ,
141
+ confidence: 'established',
142
+ domain: domain('T ≠ 0, m_h* > 0, and m_e* > 0', (i) => finite(i['fermioffset-warmth']) &&
143
+ i['fermioffset-warmth'] !== 0 &&
144
+ finite(i['fermioffset-holemass']) &&
145
+ i['fermioffset-holemass'] > 0 &&
146
+ finite(i['fermioffset-elecmass']) &&
147
+ i['fermioffset-elecmass'] > 0),
148
+ evaluate: (i) => evaluateSemiconductorFermi({
149
+ T_K: i['fermioffset-warmth'],
150
+ mh_kg: i['fermioffset-holemass'],
151
+ me_kg: i['fermioffset-elecmass'],
152
+ Nc_per_m3: 1,
153
+ ND_per_m3: 1,
154
+ }).intrinsic_offset_J,
155
+ symbolic: prod(ratio(lit(3), lit(4)), csym('k_B'), qsym(fermioffsetWarmthQ), lnOf(ratio(qsym(fermioffsetHolemassQ), qsym(fermioffsetElecmassQ)))),
156
+ citation: 'PhysJS.SemiconductorFermi.fermi_level. The 3/4 is half of 3/2. The edge value is the intrinsic offset.',
157
+ });
158
+ /** BE-140 Onsager frequency. Dropping 2 π is not this field. @public */
159
+ export const be140Edge = withBoundAliases({
160
+ id: 'be-140',
161
+ beId: 140,
162
+ kind: 'law',
163
+ label: 'F = ℏ A / (2 π e)',
164
+ sources: [onsagerkKareaQ],
165
+ aliases: { 'onsagerk-karea': ['A_per_m2'] },
166
+ target: onsagerkOrbitQ,
167
+ confidence: 'established',
168
+ domain: domain('A is finite', (i) => finite(i['onsagerk-karea'])),
169
+ evaluate: (i) => evaluateOnsagerFrequency({ A_per_m2: i['onsagerk-karea'] }).F_T,
170
+ symbolic: ratio(prod(csym('hbar'), qsym(onsagerkKareaQ)), prod(csym('2pi'), csym('e'))),
171
+ citation: 'PhysJS.OnsagerFrequency.onsager_frequency. γ cancels. Δ(1/B) = 1/F.',
172
+ });
173
+ /** BE-141 Josephson inductance at φ = 0. @public */
174
+ export const be141Edge = withBoundAliases({
175
+ id: 'be-141',
176
+ beId: 141,
177
+ kind: 'law',
178
+ label: 'L_J = ℏ / (2 e I_c)',
179
+ sources: [josephsonlIcQ],
180
+ aliases: { 'josephsonl-ic': ['Ic_A'] },
181
+ target: josephsonlHenryQ,
182
+ confidence: 'established',
183
+ domain: domain('I_c ≠ 0', (i) => finite(i['josephsonl-ic']) && i['josephsonl-ic'] !== 0),
184
+ evaluate: (i) => evaluateJosephsonInductance({ Ic_A: i['josephsonl-ic'] }).L_H,
185
+ symbolic: ratio(csym('hbar'), prod(lit(2), csym('e'), qsym(josephsonlIcQ))),
186
+ citation: 'PhysJS.JosephsonInductance.inductance_eq. cos φ = 1 at φ = 0. Not be-59.',
187
+ });
188
+ /** BE-142 lower critical field. The 4 π stays. @public */
189
+ export const be142Edge = withBoundAliases({
190
+ id: 'be-142',
191
+ beId: 142,
192
+ kind: 'law',
193
+ label: 'B_c1 = (Φ₀/(4 π λ²)) ln(λ/ξ), Φ₀ = h/(2 e)',
194
+ sources: [lowercritPenQ, lowercritXiQ],
195
+ aliases: {
196
+ 'lowercrit-pen': ['lambda_m'],
197
+ 'lowercrit-xi': ['xi_m'],
198
+ },
199
+ target: lowercritBc1Q,
200
+ confidence: 'established',
201
+ domain: domain('0 < ξ < λ', (i) => finite(i['lowercrit-xi']) &&
202
+ i['lowercrit-xi'] > 0 &&
203
+ finite(i['lowercrit-pen']) &&
204
+ i['lowercrit-pen'] > i['lowercrit-xi']),
205
+ evaluate: (i) => evaluateLowerCritical({ lambda_m: i['lowercrit-pen'], xi_m: i['lowercrit-xi'] }).B_c1_T,
206
+ symbolic: prod(ratio(ratio(csym('h'), prod(lit(2), csym('e'))), prod(csym('4pi'), pow(qsym(lowercritPenQ), lit(2)))), lnOf(ratio(qsym(lowercritPenQ), qsym(lowercritXiQ)))),
207
+ citation: 'PhysJS.LowerCritical.lower_critical. Not be-96.',
208
+ });
209
+ /** BE-143 real AC Drude conductivity. The DC 1 stays. @public */
210
+ export const be143Edge = withBoundAliases({
211
+ id: 'be-143',
212
+ beId: 143,
213
+ kind: 'law',
214
+ label: 'Re σ = (n e² τ/m) / (1 + ω² τ²)',
215
+ sources: [acdrudeN3Q, acdrudeBandmassQ, acdrudeScatterQ, acdrudeRadianQ],
216
+ aliases: {
217
+ 'acdrude-n3': ['n_per_m3'],
218
+ 'acdrude-bandmass': ['m_kg'],
219
+ 'acdrude-scatter': ['tau_s'],
220
+ 'acdrude-radian': ['omega_rad_s'],
221
+ },
222
+ target: acdrudeConductQ,
223
+ confidence: 'established',
224
+ domain: domain('τ > 0 and m ≠ 0', (i) => finite(i['acdrude-n3']) &&
225
+ finite(i['acdrude-bandmass']) &&
226
+ i['acdrude-bandmass'] !== 0 &&
227
+ finite(i['acdrude-scatter']) &&
228
+ i['acdrude-scatter'] > 0 &&
229
+ finite(i['acdrude-radian'])),
230
+ evaluate: (i) => evaluateAcDrude({
231
+ n_per_m3: i['acdrude-n3'],
232
+ m_kg: i['acdrude-bandmass'],
233
+ tau_s: i['acdrude-scatter'],
234
+ omega_rad_s: i['acdrude-radian'],
235
+ }).sigma_S_per_m,
236
+ symbolic: ratio(prod(qsym(acdrudeN3Q), pow(csym('e'), lit(2)), qsym(acdrudeScatterQ)), prod(qsym(acdrudeBandmassQ), plus(lit(1), prod(pow(qsym(acdrudeRadianQ), lit(2)), pow(qsym(acdrudeScatterQ), lit(2)))))),
237
+ citation: 'PhysJS.AcDrude.ac_drude. Dropping the DC 1 is not this conductivity. Not be-123.',
238
+ });
239
+ /** BE-144 Matthiessen lifetime. One lifetime is not the parallel sum. @public */
240
+ export const be144Edge = withBoundAliases({
241
+ id: 'be-144',
242
+ beId: 144,
243
+ kind: 'law',
244
+ label: 'τ = 1 / (1/τ₁ + 1/τ₂)',
245
+ sources: [matthsumScatter1Q, matthsumScatter2Q],
246
+ aliases: {
247
+ 'matthsum-scatter1': ['tau1_s'],
248
+ 'matthsum-scatter2': ['tau2_s'],
249
+ },
250
+ target: matthsumScatterQ,
251
+ confidence: 'established',
252
+ domain: domain('τ₁ ≠ 0, τ₂ ≠ 0, and 1/τ₁ + 1/τ₂ ≠ 0', (i) => finite(i['matthsum-scatter1']) &&
253
+ i['matthsum-scatter1'] !== 0 &&
254
+ finite(i['matthsum-scatter2']) &&
255
+ i['matthsum-scatter2'] !== 0 &&
256
+ 1 / i['matthsum-scatter1'] + 1 / i['matthsum-scatter2'] !== 0),
257
+ evaluate: (i) => evaluateMatthiessen({
258
+ tau1_s: i['matthsum-scatter1'],
259
+ tau2_s: i['matthsum-scatter2'],
260
+ C_ohm_m_s: 1,
261
+ }).tau_s,
262
+ symbolic: ratio(lit(1), plus(ratio(lit(1), qsym(matthsumScatter1Q)), ratio(lit(1), qsym(matthsumScatter2Q)))),
263
+ citation: 'PhysJS.Matthiessen.matthiessen. The edge value is τ. ρ = ρ₁ + ρ₂ is the same rate sum.',
264
+ });
265
+ /** BE-145 Stoner susceptibility. Two bubbles are not the closed form. @public */
266
+ export const be145Edge = withBoundAliases({
267
+ id: 'be-145',
268
+ beId: 145,
269
+ kind: 'law',
270
+ label: 'χ = χ_P / (1 − I g(E_F))',
271
+ sources: [stonerchiPauliQ, stonerchiIgQ],
272
+ aliases: {
273
+ 'stonerchi-pauli': ['chi_P'],
274
+ 'stonerchi-ig': ['x'],
275
+ },
276
+ target: stonerchiEnhancedQ,
277
+ confidence: 'established',
278
+ domain: domain('|x| < 1', (i) => finite(i['stonerchi-pauli']) && finite(i['stonerchi-ig']) && Math.abs(i['stonerchi-ig']) < 1),
279
+ evaluate: (i) => evaluateStoner({ chi_P: i['stonerchi-pauli'], x: i['stonerchi-ig'] }).chi,
280
+ symbolic: ratio(qsym(stonerchiPauliQ), minus(lit(1), qsym(stonerchiIgQ))),
281
+ citation: 'PhysJS.Stoner.stoner. χ_P is be-94 and is not re-proved. The pole is the same formula.',
282
+ });
283
+ /** BE-146 Gorter–Casimir fraction. The edge value is n_s/n. @public */
284
+ export const be146Edge = withBoundAliases({
285
+ id: 'be-146',
286
+ beId: 146,
287
+ kind: 'law',
288
+ label: 'n_s/n = 1 − (T/T_c)^4',
289
+ sources: [gortercasWarmthQ, gortercasTcQ],
290
+ aliases: {
291
+ 'gortercas-warmth': ['T_K'],
292
+ 'gortercas-tc': ['Tc_K'],
293
+ },
294
+ target: gortercasNsQ,
295
+ confidence: 'established',
296
+ domain: domain('T_c > 0 and 0 ≤ T < T_c', (i) => finite(i['gortercas-tc']) &&
297
+ i['gortercas-tc'] > 0 &&
298
+ finite(i['gortercas-warmth']) &&
299
+ i['gortercas-warmth'] >= 0 &&
300
+ i['gortercas-warmth'] < i['gortercas-tc']),
301
+ evaluate: (i) => evaluateGorterCasimir({
302
+ T_K: i['gortercas-warmth'],
303
+ Tc_K: i['gortercas-tc'],
304
+ lambda0_m: 1,
305
+ }).ns_over_n,
306
+ symbolic: minus(lit(1), pow(ratio(qsym(gortercasWarmthQ), qsym(gortercasTcQ)), lit(4))),
307
+ citation: 'PhysJS.GorterCasimir.gorter_casimir. The exponent 4 is a hypothesis. λ(T) is on the result and is not this edge. Not be-75.',
308
+ });
309
+ /** Condensed-matter edges, in catalog-id order. @public */
310
+ export const CONDENSED_R8_EDGES = [
311
+ be134Edge,
312
+ be135Edge,
313
+ be136Edge,
314
+ be137Edge,
315
+ be138Edge,
316
+ be139Edge,
317
+ be140Edge,
318
+ be141Edge,
319
+ be142Edge,
320
+ be143Edge,
321
+ be144Edge,
322
+ be145Edge,
323
+ be146Edge,
324
+ ];
325
+ //# sourceMappingURL=condensed-r8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"condensed-r8.js","sourceRoot":"","sources":["../../../src/composition/edges/condensed-r8.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,8 @@
8
8
  * @module composition/evaluate-relation
9
9
  */
10
10
  import type { Dimension } from '../dimensional/types.js';
11
+ import { type EvaluatorSpec } from '../bridges/evaluators.js';
12
+ import { type BridgeEdge } from './edge.js';
11
13
  /**
12
14
  * A sourced number, or an unset coefficient.
13
15
  *
@@ -23,6 +25,20 @@ export type Evaluation = {
23
25
  readonly kind: 'unset';
24
26
  readonly formula: string;
25
27
  };
28
+ /**
29
+ * An id the library can evaluate: a graph edge, a closed-form evaluator, or both.
30
+ * The CLI and {@link evaluateRelation} both call this. Neither looks the id up again.
31
+ */
32
+ export interface Evaluable {
33
+ readonly id: string;
34
+ readonly edge?: BridgeEdge;
35
+ readonly evaluator?: EvaluatorSpec;
36
+ }
37
+ /**
38
+ * The edge and the closed-form evaluator for `id`, when either exists.
39
+ * An unknown id throws. An id with an evaluator and no edge is not unknown.
40
+ */
41
+ export declare function resolveEvaluable(id: string | number): Evaluable;
26
42
  /**
27
43
  * Evaluate `id` at `bindings`.
28
44
  *
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate-relation.d.ts","sourceRoot":"","sources":["../../src/composition/evaluate-relation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAKzD;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;CAAE,GACjF;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAUzD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,MAAM,GAAG,MAAM,EACnB,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GACzC,UAAU,CAcZ"}
1
+ {"version":3,"file":"evaluate-relation.d.ts","sourceRoot":"","sources":["../../src/composition/evaluate-relation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAqB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGjF,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AAEjF;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;CAAE,GACjF;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC;CACpC;AAQD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAY/D;AAgDD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,MAAM,GAAG,MAAM,EACnB,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GACzC,UAAU,CAiBZ"}
@@ -7,16 +7,75 @@
7
7
  *
8
8
  * @module composition/evaluate-relation
9
9
  */
10
+ import { equals } from '../dimensional/algebra.js';
11
+ import { EXPECTED_DIMENSION_BY_BRIDGE } from '../dimensional/bridge-check.js';
12
+ import { parseUnit } from '../dimensional/units.js';
13
+ import { BRIDGE_EVALUATORS } from '../bridges/evaluators.js';
10
14
  import { CANONICAL_GRAPH } from './canonical-graph.js';
11
15
  import { CATALOG_GRAPH } from './catalog-graph.js';
12
16
  import { CoefficientUnsetError, evaluateEdge } from './edge.js';
13
- function resolveEdge(id) {
14
- const key = typeof id === 'number' ? `be-${id}` : id;
15
- const edges = [...CATALOG_GRAPH, ...CANONICAL_GRAPH];
16
- const exact = edges.find((edge) => edge.id === key);
17
- if (exact !== undefined)
18
- return exact;
19
- throw new Error(`evaluateRelation: unknown id '${key}'`);
17
+ function idOf(id) {
18
+ if (typeof id === 'number')
19
+ return { key: `be-${id}`, numeric: id };
20
+ const match = /^be-(\d+)$/.exec(id);
21
+ return { key: id, numeric: match === null ? undefined : Number(match[1]) };
22
+ }
23
+ /**
24
+ * The edge and the closed-form evaluator for `id`, when either exists.
25
+ * An unknown id throws. An id with an evaluator and no edge is not unknown.
26
+ */
27
+ export function resolveEvaluable(id) {
28
+ const { key, numeric } = idOf(id);
29
+ const edge = [...CATALOG_GRAPH, ...CANONICAL_GRAPH].find((candidate) => candidate.id === key);
30
+ const evaluator = numeric === undefined ? undefined : BRIDGE_EVALUATORS.get(numeric);
31
+ if (edge === undefined && evaluator === undefined) {
32
+ throw new Error(`evaluateRelation: unknown id '${key}'`);
33
+ }
34
+ return {
35
+ id: key,
36
+ ...(edge === undefined ? {} : { edge }),
37
+ ...(evaluator === undefined ? {} : { evaluator }),
38
+ };
39
+ }
40
+ /** Unit dimensions a result key's suffix can be read as. `mK` stays millikelvin. */
41
+ function suffixDimensions(key) {
42
+ const parts = key.split('_');
43
+ const dims = [];
44
+ for (let i = 1; i < parts.length; i++) {
45
+ const expr = parts.slice(i).join('_').replace(/_per_/g, '/').replaceAll('_', '*');
46
+ try {
47
+ const parsed = parseUnit(expr);
48
+ if (parsed.affine === undefined)
49
+ dims.push(parsed.dim);
50
+ }
51
+ catch {
52
+ // This suffix is not a unit expression.
53
+ }
54
+ }
55
+ return dims;
56
+ }
57
+ /**
58
+ * The result field whose dimension is the catalog signature.
59
+ * Input keys are echoed and are not candidates. A single remaining number
60
+ * is that output when no suffix parses to the signature.
61
+ */
62
+ function closedFormEvaluation(spec, bindings) {
63
+ const raw = spec.run({ ...bindings });
64
+ if (raw === null || typeof raw !== 'object') {
65
+ throw new Error(`evaluateRelation: be-${spec.bridgeId} did not return a result`);
66
+ }
67
+ const expected = EXPECTED_DIMENSION_BY_BRIDGE.get(spec.bridgeId);
68
+ if (expected === undefined) {
69
+ throw new Error(`evaluateRelation: be-${spec.bridgeId} has no catalog dimension`);
70
+ }
71
+ const inputs = new Set(spec.inputKeys);
72
+ const numeric = Object.entries(raw).filter((entry) => typeof entry[1] === 'number' && Number.isFinite(entry[1]) && !inputs.has(entry[0]));
73
+ const matched = numeric.filter(([key]) => suffixDimensions(key).some((dim) => equals(dim, expected)));
74
+ const chosen = matched.length === 1 ? matched[0] : matched.length === 0 && numeric.length === 1 ? numeric[0] : undefined;
75
+ if (chosen === undefined) {
76
+ throw new Error(`evaluateRelation: be-${spec.bridgeId} has no unique output of the catalog dimension`);
77
+ }
78
+ return { kind: 'value', value: chosen[1], dimension: expected };
20
79
  }
21
80
  /**
22
81
  * Evaluate `id` at `bindings`.
@@ -29,19 +88,22 @@ function resolveEdge(id) {
29
88
  * @public
30
89
  */
31
90
  export function evaluateRelation(id, bindings) {
32
- const edge = resolveEdge(id);
33
- try {
34
- const value = evaluateEdge(edge, { ...bindings });
35
- if (!Number.isFinite(value)) {
36
- throw new Error(`evaluateRelation: ${edge.id} is missing a finite input`);
91
+ const found = resolveEvaluable(id);
92
+ if (found.edge !== undefined) {
93
+ try {
94
+ const value = evaluateEdge(found.edge, { ...bindings });
95
+ if (!Number.isFinite(value)) {
96
+ throw new Error(`evaluateRelation: ${found.edge.id} is missing a finite input`);
97
+ }
98
+ return { kind: 'value', value, dimension: found.edge.target.dim };
37
99
  }
38
- return { kind: 'value', value, dimension: edge.target.dim };
39
- }
40
- catch (error) {
41
- if (error instanceof CoefficientUnsetError) {
42
- return { kind: 'unset', formula: error.formula };
100
+ catch (error) {
101
+ if (error instanceof CoefficientUnsetError) {
102
+ return { kind: 'unset', formula: error.formula };
103
+ }
104
+ throw error;
43
105
  }
44
- throw error;
45
106
  }
107
+ return closedFormEvaluation(found.evaluator, bindings);
46
108
  }
47
109
  //# sourceMappingURL=evaluate-relation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate-relation.js","sourceRoot":"","sources":["../../src/composition/evaluate-relation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAmB,MAAM,WAAW,CAAC;AAajF,SAAS,WAAW,CAAC,EAAmB;IACtC,MAAM,GAAG,GAAG,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,MAAM,KAAK,GAAG,CAAC,GAAG,aAAa,EAAE,GAAG,eAAe,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;IACpD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,MAAM,IAAI,KAAK,CAAC,iCAAiC,GAAG,GAAG,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAC9B,EAAmB,EACnB,QAA0C;IAE1C,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAC7B,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,qBAAqB,IAAI,CAAC,EAAE,4BAA4B,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;IAC9D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,qBAAqB,EAAE,CAAC;YAC3C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QACnD,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"evaluate-relation.js","sourceRoot":"","sources":["../../src/composition/evaluate-relation.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,8 @@ export { be88Edge, be89Edge, be90Edge, be91Edge, be92Edge, be93Edge, be94Edge, b
28
28
  export { be103Edge, be104Edge, be105Edge, be106Edge, be107Edge, be108Edge, be109Edge, be110Edge, be111Edge, be112Edge, be113Edge, be114Edge, be115Edge, be116Edge, be117Edge, be118Edge, be119Edge, be120Edge, be121Edge, be122Edge, be123Edge, be124Edge, be125Edge, PLASMA_SPACE_EDGES, } from './edges/plasma-space.js';
29
29
  /** Composition edges for the comb drive through the damping ratio, BE-126 through BE-133. */
30
30
  export { be126Edge, be127Edge, be128Edge, be129Edge, be130Edge, be131Edge, be132Edge, be133Edge, ENGINEERING_R7_EDGES, } from './edges/engineering-r7.js';
31
+ /** Composition edges for the Bloch deficit through the Gorter–Casimir fraction, BE-134 through BE-146. */
32
+ export { be134Edge, be135Edge, be136Edge, be137Edge, be138Edge, be139Edge, be140Edge, be141Edge, be142Edge, be143Edge, be144Edge, be145Edge, be146Edge, CONDENSED_R8_EDGES, } from './edges/condensed-r8.js';
31
33
  export { be11Edge, be13Edge, be15Edge, be17Edge, be18Edge, be20Edge, be22Edge, be23Edge, be24Edge, be25Edge, be26Edge, be27Edge, be30Edge, be31Edge, be33Edge, be34Edge, be36Edge, be38Edge, be39Edge, be41Edge, be43Edge, be45Edge, be46Edge, be47Edge, be49Edge, be50Edge, CATALOG_FULL_EDGES, } from './edges/catalog-full.js';
32
34
  export { CATALOG_GRAPH } from './catalog-graph.js';
33
35
  export { CANONICAL_GRAPH, canonicalToEdges, CANONICAL_CONSTANTS, } from './canonical-graph.js';
@@ -55,5 +57,7 @@ export type { DimensionAdjacency } from './dimension-adjacency.js';
55
57
  export { dimensionAdjacency } from './dimension-adjacency.js';
56
58
  export type { UserEquation, EquationLanding } from './user-equation.js';
57
59
  export type { EquationAnalysis, EquationHint } from './user-equation.js';
58
- export { parseUserEquation, resolveToCatalogName, suggestQuantities, suggestByDimension, equationLanding, analyzeUserEquation, UserEquationError, } from './user-equation.js';
60
+ export { parseUserEquation, suggestQuantities, suggestByDimension, equationLanding, analyzeUserEquation, UserEquationError, } from './user-equation.js';
61
+ /** The catalog or parameter name a spelling means. Two spellings of one quantity that disagree throw {@link SynonymDisagreementError}. */
62
+ export { resolveQuantityName, SynonymDisagreementError } from '../dimensional/formula-names.js';
59
63
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,8 @@ export { be88Edge, be89Edge, be90Edge, be91Edge, be92Edge, be93Edge, be94Edge, b
24
24
  export { be103Edge, be104Edge, be105Edge, be106Edge, be107Edge, be108Edge, be109Edge, be110Edge, be111Edge, be112Edge, be113Edge, be114Edge, be115Edge, be116Edge, be117Edge, be118Edge, be119Edge, be120Edge, be121Edge, be122Edge, be123Edge, be124Edge, be125Edge, PLASMA_SPACE_EDGES, } from './edges/plasma-space.js';
25
25
  /** Composition edges for the comb drive through the damping ratio, BE-126 through BE-133. */
26
26
  export { be126Edge, be127Edge, be128Edge, be129Edge, be130Edge, be131Edge, be132Edge, be133Edge, ENGINEERING_R7_EDGES, } from './edges/engineering-r7.js';
27
+ /** Composition edges for the Bloch deficit through the Gorter–Casimir fraction, BE-134 through BE-146. */
28
+ export { be134Edge, be135Edge, be136Edge, be137Edge, be138Edge, be139Edge, be140Edge, be141Edge, be142Edge, be143Edge, be144Edge, be145Edge, be146Edge, CONDENSED_R8_EDGES, } from './edges/condensed-r8.js';
27
29
  export { be11Edge, be13Edge, be15Edge, be17Edge, be18Edge, be20Edge, be22Edge, be23Edge, be24Edge, be25Edge, be26Edge, be27Edge, be30Edge, be31Edge, be33Edge, be34Edge, be36Edge, be38Edge, be39Edge, be41Edge, be43Edge, be45Edge, be46Edge, be47Edge, be49Edge, be50Edge, CATALOG_FULL_EDGES, } from './edges/catalog-full.js';
28
30
  export { CATALOG_GRAPH } from './catalog-graph.js';
29
31
  export { CANONICAL_GRAPH, canonicalToEdges, CANONICAL_CONSTANTS, } from './canonical-graph.js';
@@ -39,6 +41,8 @@ export { SymbolicEvalError } from './expr-eval.js';
39
41
  export { buildVizModel, edgeToJunction } from './graph-viz.js';
40
42
  export { renderDotToSvg, SvgRendererUnavailableError } from './graph-viz-svg.js';
41
43
  export { dimensionAdjacency } from './dimension-adjacency.js';
42
- export { parseUserEquation, resolveToCatalogName, suggestQuantities, suggestByDimension, equationLanding, analyzeUserEquation, UserEquationError, } from './user-equation.js';
44
+ export { parseUserEquation, suggestQuantities, suggestByDimension, equationLanding, analyzeUserEquation, UserEquationError, } from './user-equation.js';
45
+ /** The catalog or parameter name a spelling means. Two spellings of one quantity that disagree throw {@link SynonymDisagreementError}. */
46
+ export { resolveQuantityName, SynonymDisagreementError } from '../dimensional/formula-names.js';
43
47
  // formatConnectedSummary stays internal — CLI reaches it via cli-api.
44
48
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"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"}