universal-physics-tensor 2.0.1 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/dist/atlas/association.d.ts.map +1 -1
- package/dist/atlas/association.js +7 -0
- package/dist/atlas/association.js.map +1 -1
- package/dist/atlas/catalog-formal-ref.js +1 -1
- package/dist/atlas/catalog-formal-ref.js.map +1 -1
- package/dist/atlas/physjs-ref.d.ts +31 -3
- package/dist/atlas/physjs-ref.d.ts.map +1 -1
- package/dist/atlas/physjs-ref.js +132 -9
- package/dist/atlas/physjs-ref.js.map +1 -1
- package/dist/bridges/be69-fast-magnetosonic.d.ts +30 -0
- package/dist/bridges/be69-fast-magnetosonic.d.ts.map +1 -0
- package/dist/bridges/be69-fast-magnetosonic.js +33 -0
- package/dist/bridges/be69-fast-magnetosonic.js.map +1 -0
- package/dist/bridges/be70-einstein-relation.d.ts +30 -0
- package/dist/bridges/be70-einstein-relation.d.ts.map +1 -0
- package/dist/bridges/be70-einstein-relation.js +33 -0
- package/dist/bridges/be70-einstein-relation.js.map +1 -0
- package/dist/bridges/be71-clapeyron.d.ts +43 -0
- package/dist/bridges/be71-clapeyron.d.ts.map +1 -0
- package/dist/bridges/be71-clapeyron.js +32 -0
- package/dist/bridges/be71-clapeyron.js.map +1 -0
- package/dist/bridges/be72-gravitational-redshift.d.ts +43 -0
- package/dist/bridges/be72-gravitational-redshift.d.ts.map +1 -0
- package/dist/bridges/be72-gravitational-redshift.js +32 -0
- package/dist/bridges/be72-gravitational-redshift.js.map +1 -0
- package/dist/bridges/be73-kelvin-peltier.d.ts +42 -0
- package/dist/bridges/be73-kelvin-peltier.d.ts.map +1 -0
- package/dist/bridges/be73-kelvin-peltier.js +31 -0
- package/dist/bridges/be73-kelvin-peltier.js.map +1 -0
- package/dist/bridges/be74-magnetic-pressure.d.ts +27 -0
- package/dist/bridges/be74-magnetic-pressure.d.ts.map +1 -0
- package/dist/bridges/be74-magnetic-pressure.js +29 -0
- package/dist/bridges/be74-magnetic-pressure.js.map +1 -0
- package/dist/bridges/be75-london-penetration.d.ts +27 -0
- package/dist/bridges/be75-london-penetration.d.ts.map +1 -0
- package/dist/bridges/be75-london-penetration.js +31 -0
- package/dist/bridges/be75-london-penetration.js.map +1 -0
- package/dist/bridges/be76-plasma-beta.d.ts +32 -0
- package/dist/bridges/be76-plasma-beta.d.ts.map +1 -0
- package/dist/bridges/be76-plasma-beta.js +34 -0
- package/dist/bridges/be76-plasma-beta.js.map +1 -0
- package/dist/bridges/bridge-equations.d.ts +16 -0
- package/dist/bridges/bridge-equations.d.ts.map +1 -1
- package/dist/bridges/bridge-equations.js +16 -0
- package/dist/bridges/bridge-equations.js.map +1 -1
- package/dist/bridges/evaluators.d.ts.map +1 -1
- package/dist/bridges/evaluators.js +42 -1
- package/dist/bridges/evaluators.js.map +1 -1
- package/dist/bridges/index.d.ts +17 -1
- package/dist/bridges/index.d.ts.map +1 -1
- package/dist/bridges/index.js +178 -2
- package/dist/bridges/index.js.map +1 -1
- package/dist/cli/closed-form-range.d.ts +16 -0
- package/dist/cli/closed-form-range.d.ts.map +1 -0
- package/dist/cli/closed-form-range.js +31 -0
- package/dist/cli/closed-form-range.js.map +1 -0
- package/dist/cli/command.d.ts +4 -3
- package/dist/cli/command.d.ts.map +1 -1
- package/dist/cli/command.js +4 -3
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/commands/_atlas-map.d.ts +2 -1
- package/dist/cli/commands/_atlas-map.d.ts.map +1 -1
- package/dist/cli/commands/_atlas-map.js +8 -7
- package/dist/cli/commands/_atlas-map.js.map +1 -1
- package/dist/cli/commands/_atlas-route.d.ts.map +1 -1
- package/dist/cli/commands/_atlas-route.js +3 -2
- package/dist/cli/commands/_atlas-route.js.map +1 -1
- package/dist/cli/commands/atlas.d.ts.map +1 -1
- package/dist/cli/commands/atlas.js +11 -9
- package/dist/cli/commands/atlas.js.map +1 -1
- package/dist/cli/commands/audit.d.ts.map +1 -1
- package/dist/cli/commands/audit.js +16 -3
- package/dist/cli/commands/audit.js.map +1 -1
- package/dist/cli/commands/axes.d.ts.map +1 -1
- package/dist/cli/commands/axes.js +2 -1
- package/dist/cli/commands/axes.js.map +1 -1
- package/dist/cli/commands/candidates.d.ts.map +1 -1
- package/dist/cli/commands/candidates.js +2 -1
- package/dist/cli/commands/candidates.js.map +1 -1
- package/dist/cli/commands/chain.js +2 -1
- package/dist/cli/commands/chain.js.map +1 -1
- package/dist/cli/commands/confront.d.ts.map +1 -1
- package/dist/cli/commands/confront.js +5 -4
- package/dist/cli/commands/confront.js.map +1 -1
- package/dist/cli/commands/connectors.d.ts.map +1 -1
- package/dist/cli/commands/connectors.js +34 -14
- package/dist/cli/commands/connectors.js.map +1 -1
- package/dist/cli/commands/derive.d.ts.map +1 -1
- package/dist/cli/commands/derive.js +24 -5
- package/dist/cli/commands/derive.js.map +1 -1
- package/dist/cli/commands/discover.d.ts.map +1 -1
- package/dist/cli/commands/discover.js +5 -1
- package/dist/cli/commands/discover.js.map +1 -1
- package/dist/cli/commands/eval.js +2 -2
- package/dist/cli/commands/evaluate.d.ts.map +1 -1
- package/dist/cli/commands/evaluate.js +3 -2
- package/dist/cli/commands/evaluate.js.map +1 -1
- package/dist/cli/commands/explain.d.ts.map +1 -1
- package/dist/cli/commands/explain.js +45 -37
- package/dist/cli/commands/explain.js.map +1 -1
- package/dist/cli/commands/map.d.ts.map +1 -1
- package/dist/cli/commands/map.js +47 -32
- package/dist/cli/commands/map.js.map +1 -1
- package/dist/cli/commands/path.d.ts.map +1 -1
- package/dist/cli/commands/path.js +2 -1
- package/dist/cli/commands/path.js.map +1 -1
- package/dist/cli/commands/probe.d.ts.map +1 -1
- package/dist/cli/commands/probe.js +2 -1
- package/dist/cli/commands/probe.js.map +1 -1
- package/dist/cli/commands/regime.d.ts.map +1 -1
- package/dist/cli/commands/regime.js +36 -24
- package/dist/cli/commands/regime.js.map +1 -1
- package/dist/cli/determination.d.ts +36 -0
- package/dist/cli/determination.d.ts.map +1 -0
- package/dist/cli/determination.js +32 -0
- package/dist/cli/determination.js.map +1 -0
- package/dist/cli/errors.d.ts +5 -1
- package/dist/cli/errors.d.ts.map +1 -1
- package/dist/cli/errors.js +5 -1
- package/dist/cli/errors.js.map +1 -1
- package/dist/cli/eval-numbers.d.ts.map +1 -1
- package/dist/cli/eval-numbers.js +14 -4
- package/dist/cli/eval-numbers.js.map +1 -1
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +10 -303
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/published-url.d.ts +12 -0
- package/dist/cli/published-url.d.ts.map +1 -0
- package/dist/cli/published-url.js +18 -0
- package/dist/cli/published-url.js.map +1 -0
- package/dist/cli/search-index.d.ts +3 -1
- package/dist/cli/search-index.d.ts.map +1 -1
- package/dist/cli/search-index.js +25 -7
- package/dist/cli/search-index.js.map +1 -1
- package/dist/cli/statuses.d.ts.map +1 -1
- package/dist/cli/statuses.js +7 -0
- package/dist/cli/statuses.js.map +1 -1
- package/dist/cli/top-level-help.d.ts +19 -0
- package/dist/cli/top-level-help.d.ts.map +1 -0
- package/dist/cli/top-level-help.js +41 -0
- package/dist/cli/top-level-help.js.map +1 -0
- package/dist/cli-api.d.ts +4 -2
- package/dist/cli-api.d.ts.map +1 -1
- package/dist/cli-api.js +4 -1
- package/dist/cli-api.js.map +1 -1
- package/dist/composition/adjudication.d.ts.map +1 -1
- package/dist/composition/adjudication.js +7 -0
- package/dist/composition/adjudication.js.map +1 -1
- package/dist/composition/aliases.d.ts +27 -0
- package/dist/composition/aliases.d.ts.map +1 -0
- package/dist/composition/aliases.js +105 -0
- package/dist/composition/aliases.js.map +1 -0
- package/dist/composition/bridge-analysis.d.ts +8 -4
- package/dist/composition/bridge-analysis.d.ts.map +1 -1
- package/dist/composition/bridge-analysis.js +8 -0
- package/dist/composition/bridge-analysis.js.map +1 -1
- package/dist/composition/canonical-compare.d.ts +45 -0
- package/dist/composition/canonical-compare.d.ts.map +1 -1
- package/dist/composition/canonical-compare.js +84 -0
- package/dist/composition/canonical-compare.js.map +1 -1
- package/dist/composition/catalog-graph.d.ts +3 -3
- package/dist/composition/catalog-graph.js +3 -3
- package/dist/composition/edge.d.ts +6 -0
- package/dist/composition/edge.d.ts.map +1 -1
- package/dist/composition/edge.js.map +1 -1
- package/dist/composition/edges/applied-physicist.d.ts +68 -2
- package/dist/composition/edges/applied-physicist.d.ts.map +1 -1
- package/dist/composition/edges/applied-physicist.js +320 -5
- package/dist/composition/edges/applied-physicist.js.map +1 -1
- package/dist/composition/explain.d.ts +7 -0
- package/dist/composition/explain.d.ts.map +1 -1
- package/dist/composition/explain.js +81 -7
- package/dist/composition/explain.js.map +1 -1
- package/dist/composition/formula-shape.d.ts +22 -0
- package/dist/composition/formula-shape.d.ts.map +1 -0
- package/dist/composition/formula-shape.js +124 -0
- package/dist/composition/formula-shape.js.map +1 -0
- package/dist/composition/index.d.ts +2 -2
- package/dist/composition/index.d.ts.map +1 -1
- package/dist/composition/index.js +2 -2
- package/dist/composition/index.js.map +1 -1
- package/dist/composition/quantities/applied-physicist.d.ts +55 -1
- package/dist/composition/quantities/applied-physicist.d.ts.map +1 -1
- package/dist/composition/quantities/applied-physicist.js +159 -1
- package/dist/composition/quantities/applied-physicist.js.map +1 -1
- package/dist/composition/user-equation.d.ts.map +1 -1
- package/dist/composition/user-equation.js +25 -10
- package/dist/composition/user-equation.js.map +1 -1
- package/dist/dimensional/bridge-check.d.ts +1 -1
- package/dist/dimensional/bridge-check.d.ts.map +1 -1
- package/dist/dimensional/bridge-check.js +9 -1
- package/dist/dimensional/bridge-check.js.map +1 -1
- package/dist/dimensional/buckingham.d.ts +7 -0
- package/dist/dimensional/buckingham.d.ts.map +1 -1
- package/dist/dimensional/buckingham.js +4 -0
- package/dist/dimensional/buckingham.js.map +1 -1
- package/dist/dimensional/dimension-spec.d.ts +11 -0
- package/dist/dimensional/dimension-spec.d.ts.map +1 -1
- package/dist/dimensional/dimension-spec.js +17 -9
- package/dist/dimensional/dimension-spec.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/relations/domain-regimes.d.ts +12 -0
- package/dist/relations/domain-regimes.d.ts.map +1 -0
- package/dist/relations/domain-regimes.js +21 -0
- package/dist/relations/domain-regimes.js.map +1 -0
- package/dist/relations/regime-registration.d.ts +32 -0
- package/dist/relations/regime-registration.d.ts.map +1 -0
- package/dist/relations/regime-registration.js +27 -0
- package/dist/relations/regime-registration.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Composition edges for BE-66
|
|
2
|
+
* Composition edges for BE-66 through BE-76.
|
|
3
3
|
*
|
|
4
4
|
* Each edge's endpoints state the same scale and force, so `kind` is
|
|
5
5
|
* `law`. The overlay `formalRef` is kind `bridge`, so each id is a
|
|
@@ -13,9 +13,17 @@
|
|
|
13
13
|
import { evaluateRadiationPressure } from '../../bridges/be66-radiation-pressure.js';
|
|
14
14
|
import { evaluateAlfvenSpeed } from '../../bridges/be67-alfven-speed.js';
|
|
15
15
|
import { evaluateTolmanEhrenfest } from '../../bridges/be68-tolman-ehrenfest.js';
|
|
16
|
+
import { evaluateFastMagnetosonic } from '../../bridges/be69-fast-magnetosonic.js';
|
|
17
|
+
import { evaluateEinsteinRelation } from '../../bridges/be70-einstein-relation.js';
|
|
18
|
+
import { evaluateClapeyron } from '../../bridges/be71-clapeyron.js';
|
|
19
|
+
import { evaluateGravitationalRedshift } from '../../bridges/be72-gravitational-redshift.js';
|
|
20
|
+
import { evaluateKelvinPeltier } from '../../bridges/be73-kelvin-peltier.js';
|
|
21
|
+
import { evaluateMagneticPressure } from '../../bridges/be74-magnetic-pressure.js';
|
|
22
|
+
import { evaluateLondonPenetration } from '../../bridges/be75-london-penetration.js';
|
|
23
|
+
import { evaluatePlasmaBeta } from '../../bridges/be76-plasma-beta.js';
|
|
16
24
|
import { DIMENSIONLESS } from '../../dimensional/types.js';
|
|
17
25
|
import { CONSTANTS } from '../../dimensional/symbolic-constants.js';
|
|
18
|
-
import { alfvenSpeedQ, incidenceAngleQ, magneticFluxDensityQ, metricG00Q, plasmaMassDensityQ, poyntingFluxQ, properTemperatureQ, radiationPressureQ, reflectanceQ, tolmanInvariantQ, } from '../quantities.js';
|
|
26
|
+
import { alfvenSpeedQ, incidenceAngleQ, magneticFluxDensityQ, metricG00Q, plasmaMassDensityQ, poyntingFluxQ, properTemperatureQ, radiationPressureQ, reflectanceQ, tolmanInvariantQ, soundSpeedQ, fastMagnetosonicSpeedQ, electricalMobilityQ, einsteinTemperatureQ, carrierChargeQ, diffusivityQ, latentHeatQ, clapeyronTemperatureQ, specificVolumeChangeQ, clapeyronSlopeQ, redshiftMetricG00OneQ, redshiftMetricG00TwoQ, gravitationalFrequencyRatioQ, seebeckCoefficientQ, peltierTemperatureQ, peltierCoefficientQ, magneticPressureQ, londonPenetrationDepthQ, plasmaBetaQ, carrierDensityQ, effectiveMassQ, temperatureQ, } from '../quantities.js';
|
|
19
27
|
const finite = Number.isFinite;
|
|
20
28
|
const qsym = (q) => ({ kind: 'symbol', name: q.name, dim: q.dim });
|
|
21
29
|
const csym = (name) => ({ kind: 'symbol', name, dim: CONSTANTS[name].dim });
|
|
@@ -24,6 +32,8 @@ const prod = (...args) => ({ kind: 'op', op: '*', args });
|
|
|
24
32
|
const plus = (a, b) => ({ kind: 'op', op: '+', args: [a, b] });
|
|
25
33
|
const ratio = (num, den) => ({ kind: 'op', op: '/', args: [num, den] });
|
|
26
34
|
const pow = (base, exp) => ({ kind: 'op', op: '^', args: [base, exp] });
|
|
35
|
+
/** μ0 = 1/(ε0 c²). The same product the Alfvén and magnetosonic formulas use. */
|
|
36
|
+
const mu0 = ratio(lit(1), prod(csym('epsilon_0'), pow(csym('c'), lit(2))));
|
|
27
37
|
/** P_n = (I/c) (1+R) cos²θ. */
|
|
28
38
|
const BE66_SYMBOLIC = prod(ratio(qsym(poyntingFluxQ), csym('c')), plus(lit(1), qsym(reflectanceQ)), pow({ kind: 'transcendental', fn: 'cos', arg: qsym(incidenceAngleQ) }, lit(2)));
|
|
29
39
|
/** μ0 = 1/(ε0 c²). v_A = B / √(μ0 ρ). */
|
|
@@ -44,6 +54,11 @@ export const be66Edge = {
|
|
|
44
54
|
kind: 'law',
|
|
45
55
|
label: 'Radiation pressure P_n = (I/c) (1+R) cos²θ',
|
|
46
56
|
sources: [poyntingFluxQ, reflectanceQ, incidenceAngleQ],
|
|
57
|
+
aliases: {
|
|
58
|
+
'poynting-flux': ['I_W_per_m2', 'I'],
|
|
59
|
+
reflectance: ['R'],
|
|
60
|
+
'incidence-angle': ['theta_rad', 'theta'],
|
|
61
|
+
},
|
|
47
62
|
target: radiationPressureQ,
|
|
48
63
|
confidence: 'established',
|
|
49
64
|
domain: {
|
|
@@ -61,7 +76,7 @@ export const be66Edge = {
|
|
|
61
76
|
theta_rad: i['incidence-angle'],
|
|
62
77
|
}).P_Pa,
|
|
63
78
|
symbolic: BE66_SYMBOLIC,
|
|
64
|
-
citation: 'OpenStax University Physics
|
|
79
|
+
citation: 'OpenStax University Physics Volume 2, https://openstax.org/books/university-physics-volume-2/pages/16-4-momentum-and-radiation-pressure (absorber I/c, reflector 2I/c). The (1+R) cos²θ factor is this catalog\'s assembly.',
|
|
65
80
|
};
|
|
66
81
|
/**
|
|
67
82
|
* BE-67 Alfvén speed: (magnetic-flux-density, plasma-mass-density) →
|
|
@@ -77,6 +92,10 @@ export const be67Edge = {
|
|
|
77
92
|
kind: 'law',
|
|
78
93
|
label: 'Alfvén speed v_A = B / √(μ0 ρ)',
|
|
79
94
|
sources: [magneticFluxDensityQ, plasmaMassDensityQ],
|
|
95
|
+
aliases: {
|
|
96
|
+
'magnetic-flux-density': ['B_T'],
|
|
97
|
+
'plasma-mass-density': ['rho_kg_per_m3'],
|
|
98
|
+
},
|
|
80
99
|
target: alfvenSpeedQ,
|
|
81
100
|
confidence: 'established',
|
|
82
101
|
domain: {
|
|
@@ -107,6 +126,10 @@ export const be68Edge = {
|
|
|
107
126
|
kind: 'law',
|
|
108
127
|
label: 'Tolman–Ehrenfest invariant T √(−g_00)',
|
|
109
128
|
sources: [properTemperatureQ, metricG00Q],
|
|
129
|
+
aliases: {
|
|
130
|
+
'proper-temperature': ['T_K'],
|
|
131
|
+
'metric-g00': ['g_00'],
|
|
132
|
+
},
|
|
110
133
|
target: tolmanInvariantQ,
|
|
111
134
|
confidence: 'established',
|
|
112
135
|
domain: {
|
|
@@ -123,6 +146,298 @@ export const be68Edge = {
|
|
|
123
146
|
symbolic: BE68_SYMBOLIC,
|
|
124
147
|
citation: 'Tolman & Ehrenfest 1930 Phys. Rev. 36:1791 (T0 √g_44). Catalog form T √(−g_00).',
|
|
125
148
|
};
|
|
126
|
-
/**
|
|
127
|
-
|
|
149
|
+
/** |ω/k| = √(c_s² + B²/(μ0 ρ)), with μ0 = 1/(ε0 c²). */
|
|
150
|
+
const BE69_SYMBOLIC = pow(plus(pow(qsym(soundSpeedQ), lit(2)), ratio(pow(qsym(magneticFluxDensityQ), lit(2)), prod(ratio(lit(1), prod(csym('epsilon_0'), pow(csym('c'), lit(2)))), qsym(plasmaMassDensityQ)))), lit(0.5));
|
|
151
|
+
/** D = μ k_B T / q. */
|
|
152
|
+
const BE70_SYMBOLIC = ratio(prod(qsym(electricalMobilityQ), csym('k_B'), qsym(einsteinTemperatureQ)), qsym(carrierChargeQ));
|
|
153
|
+
/** dP/dT = L / (T Δv). */
|
|
154
|
+
const BE71_SYMBOLIC = ratio(qsym(latentHeatQ), prod(qsym(clapeyronTemperatureQ), qsym(specificVolumeChangeQ)));
|
|
155
|
+
/** ν1/ν2 = √(g2/g1). Both components are negative, so the ratio is positive. */
|
|
156
|
+
const BE72_SYMBOLIC = pow(ratio(qsym(redshiftMetricG00TwoQ), qsym(redshiftMetricG00OneQ)), lit(0.5));
|
|
157
|
+
/** Π = S T. Onsager reciprocity is not a leaf. */
|
|
158
|
+
const BE73_SYMBOLIC = prod(qsym(seebeckCoefficientQ), qsym(peltierTemperatureQ));
|
|
159
|
+
/**
|
|
160
|
+
* BE-69 fast magnetosonic speed:
|
|
161
|
+
* (sound-speed, magnetic-flux-density, plasma-mass-density) →
|
|
162
|
+
* fast-magnetosonic-speed. `c_s = 0` recovers the Alfvén number and
|
|
163
|
+
* does not identify this target with `alfven-speed`.
|
|
164
|
+
*
|
|
165
|
+
* @public
|
|
166
|
+
*/
|
|
167
|
+
export const be69Edge = {
|
|
168
|
+
id: 'be-69',
|
|
169
|
+
beId: 69,
|
|
170
|
+
kind: 'law',
|
|
171
|
+
label: 'Fast magnetosonic speed |ω/k| = √(c_s² + B²/(μ0 ρ))',
|
|
172
|
+
sources: [soundSpeedQ, magneticFluxDensityQ, plasmaMassDensityQ],
|
|
173
|
+
aliases: {
|
|
174
|
+
'sound-speed': ['cs_m_per_s', 'c_s'],
|
|
175
|
+
'magnetic-flux-density': ['B_T'],
|
|
176
|
+
'plasma-mass-density': ['rho_kg_per_m3'],
|
|
177
|
+
},
|
|
178
|
+
target: fastMagnetosonicSpeedQ,
|
|
179
|
+
confidence: 'established',
|
|
180
|
+
domain: {
|
|
181
|
+
description: 'c_s ≥ 0, B finite, ρ > 0',
|
|
182
|
+
predicate: (i) => finite(i['sound-speed']) &&
|
|
183
|
+
i['sound-speed'] >= 0 &&
|
|
184
|
+
finite(i['magnetic-flux-density']) &&
|
|
185
|
+
finite(i['plasma-mass-density']) &&
|
|
186
|
+
i['plasma-mass-density'] > 0,
|
|
187
|
+
},
|
|
188
|
+
evaluate: (i) => evaluateFastMagnetosonic({
|
|
189
|
+
cs_m_per_s: i['sound-speed'],
|
|
190
|
+
B_T: i['magnetic-flux-density'],
|
|
191
|
+
rho_kg_per_m3: i['plasma-mass-density'],
|
|
192
|
+
}).v_m_per_s,
|
|
193
|
+
symbolic: BE69_SYMBOLIC,
|
|
194
|
+
citation: 'PhysJS.FastMagnetosonic.speed_eq. Perpendicular compressional phase speed. c_s = 0 is the Alfvén number of a different polarization.',
|
|
195
|
+
};
|
|
196
|
+
/**
|
|
197
|
+
* BE-70 Einstein relation: (electrical-mobility, einstein-temperature,
|
|
198
|
+
* carrier-charge) → diffusivity, `D = μ k_B T / q`.
|
|
199
|
+
*
|
|
200
|
+
* @public
|
|
201
|
+
*/
|
|
202
|
+
export const be70Edge = {
|
|
203
|
+
id: 'be-70',
|
|
204
|
+
beId: 70,
|
|
205
|
+
kind: 'law',
|
|
206
|
+
label: 'Einstein relation D = μ k_B T / q',
|
|
207
|
+
sources: [electricalMobilityQ, einsteinTemperatureQ, carrierChargeQ],
|
|
208
|
+
aliases: {
|
|
209
|
+
'electrical-mobility': ['mu_m2_per_Vs'],
|
|
210
|
+
'einstein-temperature': ['T_K'],
|
|
211
|
+
'carrier-charge': ['q_C'],
|
|
212
|
+
},
|
|
213
|
+
target: diffusivityQ,
|
|
214
|
+
confidence: 'established',
|
|
215
|
+
domain: {
|
|
216
|
+
description: 'μ finite, T ≠ 0, q ≠ 0',
|
|
217
|
+
predicate: (i) => finite(i['electrical-mobility']) &&
|
|
218
|
+
finite(i['einstein-temperature']) &&
|
|
219
|
+
i['einstein-temperature'] !== 0 &&
|
|
220
|
+
finite(i['carrier-charge']) &&
|
|
221
|
+
i['carrier-charge'] !== 0,
|
|
222
|
+
},
|
|
223
|
+
evaluate: (i) => evaluateEinsteinRelation({
|
|
224
|
+
mu_m2_per_Vs: i['electrical-mobility'],
|
|
225
|
+
T_K: i['einstein-temperature'],
|
|
226
|
+
q_C: i['carrier-charge'],
|
|
227
|
+
}).D_m2_per_s,
|
|
228
|
+
symbolic: BE70_SYMBOLIC,
|
|
229
|
+
citation: 'PhysJS.EinsteinRelation.diffusion_eq. Drift cancels diffusion on a Boltzmann profile.',
|
|
230
|
+
};
|
|
231
|
+
/**
|
|
232
|
+
* BE-71 Clapeyron slope: (specific-latent-heat, clapeyron-temperature,
|
|
233
|
+
* specific-volume-change) → clapeyron-slope, `dP/dT = L/(T Δv)`.
|
|
234
|
+
*
|
|
235
|
+
* @public
|
|
236
|
+
*/
|
|
237
|
+
export const be71Edge = {
|
|
238
|
+
id: 'be-71',
|
|
239
|
+
beId: 71,
|
|
240
|
+
kind: 'law',
|
|
241
|
+
label: 'Clapeyron slope dP/dT = L/(T Δv)',
|
|
242
|
+
sources: [latentHeatQ, clapeyronTemperatureQ, specificVolumeChangeQ],
|
|
243
|
+
aliases: {
|
|
244
|
+
'specific-latent-heat': ['L_J_per_kg'],
|
|
245
|
+
'clapeyron-temperature': ['T_K'],
|
|
246
|
+
'specific-volume-change': ['delta_v_m3_per_kg'],
|
|
247
|
+
},
|
|
248
|
+
target: clapeyronSlopeQ,
|
|
249
|
+
confidence: 'established',
|
|
250
|
+
domain: {
|
|
251
|
+
description: 'L finite, T ≠ 0, Δv ≠ 0',
|
|
252
|
+
predicate: (i) => finite(i['specific-latent-heat']) &&
|
|
253
|
+
finite(i['clapeyron-temperature']) &&
|
|
254
|
+
i['clapeyron-temperature'] !== 0 &&
|
|
255
|
+
finite(i['specific-volume-change']) &&
|
|
256
|
+
i['specific-volume-change'] !== 0,
|
|
257
|
+
},
|
|
258
|
+
evaluate: (i) => evaluateClapeyron({
|
|
259
|
+
L_J_per_kg: i['specific-latent-heat'],
|
|
260
|
+
T_K: i['clapeyron-temperature'],
|
|
261
|
+
delta_v_m3_per_kg: i['specific-volume-change'],
|
|
262
|
+
}).slope_Pa_per_K,
|
|
263
|
+
symbolic: BE71_SYMBOLIC,
|
|
264
|
+
citation: 'PhysJS.Clapeyron.slope_eq. L = T (s2−s1) is already substituted. The entropy slope is not a second edge.',
|
|
265
|
+
};
|
|
266
|
+
/**
|
|
267
|
+
* BE-72 gravitational redshift: (redshift-metric-g00-1,
|
|
268
|
+
* redshift-metric-g00-2) → gravitational-frequency-ratio,
|
|
269
|
+
* `ν1/ν2 = √(g2/g1)`. The quantities are not BE-68's, so this edge
|
|
270
|
+
* does not compose into the Tolman invariant.
|
|
271
|
+
*
|
|
272
|
+
* @public
|
|
273
|
+
*/
|
|
274
|
+
export const be72Edge = {
|
|
275
|
+
id: 'be-72',
|
|
276
|
+
beId: 72,
|
|
277
|
+
kind: 'law',
|
|
278
|
+
label: 'Gravitational redshift ν1/ν2 = √(g2/g1)',
|
|
279
|
+
sources: [redshiftMetricG00OneQ, redshiftMetricG00TwoQ],
|
|
280
|
+
aliases: {
|
|
281
|
+
'redshift-metric-g00-1': ['g1'],
|
|
282
|
+
'redshift-metric-g00-2': ['g2'],
|
|
283
|
+
},
|
|
284
|
+
target: gravitationalFrequencyRatioQ,
|
|
285
|
+
confidence: 'established',
|
|
286
|
+
domain: {
|
|
287
|
+
description: 'both static g_00 components are finite and negative',
|
|
288
|
+
predicate: (i) => finite(i['redshift-metric-g00-1']) &&
|
|
289
|
+
i['redshift-metric-g00-1'] < 0 &&
|
|
290
|
+
finite(i['redshift-metric-g00-2']) &&
|
|
291
|
+
i['redshift-metric-g00-2'] < 0,
|
|
292
|
+
},
|
|
293
|
+
evaluate: (i) => evaluateGravitationalRedshift({
|
|
294
|
+
g1: i['redshift-metric-g00-1'],
|
|
295
|
+
g2: i['redshift-metric-g00-2'],
|
|
296
|
+
}).frequency_ratio,
|
|
297
|
+
symbolic: BE72_SYMBOLIC,
|
|
298
|
+
citation: 'PhysJS.GravitationalRedshift.frequency_ratio. Not PhysJS.TolmanEhrenfest.hydrostatic_constant. tolman_same_ratio is nested and is not this edge.',
|
|
299
|
+
};
|
|
300
|
+
/**
|
|
301
|
+
* BE-73 Kelvin relation: (seebeck-coefficient, peltier-temperature) →
|
|
302
|
+
* peltier-coefficient, `Π = S T`. Onsager reciprocity is the structure
|
|
303
|
+
* field in the theorem, not a source.
|
|
304
|
+
*
|
|
305
|
+
* @public
|
|
306
|
+
*/
|
|
307
|
+
export const be73Edge = {
|
|
308
|
+
id: 'be-73',
|
|
309
|
+
beId: 73,
|
|
310
|
+
kind: 'law',
|
|
311
|
+
label: 'Kelvin relation Π = S T',
|
|
312
|
+
sources: [seebeckCoefficientQ, peltierTemperatureQ],
|
|
313
|
+
aliases: {
|
|
314
|
+
'seebeck-coefficient': ['S_V_per_K'],
|
|
315
|
+
'peltier-temperature': ['T_K'],
|
|
316
|
+
},
|
|
317
|
+
target: peltierCoefficientQ,
|
|
318
|
+
confidence: 'established',
|
|
319
|
+
domain: {
|
|
320
|
+
description: 'S finite and T ≠ 0',
|
|
321
|
+
predicate: (i) => finite(i['seebeck-coefficient']) && finite(i['peltier-temperature']) && i['peltier-temperature'] !== 0,
|
|
322
|
+
},
|
|
323
|
+
evaluate: (i) => evaluateKelvinPeltier({
|
|
324
|
+
S_V_per_K: i['seebeck-coefficient'],
|
|
325
|
+
T_K: i['peltier-temperature'],
|
|
326
|
+
}).Pi_V,
|
|
327
|
+
symbolic: BE73_SYMBOLIC,
|
|
328
|
+
citation: 'PhysJS.KelvinRelation.peltier_eq. L12 = L21 is ThermoelectricOnsager.onsager, a structure field, not an axiom and not an input.',
|
|
329
|
+
};
|
|
330
|
+
/** p_B = B² / (2 μ0). The 2 is the inductor integral, not a Buckingham constant. */
|
|
331
|
+
const BE74_SYMBOLIC = ratio(pow(qsym(magneticFluxDensityQ), lit(2)), prod(lit(2), mu0));
|
|
332
|
+
/** λ_L = √(m / (μ0 n e²)). `e` is the elementary charge. */
|
|
333
|
+
const BE75_SYMBOLIC = pow(ratio(qsym(effectiveMassQ), prod(mu0, qsym(carrierDensityQ), pow(csym('e'), lit(2)))), lit(0.5));
|
|
334
|
+
/** β = n k_B T / p_B. Substituting BE-74 yields 2 μ0 n k_B T / B². */
|
|
335
|
+
const BE76_SYMBOLIC = ratio(prod(qsym(carrierDensityQ), csym('k_B'), qsym(temperatureQ)), qsym(magneticPressureQ));
|
|
336
|
+
/**
|
|
337
|
+
* BE-74 magnetic pressure: magnetic-flux-density → magnetic-pressure,
|
|
338
|
+
* `p_B = B²/(2 μ0)`. `μ0` is a constant. The endpoints share the
|
|
339
|
+
* classical electromagnetic attributes: a law.
|
|
340
|
+
*
|
|
341
|
+
* @public
|
|
342
|
+
*/
|
|
343
|
+
export const be74Edge = {
|
|
344
|
+
id: 'be-74',
|
|
345
|
+
beId: 74,
|
|
346
|
+
kind: 'law',
|
|
347
|
+
label: 'Magnetic pressure p_B = B²/(2 μ0)',
|
|
348
|
+
sources: [magneticFluxDensityQ],
|
|
349
|
+
aliases: {
|
|
350
|
+
'magnetic-flux-density': ['B_T', 'B'],
|
|
351
|
+
},
|
|
352
|
+
target: magneticPressureQ,
|
|
353
|
+
confidence: 'established',
|
|
354
|
+
domain: {
|
|
355
|
+
description: 'B finite; the factor 2 is the stored-energy half, not C = 1',
|
|
356
|
+
predicate: (i) => finite(i['magnetic-flux-density']),
|
|
357
|
+
},
|
|
358
|
+
evaluate: (i) => evaluateMagneticPressure({ B_T: i['magnetic-flux-density'] }).p_Pa,
|
|
359
|
+
symbolic: BE74_SYMBOLIC,
|
|
360
|
+
citation: 'PhysJS.MagneticPressure.pressure_eq. U = (L/2) I². C = 1 is the battery work per volume, not this pressure.',
|
|
361
|
+
};
|
|
362
|
+
/**
|
|
363
|
+
* BE-75 London penetration depth: (effective-mass, carrier-density) →
|
|
364
|
+
* london-penetration-depth, `λ_L = √(m/(μ0 n e²))`. `e` and `μ0` are
|
|
365
|
+
* constants. The endpoints share the carrier attributes: a law.
|
|
366
|
+
*
|
|
367
|
+
* @public
|
|
368
|
+
*/
|
|
369
|
+
export const be75Edge = {
|
|
370
|
+
id: 'be-75',
|
|
371
|
+
beId: 75,
|
|
372
|
+
kind: 'law',
|
|
373
|
+
label: 'London penetration depth λ_L = √(m/(μ0 n e²))',
|
|
374
|
+
sources: [effectiveMassQ, carrierDensityQ],
|
|
375
|
+
aliases: {
|
|
376
|
+
'effective-mass': ['m_kg', 'm'],
|
|
377
|
+
'carrier-density': ['n_per_m3', 'n'],
|
|
378
|
+
},
|
|
379
|
+
target: londonPenetrationDepthQ,
|
|
380
|
+
confidence: 'established',
|
|
381
|
+
domain: {
|
|
382
|
+
description: 'm > 0 and n > 0; e is the elementary charge',
|
|
383
|
+
predicate: (i) => finite(i['effective-mass']) && i['effective-mass'] > 0 && finite(i['carrier-density']) && i['carrier-density'] > 0,
|
|
384
|
+
},
|
|
385
|
+
evaluate: (i) => evaluateLondonPenetration({
|
|
386
|
+
m_kg: i['effective-mass'],
|
|
387
|
+
n_per_m3: i['carrier-density'],
|
|
388
|
+
}).lambda_m,
|
|
389
|
+
symbolic: BE75_SYMBOLIC,
|
|
390
|
+
citation: 'PhysJS.LondonPenetration.depth_eq. Units also admit μ0 e²/m. Not the classical skin depth.',
|
|
391
|
+
};
|
|
392
|
+
/**
|
|
393
|
+
* BE-76 plasma beta: (carrier-density, temperature, magnetic-pressure) →
|
|
394
|
+
* plasma-beta, `β = n k_B T / p_B`. The magnetic-pressure source is
|
|
395
|
+
* BE-74, so the edges compose. `carrier-density` is quantum and
|
|
396
|
+
* `magnetic-pressure` is classical, so the endpoints differ: a bridge.
|
|
397
|
+
* Not a plasma-β inequality.
|
|
398
|
+
*
|
|
399
|
+
* @public
|
|
400
|
+
*/
|
|
401
|
+
export const be76Edge = {
|
|
402
|
+
id: 'be-76',
|
|
403
|
+
beId: 76,
|
|
404
|
+
kind: 'bridge',
|
|
405
|
+
label: 'Plasma beta β = n k_B T / p_B',
|
|
406
|
+
sources: [carrierDensityQ, temperatureQ, magneticPressureQ],
|
|
407
|
+
aliases: {
|
|
408
|
+
'carrier-density': ['n_per_m3', 'n'],
|
|
409
|
+
temperature: ['T_K', 'T'],
|
|
410
|
+
'magnetic-pressure': ['p_B_Pa', 'p_B'],
|
|
411
|
+
},
|
|
412
|
+
target: plasmaBetaQ,
|
|
413
|
+
confidence: 'established',
|
|
414
|
+
domain: {
|
|
415
|
+
description: 'n and T finite, p_B ≠ 0; p_B is B²/(2 μ0)',
|
|
416
|
+
predicate: (i) => finite(i['carrier-density']) &&
|
|
417
|
+
finite(i['temperature']) &&
|
|
418
|
+
finite(i['magnetic-pressure']) &&
|
|
419
|
+
i['magnetic-pressure'] !== 0,
|
|
420
|
+
},
|
|
421
|
+
evaluate: (i) => evaluatePlasmaBeta({
|
|
422
|
+
n_per_m3: i['carrier-density'],
|
|
423
|
+
T_K: i['temperature'],
|
|
424
|
+
p_B_Pa: i['magnetic-pressure'],
|
|
425
|
+
}).beta,
|
|
426
|
+
symbolic: BE76_SYMBOLIC,
|
|
427
|
+
citation: 'PhysJS.PlasmaBeta.beta_eq. p_B is PhysJS.MagneticPressure.pressure_eq. Using B²/μ0 is half of this beta. Not a plasma-β inequality.',
|
|
428
|
+
};
|
|
429
|
+
/** The applied-physicist edges, in catalog-id order. @public */
|
|
430
|
+
export const APPLIED_PHYSICIST_EDGES = [
|
|
431
|
+
be66Edge,
|
|
432
|
+
be67Edge,
|
|
433
|
+
be68Edge,
|
|
434
|
+
be69Edge,
|
|
435
|
+
be70Edge,
|
|
436
|
+
be71Edge,
|
|
437
|
+
be72Edge,
|
|
438
|
+
be73Edge,
|
|
439
|
+
be74Edge,
|
|
440
|
+
be75Edge,
|
|
441
|
+
be76Edge,
|
|
442
|
+
];
|
|
128
443
|
//# sourceMappingURL=applied-physicist.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applied-physicist.js","sourceRoot":"","sources":["../../../src/composition/edges/applied-physicist.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAEjF,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,OAAO,EACL,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,UAAU,EACV,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC/B,MAAM,IAAI,GAAG,CAAC,CAAW,EAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;AACvF,MAAM,IAAI,GAAG,CAAC,IAA4B,EAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;AAC9G,MAAM,GAAG,GAAG,CAAC,CAAS,EAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;AAC/F,MAAM,IAAI,GAAG,CAAC,GAAG,IAAgB,EAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;AAChF,MAAM,IAAI,GAAG,CAAC,CAAW,EAAE,CAAW,EAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AAC7F,MAAM,KAAK,GAAG,CAAC,GAAa,EAAE,GAAa,EAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AACtG,MAAM,GAAG,GAAG,CAAC,IAAc,EAAE,GAAa,EAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AAEtG,+BAA+B;AAC/B,MAAM,aAAa,GAAa,IAAI,CAClC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EACrC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,EAChC,GAAG,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAC/E,CAAC;AAEF,yCAAyC;AACzC,MAAM,aAAa,GAAa,KAAK,CACnC,IAAI,CAAC,oBAAoB,CAAC,EAC1B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAC9G,CAAC;AAEF,4EAA4E;AAC5E,MAAM,aAAa,GAAa,IAAI,CAClC,IAAI,CAAC,kBAAkB,CAAC,EACxB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAC/C,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAe;IAClC,EAAE,EAAE,OAAO;IACX,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,KAAK;IACX,KAAK,EAAE,4CAA4C;IACnD,OAAO,EAAE,CAAC,aAAa,EAAE,YAAY,EAAE,eAAe,CAAC;IACvD,MAAM,EAAE,kBAAkB;IAC1B,UAAU,EAAE,aAAa;IACzB,MAAM,EAAE;QACN,WAAW,EAAE,8CAA8C;QAC3D,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CACf,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;YAC1B,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC;YACvB,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;YACxB,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;YACrB,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;KAC/B;IACD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CACd,yBAAyB,CAAC;QACxB,UAAU,EAAE,CAAC,CAAC,eAAe,CAAC;QAC9B,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC;QACnB,SAAS,EAAE,CAAC,CAAC,iBAAiB,CAAC;KAChC,CAAC,CAAC,IAAI;IACT,QAAQ,EAAE,aAAa;IACvB,QAAQ,EACN,8HAA8H;CACjI,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAe;IAClC,EAAE,EAAE,OAAO;IACX,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,KAAK;IACX,KAAK,EAAE,gCAAgC;IACvC,OAAO,EAAE,CAAC,oBAAoB,EAAE,kBAAkB,CAAC;IACnD,MAAM,EAAE,YAAY;IACpB,UAAU,EAAE,aAAa;IACzB,MAAM,EAAE;QACN,WAAW,EAAE,mDAAmD;QAChE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CACf,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC;YAClC,CAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC;YAC/B,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;YAChC,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC;KAC/B;IACD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CACd,mBAAmB,CAAC;QAClB,GAAG,EAAE,CAAC,CAAC,uBAAuB,CAAC;QAC/B,aAAa,EAAE,CAAC,CAAC,qBAAqB,CAAC;KACxC,CAAC,CAAC,SAAS;IACd,QAAQ,EAAE,aAAa;IACvB,QAAQ,EAAE,6EAA6E;CACxF,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAe;IAClC,EAAE,EAAE,OAAO;IACX,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,KAAK;IACX,KAAK,EAAE,uCAAuC;IAC9C,OAAO,EAAE,CAAC,kBAAkB,EAAE,UAAU,CAAC;IACzC,MAAM,EAAE,gBAAgB;IACxB,UAAU,EAAE,aAAa;IACzB,MAAM,EAAE;QACN,WAAW,EAAE,iCAAiC;QAC9C,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CACf,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;YAC/B,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC;YAC3B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;YACvB,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC;KACtB;IACD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CACd,uBAAuB,CAAC;QACtB,GAAG,EAAE,CAAC,CAAC,oBAAoB,CAAC;QAC5B,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC;KACtB,CAAC,CAAC,WAAW;IAChB,QAAQ,EAAE,aAAa;IACvB,QAAQ,EACN,iFAAiF;CACpF,CAAC;AAEF,sEAAsE;AACtE,MAAM,CAAC,MAAM,uBAAuB,GAA0B,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"applied-physicist.js","sourceRoot":"","sources":["../../../src/composition/edges/applied-physicist.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,13 @@ import type { QuantityIdentification } from './compose.js';
|
|
|
28
28
|
import type { IdentifiabilityResult } from './identifiability.js';
|
|
29
29
|
import type { RetrodictionResult } from './retrodiction.js';
|
|
30
30
|
import type { Dimension } from '../dimensional/types.js';
|
|
31
|
+
/**
|
|
32
|
+
* Text form of a recovered quantity: 15 significant digits, the precision an
|
|
33
|
+
* evaluator input is already passed at. JSON keeps the number; this is only
|
|
34
|
+
* the printed form. An integer stays an integer (`1`, not `1.0000e+0`).
|
|
35
|
+
* @internal
|
|
36
|
+
*/
|
|
37
|
+
export declare function formatQuantity(value: number): string;
|
|
31
38
|
import type { DimensionalDeterminationResult } from '../dimensional/buckingham.js';
|
|
32
39
|
/** One structural derivation of the target, with the recovered value when
|
|
33
40
|
* ground-truth values were supplied. @public */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"explain.d.ts","sourceRoot":"","sources":["../../src/composition/explain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"explain.d.ts","sourceRoot":"","sources":["../../src/composition/explain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEzD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEpD;AACD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAInF;iDACiD;AACjD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE;QACzB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACpD,4EAA4E;QAC5E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,yEAAyE;IACzE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,mDAAmD;AACnD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAC7D,mEAAmE;IACnE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;CAChE;AAED,uDAAuD;AACvD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,mEAAmE;IACnE,QAAQ,CAAC,eAAe,EAAE,qBAAqB,CAAC;IAChD,iEAAiE;IACjE,QAAQ,CAAC,WAAW,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACvD,wEAAwE;IACxE,QAAQ,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAC1C,2EAA2E;IAC3E,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC;8DAC0D;IAC1D,QAAQ,CAAC,WAAW,CAAC,EAAE,8BAA8B,CAAC;IACtD,0EAA0E;IAC1E,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,6CAA6C;IAC7C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AA0MD;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,SAAS,UAAU,EAAE,EAC5B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAC3D,IAAI,GAAE,cAAmB,GACxB,mBAAmB,CAsIrB"}
|
|
@@ -26,7 +26,60 @@
|
|
|
26
26
|
import { QUANTITY_IDENTIFICATIONS } from './compose.js';
|
|
27
27
|
import { classifyIdentifiability, forwardClosure } from './identifiability.js';
|
|
28
28
|
import { retrodictNode } from './retrodiction.js';
|
|
29
|
+
/**
|
|
30
|
+
* Text form of a recovered quantity: 15 significant digits, the precision an
|
|
31
|
+
* evaluator input is already passed at. JSON keeps the number; this is only
|
|
32
|
+
* the printed form. An integer stays an integer (`1`, not `1.0000e+0`).
|
|
33
|
+
* @internal
|
|
34
|
+
*/
|
|
35
|
+
export function formatQuantity(value) {
|
|
36
|
+
return String(Number(value.toPrecision(15)));
|
|
37
|
+
}
|
|
29
38
|
import { dimensionallyDetermines } from '../dimensional/buckingham.js';
|
|
39
|
+
import { formulaShape } from './formula-shape.js';
|
|
40
|
+
/**
|
|
41
|
+
* A Buckingham monomial is the encoded formula only when scaling each known
|
|
42
|
+
* input scales the recovered value by that exponent. A monomial such as
|
|
43
|
+
* `n^(-1/3)` or `∝ 1` can share the target's dimension and still not be the
|
|
44
|
+
* formula, because the formula carries constants the monomial did not use.
|
|
45
|
+
* Samples that the domain refuses leave the monomial in place: this check
|
|
46
|
+
* does not invent a second domain.
|
|
47
|
+
*/
|
|
48
|
+
function encodedMatchesMonomial(edges, target, knownNames, monomial, identifications) {
|
|
49
|
+
if (knownNames.length === 0)
|
|
50
|
+
return true;
|
|
51
|
+
const base = {};
|
|
52
|
+
knownNames.forEach((name, i) => {
|
|
53
|
+
base[name] = 1.7 + 0.3 * i;
|
|
54
|
+
});
|
|
55
|
+
const read = (values) => {
|
|
56
|
+
const retro = retrodictNode(edges, values, target, { identifications });
|
|
57
|
+
const hit = retro.predictions.find((prediction) => Number.isFinite(prediction.value) && prediction.value !== 0);
|
|
58
|
+
return hit?.value;
|
|
59
|
+
};
|
|
60
|
+
const origin = read(base);
|
|
61
|
+
if (origin === undefined)
|
|
62
|
+
return true;
|
|
63
|
+
for (const name of knownNames) {
|
|
64
|
+
const current = base[name];
|
|
65
|
+
if (current === undefined)
|
|
66
|
+
return true;
|
|
67
|
+
const next = read({ ...base, [name]: current * 4 });
|
|
68
|
+
if (next === undefined)
|
|
69
|
+
return true;
|
|
70
|
+
const exponent = monomial[name] ?? 0;
|
|
71
|
+
// A known name the evaluator does not read (G declared beside a law that
|
|
72
|
+
// already bakes G in) does not move the value. That is not a mismatch.
|
|
73
|
+
const unchanged = Math.abs(next - origin) / Math.max(Math.abs(origin), 1e-300) < 1e-9;
|
|
74
|
+
if (unchanged && Math.abs(exponent) > 1e-9)
|
|
75
|
+
continue;
|
|
76
|
+
const expected = origin * Math.pow(4, exponent);
|
|
77
|
+
const scale = Math.max(Math.abs(expected), Math.abs(next), 1e-300);
|
|
78
|
+
if (Math.abs(next - expected) / scale > 1e-6)
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
81
|
+
return true;
|
|
82
|
+
}
|
|
30
83
|
function buildDimMap(edges, extra) {
|
|
31
84
|
const m = new Map();
|
|
32
85
|
for (const e of edges) {
|
|
@@ -89,7 +142,7 @@ function formatMonomial(m) {
|
|
|
89
142
|
.map(([n, e]) => (e === 1 ? n : `${n}^${e}`));
|
|
90
143
|
return parts.join('·') || '1';
|
|
91
144
|
}
|
|
92
|
-
function buildSummary(target, id, derivations, consistency, recoveredValue, dimensional, knownNames) {
|
|
145
|
+
function buildSummary(target, id, derivations, consistency, recoveredValue, dimensional, knownNames, formulaIsSum, encodedMatchesMonomial) {
|
|
93
146
|
const known = knownNames.length
|
|
94
147
|
? `{${knownNames.join(', ')}}`
|
|
95
148
|
: '{} (no inputs)';
|
|
@@ -116,7 +169,7 @@ function buildSummary(target, id, derivations, consistency, recoveredValue, dime
|
|
|
116
169
|
case 'exactly-determined':
|
|
117
170
|
s = `'${target}' is determined from ${known} via ${derivations[0]?.edge} (${derivations[0]?.label}).`;
|
|
118
171
|
if (recoveredValue !== undefined) {
|
|
119
|
-
s += ` Recovered value: ${recoveredValue
|
|
172
|
+
s += ` Recovered value: ${formatQuantity(recoveredValue)}.`;
|
|
120
173
|
}
|
|
121
174
|
break;
|
|
122
175
|
case 'over-determined':
|
|
@@ -154,17 +207,26 @@ function buildSummary(target, id, derivations, consistency, recoveredValue, dime
|
|
|
154
207
|
s += ` The ${id.surplusConstraints} surplus derivation(s) are falsifiable consistency constraints (supply values to check them).`;
|
|
155
208
|
}
|
|
156
209
|
if (recoveredValue !== undefined) {
|
|
157
|
-
s += ` Recovered value: ${recoveredValue
|
|
210
|
+
s += ` Recovered value: ${formatQuantity(recoveredValue)}.`;
|
|
158
211
|
}
|
|
159
212
|
break;
|
|
160
213
|
}
|
|
161
214
|
}
|
|
162
|
-
if (dimensional?.determined && dimensional.monomial) {
|
|
215
|
+
if (dimensional?.determined && dimensional.monomial && formulaIsSum) {
|
|
216
|
+
s += ` The encoded formula adds dimensionful terms, so it is not a proportionality.`;
|
|
217
|
+
}
|
|
218
|
+
else if (dimensional?.determined && dimensional.monomial && !encodedMatchesMonomial) {
|
|
219
|
+
s += ` Dimensionally, those inputs alone do not fix it — the encoded formula carries dimensionful constants.`;
|
|
220
|
+
}
|
|
221
|
+
else if (dimensional?.determined && dimensional.monomial) {
|
|
163
222
|
s += ` Dimensionally, ${known} fix it up to a dimensionless constant: ${target} ∝ ${formatMonomial(dimensional.monomial)}.`;
|
|
164
223
|
}
|
|
165
|
-
else if (dimensional &&
|
|
224
|
+
else if (dimensional?.outsideGoverningSpan && knownNames.length) {
|
|
166
225
|
s += ` Dimensionally, those inputs alone do not fix it — the encoded formula carries dimensionful constants.`;
|
|
167
226
|
}
|
|
227
|
+
else if (dimensional && !dimensional.determined && knownNames.length) {
|
|
228
|
+
s += ` Dimensionally, those inputs alone do not fix a unique monomial.`;
|
|
229
|
+
}
|
|
168
230
|
return s;
|
|
169
231
|
}
|
|
170
232
|
/**
|
|
@@ -228,7 +290,12 @@ export function explainQuantity(edges, target, known, opts = {}) {
|
|
|
228
290
|
.filter((n) => n !== target && dimMap.has(n))
|
|
229
291
|
.map((n) => ({ name: n, dim: dimMap.get(n) }));
|
|
230
292
|
const det = dimensionallyDetermines({ name: target, dim: targetDimForChain }, governing);
|
|
231
|
-
|
|
293
|
+
const symbolic = e?.symbolic;
|
|
294
|
+
const sum = symbolic !== undefined && formulaShape(symbolic) === 'dimensional-sum';
|
|
295
|
+
const leaves = leafInputs.filter((name) => name !== target);
|
|
296
|
+
const agrees = det.monomial !== undefined &&
|
|
297
|
+
encodedMatchesMonomial(edges, target, leaves, det.monomial, identifications);
|
|
298
|
+
if (!sum && det.determined && det.monomial && agrees) {
|
|
232
299
|
dimensionalForm = {
|
|
233
300
|
monomial: det.monomial,
|
|
234
301
|
formula: `${target} ∝ ${formatMonomial(det.monomial)}`,
|
|
@@ -254,7 +321,14 @@ export function explainQuantity(edges, target, known, opts = {}) {
|
|
|
254
321
|
.map((n) => ({ name: n, dim: dimMap.get(n) }));
|
|
255
322
|
dimensional = dimensionallyDetermines({ name: target, dim: targetDim }, governing);
|
|
256
323
|
}
|
|
257
|
-
const
|
|
324
|
+
const formulaIsSum = identifiability.derivations.some((eid) => {
|
|
325
|
+
const symbolic = byId.get(eid)?.symbolic;
|
|
326
|
+
return symbolic !== undefined && formulaShape(symbolic) === 'dimensional-sum';
|
|
327
|
+
});
|
|
328
|
+
const encodedAgrees = dimensional?.determined === true && dimensional.monomial !== undefined
|
|
329
|
+
? encodedMatchesMonomial(edges, target, knownNames, dimensional.monomial, identifications)
|
|
330
|
+
: true;
|
|
331
|
+
const summary = buildSummary(target, identifiability, derivations, consistency, recoveredValue, dimensional, knownNames, formulaIsSum, encodedAgrees);
|
|
258
332
|
return {
|
|
259
333
|
target,
|
|
260
334
|
known: knownNames,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"explain.js","sourceRoot":"","sources":["../../src/composition/explain.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"explain.js","sourceRoot":"","sources":["../../src/composition/explain.ts"],"names":[],"mappings":"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"}
|