universal-physics-tensor 0.45.2 → 0.46.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 +28 -27
- package/dist/atlas/applicability.d.ts +108 -0
- package/dist/atlas/applicability.d.ts.map +1 -0
- package/dist/atlas/applicability.js +301 -0
- package/dist/atlas/applicability.js.map +1 -0
- package/dist/atlas/association.d.ts +92 -0
- package/dist/atlas/association.d.ts.map +1 -0
- package/dist/atlas/association.js +112 -0
- package/dist/atlas/association.js.map +1 -0
- package/dist/atlas/benchmark/backend-shapes.d.ts +47 -0
- package/dist/atlas/benchmark/backend-shapes.d.ts.map +1 -0
- package/dist/atlas/benchmark/backend-shapes.js +58 -0
- package/dist/atlas/benchmark/backend-shapes.js.map +1 -0
- package/dist/atlas/benchmark/baselines.d.ts +64 -0
- package/dist/atlas/benchmark/baselines.d.ts.map +1 -0
- package/dist/atlas/benchmark/baselines.js +112 -0
- package/dist/atlas/benchmark/baselines.js.map +1 -0
- package/dist/atlas/benchmark/leakage.d.ts +56 -0
- package/dist/atlas/benchmark/leakage.d.ts.map +1 -0
- package/dist/atlas/benchmark/leakage.js +100 -0
- package/dist/atlas/benchmark/leakage.js.map +1 -0
- package/dist/atlas/benchmark/loader.d.ts +56 -0
- package/dist/atlas/benchmark/loader.d.ts.map +1 -0
- package/dist/atlas/benchmark/loader.js +104 -0
- package/dist/atlas/benchmark/loader.js.map +1 -0
- package/dist/atlas/benchmark/run-atlas.d.ts +72 -0
- package/dist/atlas/benchmark/run-atlas.d.ts.map +1 -0
- package/dist/atlas/benchmark/run-atlas.js +210 -0
- package/dist/atlas/benchmark/run-atlas.js.map +1 -0
- package/dist/atlas/benchmark/stats.d.ts +90 -0
- package/dist/atlas/benchmark/stats.d.ts.map +1 -0
- package/dist/atlas/benchmark/stats.js +159 -0
- package/dist/atlas/benchmark/stats.js.map +1 -0
- package/dist/atlas/benchmark/study.d.ts +120 -0
- package/dist/atlas/benchmark/study.d.ts.map +1 -0
- package/dist/atlas/benchmark/study.js +192 -0
- package/dist/atlas/benchmark/study.js.map +1 -0
- package/dist/atlas/benchmark/types.d.ts +79 -0
- package/dist/atlas/benchmark/types.d.ts.map +1 -0
- package/dist/atlas/benchmark/types.js +46 -0
- package/dist/atlas/benchmark/types.js.map +1 -0
- package/dist/atlas/composition-table.d.ts +55 -0
- package/dist/atlas/composition-table.d.ts.map +1 -0
- package/dist/atlas/composition-table.js +133 -0
- package/dist/atlas/composition-table.js.map +1 -0
- package/dist/atlas/conventions.d.ts +63 -0
- package/dist/atlas/conventions.d.ts.map +1 -0
- package/dist/atlas/conventions.js +93 -0
- package/dist/atlas/conventions.js.map +1 -0
- package/dist/atlas/coverage.d.ts +93 -0
- package/dist/atlas/coverage.d.ts.map +1 -0
- package/dist/atlas/coverage.js +69 -0
- package/dist/atlas/coverage.js.map +1 -0
- package/dist/atlas/derivation.d.ts +137 -0
- package/dist/atlas/derivation.d.ts.map +1 -0
- package/dist/atlas/derivation.js +190 -0
- package/dist/atlas/derivation.js.map +1 -0
- package/dist/atlas/derive-evidence.d.ts +218 -0
- package/dist/atlas/derive-evidence.d.ts.map +1 -0
- package/dist/atlas/derive-evidence.js +225 -0
- package/dist/atlas/derive-evidence.js.map +1 -0
- package/dist/atlas/diffusion/bridges-closure.d.ts +63 -0
- package/dist/atlas/diffusion/bridges-closure.d.ts.map +1 -0
- package/dist/atlas/diffusion/bridges-closure.js +324 -0
- package/dist/atlas/diffusion/bridges-closure.js.map +1 -0
- package/dist/atlas/diffusion/bridges.d.ts +36 -0
- package/dist/atlas/diffusion/bridges.d.ts.map +1 -0
- package/dist/atlas/diffusion/bridges.js +226 -0
- package/dist/atlas/diffusion/bridges.js.map +1 -0
- package/dist/atlas/diffusion/dimensions.d.ts +21 -0
- package/dist/atlas/diffusion/dimensions.d.ts.map +1 -0
- package/dist/atlas/diffusion/dimensions.js +21 -0
- package/dist/atlas/diffusion/dimensions.js.map +1 -0
- package/dist/atlas/diffusion/index.d.ts +16 -0
- package/dist/atlas/diffusion/index.d.ts.map +1 -0
- package/dist/atlas/diffusion/index.js +23 -0
- package/dist/atlas/diffusion/index.js.map +1 -0
- package/dist/atlas/diffusion/models.d.ts +24 -0
- package/dist/atlas/diffusion/models.d.ts.map +1 -0
- package/dist/atlas/diffusion/models.js +139 -0
- package/dist/atlas/diffusion/models.js.map +1 -0
- package/dist/atlas/diffusion/numerics.d.ts +181 -0
- package/dist/atlas/diffusion/numerics.d.ts.map +1 -0
- package/dist/atlas/diffusion/numerics.js +251 -0
- package/dist/atlas/diffusion/numerics.js.map +1 -0
- package/dist/atlas/error-algebra.d.ts +52 -0
- package/dist/atlas/error-algebra.d.ts.map +1 -0
- package/dist/atlas/error-algebra.js +55 -0
- package/dist/atlas/error-algebra.js.map +1 -0
- package/dist/atlas/export.d.ts +48 -0
- package/dist/atlas/export.d.ts.map +1 -0
- package/dist/atlas/export.js +106 -0
- package/dist/atlas/export.js.map +1 -0
- package/dist/atlas/families.d.ts +14 -0
- package/dist/atlas/families.d.ts.map +1 -0
- package/dist/atlas/families.js +20 -0
- package/dist/atlas/families.js.map +1 -0
- package/dist/atlas/index.d.ts +90 -0
- package/dist/atlas/index.d.ts.map +1 -0
- package/dist/atlas/index.js +69 -0
- package/dist/atlas/index.js.map +1 -0
- package/dist/atlas/link-prediction.d.ts +71 -0
- package/dist/atlas/link-prediction.d.ts.map +1 -0
- package/dist/atlas/link-prediction.js +128 -0
- package/dist/atlas/link-prediction.js.map +1 -0
- package/dist/atlas/model.d.ts +70 -0
- package/dist/atlas/model.d.ts.map +1 -0
- package/dist/atlas/model.js +26 -0
- package/dist/atlas/model.js.map +1 -0
- package/dist/atlas/oscillators/bridges-coarse.d.ts +71 -0
- package/dist/atlas/oscillators/bridges-coarse.d.ts.map +1 -0
- package/dist/atlas/oscillators/bridges-coarse.js +146 -0
- package/dist/atlas/oscillators/bridges-coarse.js.map +1 -0
- package/dist/atlas/oscillators/bridges-exact.d.ts +70 -0
- package/dist/atlas/oscillators/bridges-exact.d.ts.map +1 -0
- package/dist/atlas/oscillators/bridges-exact.js +227 -0
- package/dist/atlas/oscillators/bridges-exact.js.map +1 -0
- package/dist/atlas/oscillators/bridges-limits.d.ts +118 -0
- package/dist/atlas/oscillators/bridges-limits.d.ts.map +1 -0
- package/dist/atlas/oscillators/bridges-limits.js +342 -0
- package/dist/atlas/oscillators/bridges-limits.js.map +1 -0
- package/dist/atlas/oscillators/dimensions.d.ts +34 -0
- package/dist/atlas/oscillators/dimensions.d.ts.map +1 -0
- package/dist/atlas/oscillators/dimensions.js +34 -0
- package/dist/atlas/oscillators/dimensions.js.map +1 -0
- package/dist/atlas/oscillators/index.d.ts +38 -0
- package/dist/atlas/oscillators/index.d.ts.map +1 -0
- package/dist/atlas/oscillators/index.js +37 -0
- package/dist/atlas/oscillators/index.js.map +1 -0
- package/dist/atlas/oscillators/models.d.ts +25 -0
- package/dist/atlas/oscillators/models.d.ts.map +1 -0
- package/dist/atlas/oscillators/models.js +160 -0
- package/dist/atlas/oscillators/models.js.map +1 -0
- package/dist/atlas/oscillators/rejections.d.ts +21 -0
- package/dist/atlas/oscillators/rejections.d.ts.map +1 -0
- package/dist/atlas/oscillators/rejections.js +54 -0
- package/dist/atlas/oscillators/rejections.js.map +1 -0
- package/dist/atlas/path-bound.d.ts +143 -0
- package/dist/atlas/path-bound.d.ts.map +1 -0
- package/dist/atlas/path-bound.js +268 -0
- package/dist/atlas/path-bound.js.map +1 -0
- package/dist/atlas/poster/associations.d.ts +66 -0
- package/dist/atlas/poster/associations.d.ts.map +1 -0
- package/dist/atlas/poster/associations.js +90 -0
- package/dist/atlas/poster/associations.js.map +1 -0
- package/dist/atlas/poster/derivations.d.ts +156 -0
- package/dist/atlas/poster/derivations.d.ts.map +1 -0
- package/dist/atlas/poster/derivations.js +430 -0
- package/dist/atlas/poster/derivations.js.map +1 -0
- package/dist/atlas/poster/statements.d.ts +198 -0
- package/dist/atlas/poster/statements.d.ts.map +1 -0
- package/dist/atlas/poster/statements.js +365 -0
- package/dist/atlas/poster/statements.js.map +1 -0
- package/dist/atlas/public.d.ts +26 -0
- package/dist/atlas/public.d.ts.map +1 -0
- package/dist/atlas/public.js +21 -0
- package/dist/atlas/public.js.map +1 -0
- package/dist/atlas/regime.d.ts +171 -0
- package/dist/atlas/regime.d.ts.map +1 -0
- package/dist/atlas/regime.js +309 -0
- package/dist/atlas/regime.js.map +1 -0
- package/dist/atlas/serialize.d.ts +50 -0
- package/dist/atlas/serialize.d.ts.map +1 -0
- package/dist/atlas/serialize.js +180 -0
- package/dist/atlas/serialize.js.map +1 -0
- package/dist/atlas/statement.d.ts +165 -0
- package/dist/atlas/statement.d.ts.map +1 -0
- package/dist/atlas/statement.js +176 -0
- package/dist/atlas/statement.js.map +1 -0
- package/dist/atlas/types.d.ts +308 -0
- package/dist/atlas/types.d.ts.map +1 -0
- package/dist/atlas/types.js +61 -0
- package/dist/atlas/types.js.map +1 -0
- package/dist/atlas/waves/bridges-closure.d.ts +39 -0
- package/dist/atlas/waves/bridges-closure.d.ts.map +1 -0
- package/dist/atlas/waves/bridges-closure.js +223 -0
- package/dist/atlas/waves/bridges-closure.js.map +1 -0
- package/dist/atlas/waves/bridges.d.ts +49 -0
- package/dist/atlas/waves/bridges.d.ts.map +1 -0
- package/dist/atlas/waves/bridges.js +265 -0
- package/dist/atlas/waves/bridges.js.map +1 -0
- package/dist/atlas/waves/index.d.ts +16 -0
- package/dist/atlas/waves/index.d.ts.map +1 -0
- package/dist/atlas/waves/index.js +23 -0
- package/dist/atlas/waves/index.js.map +1 -0
- package/dist/atlas/waves/models.d.ts +29 -0
- package/dist/atlas/waves/models.d.ts.map +1 -0
- package/dist/atlas/waves/models.js +127 -0
- package/dist/atlas/waves/models.js.map +1 -0
- package/dist/atlas/waves/numerics.d.ts +149 -0
- package/dist/atlas/waves/numerics.d.ts.map +1 -0
- package/dist/atlas/waves/numerics.js +218 -0
- package/dist/atlas/waves/numerics.js.map +1 -0
- package/dist/atlas/witness-artifact.d.ts +65 -0
- package/dist/atlas/witness-artifact.d.ts.map +1 -0
- package/dist/atlas/witness-artifact.js +78 -0
- package/dist/atlas/witness-artifact.js.map +1 -0
- package/dist/atlas/witness-numeric.d.ts +81 -0
- package/dist/atlas/witness-numeric.d.ts.map +1 -0
- package/dist/atlas/witness-numeric.js +105 -0
- package/dist/atlas/witness-numeric.js.map +1 -0
- package/dist/atlas/witness-result.d.ts +77 -0
- package/dist/atlas/witness-result.d.ts.map +1 -0
- package/dist/atlas/witness-result.js +39 -0
- package/dist/atlas/witness-result.js.map +1 -0
- package/dist/atlas/witness-specs.d.ts +110 -0
- package/dist/atlas/witness-specs.d.ts.map +1 -0
- package/dist/atlas/witness-specs.js +372 -0
- package/dist/atlas/witness-specs.js.map +1 -0
- package/dist/atlas/witness-symbolic.d.ts +79 -0
- package/dist/atlas/witness-symbolic.d.ts.map +1 -0
- package/dist/atlas/witness-symbolic.js +140 -0
- package/dist/atlas/witness-symbolic.js.map +1 -0
- package/dist/atlas/witnesses/quantum-support.d.ts +50 -0
- package/dist/atlas/witnesses/quantum-support.d.ts.map +1 -0
- package/dist/atlas/witnesses/quantum-support.js +48 -0
- package/dist/atlas/witnesses/quantum-support.js.map +1 -0
- package/dist/bridges/be11-decoherence-confrontation.js.map +1 -1
- package/dist/bridges/be21-kss-confrontation.js.map +1 -1
- package/dist/bridges/be23-planckian-confrontation.js.map +1 -1
- package/dist/bridges/be35-bootstrap-confrontation.js.map +1 -1
- package/dist/bridges/be36-gw170817-confrontation.js.map +1 -1
- package/dist/bridges/be37-cassini-confrontation.js.map +1 -1
- package/dist/bridges/be48-collapse-confrontation.js.map +1 -1
- package/dist/bridges/be51-lensing-confrontation.js.map +1 -1
- package/dist/bridges/be52-mercury-confrontation.js.map +1 -1
- package/dist/bridges/be55-quantum-hall-confrontation.js.map +1 -1
- package/dist/bridges/be56-casimir-confrontation.js.map +1 -1
- package/dist/bridges/be58-johnson-nyquist-confrontation.js.map +1 -1
- package/dist/bridges/be59-ac-josephson-confrontation.js.map +1 -1
- package/dist/bridges/be60-fractional-qh-confrontation.js.map +1 -1
- package/dist/bridges/be61-wiedemann-franz-confrontation.js.map +1 -1
- package/dist/bridges/be62-bcs-gap-confrontation.js.map +1 -1
- package/dist/bridges/be63-chandrasekhar-mass-confrontation.js.map +1 -1
- package/dist/bridges/be64-eddington-luminosity-confrontation.js.map +1 -1
- package/dist/bridges/be65-jeans-mass-confrontation.js.map +1 -1
- package/dist/bridges/bridge-equations.d.ts +2 -1
- package/dist/bridges/bridge-equations.d.ts.map +1 -1
- package/dist/bridges/bridge-equations.js +3 -2
- package/dist/bridges/bridge-equations.js.map +1 -1
- package/dist/bridges/catalog-adapter.d.ts.map +1 -1
- package/dist/bridges/catalog-adapter.js.map +1 -1
- package/dist/bridges/equations/_be-helpers.d.ts +2 -2
- package/dist/bridges/equations/_be-helpers.js +2 -2
- package/dist/bridges/equations/be-20-vacuum-energy.js.map +1 -1
- package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts +88 -58
- package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts.map +1 -1
- package/dist/bridges/equations/be-35-conformal-bootstrap.js +102 -62
- package/dist/bridges/equations/be-35-conformal-bootstrap.js.map +1 -1
- package/dist/bridges/equations/be-48-grw-localization.d.ts +9 -8
- package/dist/bridges/equations/be-48-grw-localization.d.ts.map +1 -1
- package/dist/bridges/equations/be-48-grw-localization.js +9 -8
- package/dist/bridges/equations/be-48-grw-localization.js.map +1 -1
- package/dist/bridges/gravitational-lensing.d.ts +10 -0
- package/dist/bridges/gravitational-lensing.d.ts.map +1 -1
- package/dist/bridges/gravitational-lensing.js.map +1 -1
- package/dist/bridges/index.d.ts +125 -7
- package/dist/bridges/index.d.ts.map +1 -1
- package/dist/bridges/index.js +483 -20
- package/dist/bridges/index.js.map +1 -1
- package/dist/bridges/perihelion-precession.d.ts +10 -0
- package/dist/bridges/perihelion-precession.d.ts.map +1 -1
- package/dist/bridges/perihelion-precession.js.map +1 -1
- package/dist/bridges/rhs-registry.js +2 -2
- package/dist/canonical/canonical-equation.d.ts +15 -0
- package/dist/canonical/canonical-equation.d.ts.map +1 -1
- package/dist/canonical/entries/_l1-build.d.ts +1 -1
- package/dist/canonical/entries/_l1-build.d.ts.map +1 -1
- package/dist/canonical/entries/atomic.d.ts.map +1 -1
- package/dist/canonical/entries/atomic.js +23 -0
- package/dist/canonical/entries/atomic.js.map +1 -1
- package/dist/canonical/entries/nonmonomial.d.ts.map +1 -1
- package/dist/canonical/entries/nonmonomial.js +93 -0
- package/dist/canonical/entries/nonmonomial.js.map +1 -1
- package/dist/canonical/normal-form.js.map +1 -1
- package/dist/canonical/residual.d.ts +28 -0
- package/dist/canonical/residual.d.ts.map +1 -0
- package/dist/canonical/residual.js +31 -0
- package/dist/canonical/residual.js.map +1 -0
- package/dist/cli/command.d.ts +8 -0
- package/dist/cli/command.d.ts.map +1 -1
- package/dist/cli/command.js +10 -0
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/commands/atlas.d.ts +3 -0
- package/dist/cli/commands/atlas.d.ts.map +1 -0
- package/dist/cli/commands/atlas.js +158 -0
- package/dist/cli/commands/atlas.js.map +1 -0
- package/dist/cli/commands/confront.js.map +1 -1
- package/dist/cli/commands/coverage.js +3 -3
- package/dist/cli/commands/index.d.ts +3 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +3 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/map.d.ts.map +1 -1
- package/dist/cli/commands/map.js +161 -27
- package/dist/cli/commands/map.js.map +1 -1
- package/dist/cli/commands/path.d.ts +3 -0
- package/dist/cli/commands/path.d.ts.map +1 -0
- package/dist/cli/commands/path.js +145 -0
- package/dist/cli/commands/path.js.map +1 -0
- package/dist/cli/commands/recover.d.ts.map +1 -1
- package/dist/cli/commands/recover.js +25 -6
- package/dist/cli/commands/recover.js.map +1 -1
- package/dist/cli/commands/regime.d.ts +14 -0
- package/dist/cli/commands/regime.d.ts.map +1 -0
- package/dist/cli/commands/regime.js +189 -0
- package/dist/cli/commands/regime.js.map +1 -0
- package/dist/cli/errors.d.ts.map +1 -1
- package/dist/cli/graphs.d.ts.map +1 -1
- package/dist/cli/graphs.js +5 -1
- package/dist/cli/graphs.js.map +1 -1
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +22 -0
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/output.d.ts +6 -1
- package/dist/cli/output.d.ts.map +1 -1
- package/dist/cli/output.js.map +1 -1
- package/dist/cli/version.js.map +1 -1
- package/dist/cli-api.d.ts +16 -0
- package/dist/cli-api.d.ts.map +1 -1
- package/dist/cli-api.js +18 -0
- package/dist/cli-api.js.map +1 -1
- package/dist/composition/axis-audit.js.map +1 -1
- package/dist/composition/bridge-prediction.d.ts.map +1 -1
- package/dist/composition/bridge-prediction.js +0 -0
- package/dist/composition/bridge-prediction.js.map +1 -1
- package/dist/composition/canonical-graph.d.ts +2 -2
- package/dist/composition/canonical-graph.js +2 -2
- package/dist/composition/canonical-graph.js.map +1 -1
- package/dist/composition/compose-symbolic.d.ts.map +1 -1
- package/dist/composition/compose-symbolic.js.map +1 -1
- package/dist/composition/compose.d.ts.map +1 -1
- package/dist/composition/compose.js +80 -1
- package/dist/composition/compose.js.map +1 -1
- package/dist/composition/consequence.js.map +1 -1
- package/dist/composition/discovery.js.map +1 -1
- package/dist/composition/edge.d.ts +64 -0
- package/dist/composition/edge.d.ts.map +1 -1
- package/dist/composition/edge.js +29 -0
- package/dist/composition/edge.js.map +1 -1
- package/dist/composition/edges/calibration.d.ts.map +1 -1
- package/dist/composition/edges/calibration.js +46 -0
- package/dist/composition/edges/calibration.js.map +1 -1
- package/dist/composition/edges/catalog-quantum.d.ts.map +1 -1
- package/dist/composition/edges/catalog-quantum.js +9 -0
- package/dist/composition/edges/catalog-quantum.js.map +1 -1
- package/dist/composition/edges/catalog-tranche.d.ts.map +1 -1
- package/dist/composition/edges/catalog-tranche.js +18 -0
- package/dist/composition/edges/catalog-tranche.js.map +1 -1
- package/dist/composition/enumerate.js.map +1 -1
- package/dist/composition/explain.js.map +1 -1
- package/dist/composition/expr-eval.d.ts.map +1 -1
- package/dist/composition/expr-eval.js.map +1 -1
- package/dist/composition/expr-simplify.d.ts +13 -0
- package/dist/composition/expr-simplify.d.ts.map +1 -1
- package/dist/composition/expr-simplify.js +25 -0
- package/dist/composition/expr-simplify.js.map +1 -1
- package/dist/composition/expr-subst.js.map +1 -1
- package/dist/composition/graph-viz-svg.d.ts.map +1 -1
- package/dist/composition/graph-viz.d.ts +118 -1
- package/dist/composition/graph-viz.d.ts.map +1 -1
- package/dist/composition/graph-viz.js +189 -6
- package/dist/composition/graph-viz.js.map +1 -1
- package/dist/composition/identifiability.js.map +1 -1
- package/dist/composition/index.d.ts +4 -2
- package/dist/composition/index.d.ts.map +1 -1
- package/dist/composition/index.js +2 -1
- package/dist/composition/index.js.map +1 -1
- package/dist/composition/poster-source.d.ts +153 -0
- package/dist/composition/poster-source.d.ts.map +1 -0
- package/dist/composition/poster-source.js +183 -0
- package/dist/composition/poster-source.js.map +1 -0
- package/dist/composition/probe/backend-protocol.d.ts +34 -1
- package/dist/composition/probe/backend-protocol.d.ts.map +1 -1
- package/dist/composition/probe/backend-protocol.js +9 -2
- package/dist/composition/probe/backend-protocol.js.map +1 -1
- package/dist/composition/probe/candidate-store.d.ts.map +1 -1
- package/dist/composition/probe/limits.js.map +1 -1
- package/dist/composition/probe/pipeline.js.map +1 -1
- package/dist/composition/probe/problem.js.map +1 -1
- package/dist/composition/probe/residual.d.ts.map +1 -1
- package/dist/composition/probe/residual.js.map +1 -1
- package/dist/composition/probe/search-budget.js.map +1 -1
- package/dist/composition/proposed-bridges.d.ts +2 -2
- package/dist/composition/proposed-bridges.d.ts.map +1 -1
- package/dist/composition/proposed-bridges.js +1 -1
- package/dist/composition/proposed-bridges.js.map +1 -1
- package/dist/composition/retrodiction.js.map +1 -1
- package/dist/composition/uncertainty.d.ts +52 -2
- package/dist/composition/uncertainty.d.ts.map +1 -1
- package/dist/composition/uncertainty.js +38 -2
- package/dist/composition/uncertainty.js.map +1 -1
- package/dist/composition/user-equation.d.ts.map +1 -1
- package/dist/core/flux-rules.d.ts.map +1 -1
- package/dist/core/flux-rules.js.map +1 -1
- package/dist/core/labeled-tensor.d.ts.map +1 -1
- package/dist/core/regime-registry.d.ts.map +1 -1
- package/dist/core/regime-rule-install.js.map +1 -1
- package/dist/core/tensor.d.ts.map +1 -1
- package/dist/core/tensor.js.map +1 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/diff/bridge-ast-gradient.js.map +1 -1
- package/dist/dimensional/ast-types.d.ts +31 -1
- package/dist/dimensional/ast-types.d.ts.map +1 -1
- package/dist/dimensional/bridge-check.d.ts +1 -1
- package/dist/dimensional/bridge-check.js +1 -1
- package/dist/dimensional/buckingham.d.ts.map +1 -1
- package/dist/dimensional/connection.d.ts +2 -0
- package/dist/dimensional/connection.d.ts.map +1 -1
- package/dist/dimensional/connection.js +2 -0
- package/dist/dimensional/connection.js.map +1 -1
- package/dist/dimensional/curvature-composite.d.ts +5 -3
- package/dist/dimensional/curvature-composite.d.ts.map +1 -1
- package/dist/dimensional/curvature-composite.js +1 -0
- package/dist/dimensional/curvature-composite.js.map +1 -1
- package/dist/dimensional/curvature-invariants.d.ts +2 -0
- package/dist/dimensional/curvature-invariants.d.ts.map +1 -1
- package/dist/dimensional/curvature-invariants.js +2 -0
- package/dist/dimensional/curvature-invariants.js.map +1 -1
- package/dist/dimensional/dimension-spec.d.ts.map +1 -1
- package/dist/dimensional/einstein-equation.d.ts +3 -3
- package/dist/dimensional/einstein-equation.js +3 -3
- package/dist/dimensional/errors.d.ts.map +1 -1
- package/dist/dimensional/metric.d.ts +5 -2
- package/dist/dimensional/metric.d.ts.map +1 -1
- package/dist/dimensional/metric.js +5 -2
- package/dist/dimensional/metric.js.map +1 -1
- package/dist/dimensional/tensor-trace.js.map +1 -1
- package/dist/dimensional/validator-registry.js.map +1 -1
- package/dist/dimensional/validator.d.ts +3 -2
- package/dist/dimensional/validator.d.ts.map +1 -1
- package/dist/dimensional/validator.js +23 -4
- package/dist/dimensional/validator.js.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/numerical/curvature-lowering-helpers.d.ts.map +1 -1
- package/dist/numerical/curvature-lowering-helpers.js +104 -0
- package/dist/numerical/curvature-lowering-helpers.js.map +1 -1
- package/dist/numerical/errors.d.ts.map +1 -1
- package/dist/numerical/errors.js.map +1 -1
- package/dist/numerical/float64-engine.d.ts.map +1 -1
- package/dist/numerical/float64-engine.js +51 -24
- package/dist/numerical/float64-engine.js.map +1 -1
- package/dist/numerical/formula-dimension.d.ts.map +1 -1
- package/dist/numerical/formula-dimension.js.map +1 -1
- package/dist/numerical/formula.d.ts.map +1 -1
- package/dist/numerical/formula.js.map +1 -1
- package/dist/numerical/geometrized.d.ts.map +1 -1
- package/dist/numerical/gl4-integrator.d.ts +3 -3
- package/dist/numerical/gl4-integrator.js +3 -3
- package/dist/numerical/killing.d.ts +47 -5
- package/dist/numerical/killing.d.ts.map +1 -1
- package/dist/numerical/killing.js +41 -3
- package/dist/numerical/killing.js.map +1 -1
- package/dist/numerical/klein-gordon.d.ts +2 -2
- package/dist/numerical/klein-gordon.js +2 -2
- package/dist/numerical/lowering.d.ts +2 -2
- package/dist/numerical/lowering.d.ts.map +1 -1
- package/dist/numerical/lowering.js +5 -3
- package/dist/numerical/lowering.js.map +1 -1
- package/dist/numerical/mathts-engine.d.ts.map +1 -1
- package/dist/numerical/mathts-engine.js.map +1 -1
- package/dist/numerical/metric-inverse.js.map +1 -1
- package/dist/numerical/perihelion-finder.d.ts +15 -13
- package/dist/numerical/perihelion-finder.d.ts.map +1 -1
- package/dist/numerical/perihelion-finder.js +15 -13
- package/dist/numerical/perihelion-finder.js.map +1 -1
- package/dist/numerical/weyl-lowering.d.ts.map +1 -1
- package/dist/numerical/weyl-lowering.js +90 -40
- package/dist/numerical/weyl-lowering.js.map +1 -1
- package/package.json +121 -104
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Atlas Phase 4, S4.4 — the three bridges of the diffusion family.
|
|
3
|
+
*
|
|
4
|
+
* Design note: `docs/planning/Atlas-Phase-4-Design.md` §4.
|
|
5
|
+
*
|
|
6
|
+
* | Bridge | Relation | Witnesses |
|
|
7
|
+
* |---|---|---|
|
|
8
|
+
* | random walk → Fick | `coarse-graining` | WD1 (convergence), WD1b (light cone) |
|
|
9
|
+
* | heat ↔ Fick | `exact-equivalence` | WD2 (convergence), WD2s (CAS) |
|
|
10
|
+
* | free Schrödinger → Fick | `analytic-continuation` | W5, WD3 (convergence), WD3b (norm) |
|
|
11
|
+
*
|
|
12
|
+
* Regime groups are DERIVED through `deriveRegimeGroups` and keyed by
|
|
13
|
+
* `PiGroup.formula`; every inequality names one of those keys. The Fourier
|
|
14
|
+
* number `D·t/ℓ²` appears as `kappa · rho^-1 · cp^-1 · ell^-2 · t` on the heat
|
|
15
|
+
* side. **The Péclet number is not applicable to any model here**: it needs an
|
|
16
|
+
* advection velocity, and none of the four models has one. It is stated as a
|
|
17
|
+
* side condition (`no advection`) rather than invented as a group.
|
|
18
|
+
*
|
|
19
|
+
* Tolerances were set AFTER measuring each witness at several resolutions and
|
|
20
|
+
* are stated in the witness records; `tests/atlas/diffusion.test.ts` asserts
|
|
21
|
+
* the measured numbers.
|
|
22
|
+
*
|
|
23
|
+
* @module atlas/diffusion/bridges
|
|
24
|
+
*/
|
|
25
|
+
import type { AtlasBridge } from '../types.js';
|
|
26
|
+
/** The Δt/t ceiling of the walk → diffusion regime: WD1's coarse resolution, 100 steps. @internal */
|
|
27
|
+
export declare const WALK_MAX_STEP_FRACTION = 0.01;
|
|
28
|
+
/** Bridge: lattice random walk → Fick diffusion, by coarse-graining. @internal */
|
|
29
|
+
export declare const BRIDGE_WALK_DIFFUSION: AtlasBridge;
|
|
30
|
+
/** Bridge: heat conduction ↔ Fick diffusion, an exact equivalence. @internal */
|
|
31
|
+
export declare const BRIDGE_HEAT_DIFFUSION: AtlasBridge;
|
|
32
|
+
/** Bridge: free Schrödinger → Fick diffusion, by Wick rotation. @internal */
|
|
33
|
+
export declare const BRIDGE_SCHRODINGER_DIFFUSION: AtlasBridge;
|
|
34
|
+
/** The diffusion family's bridges, in design-note order. @internal */
|
|
35
|
+
export declare const DIFFUSION_BRIDGES: readonly AtlasBridge[];
|
|
36
|
+
//# sourceMappingURL=bridges.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridges.d.ts","sourceRoot":"","sources":["../../../src/atlas/diffusion/bridges.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAO/C,qGAAqG;AACrG,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAE3C,kFAAkF;AAClF,eAAO,MAAM,qBAAqB,EAAE,WAwEnC,CAAC;AAEF,gFAAgF;AAChF,eAAO,MAAM,qBAAqB,EAAE,WA2DnC,CAAC;AAEF,6EAA6E;AAC7E,eAAO,MAAM,4BAA4B,EAAE,WAmE1C,CAAC;AAEF,sEAAsE;AACtE,eAAO,MAAM,iBAAiB,EAAE,SAAS,WAAW,EAInD,CAAC"}
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Atlas Phase 4, S4.4 — the three bridges of the diffusion family.
|
|
3
|
+
*
|
|
4
|
+
* Design note: `docs/planning/Atlas-Phase-4-Design.md` §4.
|
|
5
|
+
*
|
|
6
|
+
* | Bridge | Relation | Witnesses |
|
|
7
|
+
* |---|---|---|
|
|
8
|
+
* | random walk → Fick | `coarse-graining` | WD1 (convergence), WD1b (light cone) |
|
|
9
|
+
* | heat ↔ Fick | `exact-equivalence` | WD2 (convergence), WD2s (CAS) |
|
|
10
|
+
* | free Schrödinger → Fick | `analytic-continuation` | W5, WD3 (convergence), WD3b (norm) |
|
|
11
|
+
*
|
|
12
|
+
* Regime groups are DERIVED through `deriveRegimeGroups` and keyed by
|
|
13
|
+
* `PiGroup.formula`; every inequality names one of those keys. The Fourier
|
|
14
|
+
* number `D·t/ℓ²` appears as `kappa · rho^-1 · cp^-1 · ell^-2 · t` on the heat
|
|
15
|
+
* side. **The Péclet number is not applicable to any model here**: it needs an
|
|
16
|
+
* advection velocity, and none of the four models has one. It is stated as a
|
|
17
|
+
* side condition (`no advection`) rather than invented as a group.
|
|
18
|
+
*
|
|
19
|
+
* Tolerances were set AFTER measuring each witness at several resolutions and
|
|
20
|
+
* are stated in the witness records; `tests/atlas/diffusion.test.ts` asserts
|
|
21
|
+
* the measured numbers.
|
|
22
|
+
*
|
|
23
|
+
* @module atlas/diffusion/bridges
|
|
24
|
+
*/
|
|
25
|
+
import { LENGTH, MASS, ACTION, TIME } from '../../dimensional/types.js';
|
|
26
|
+
import { deriveRegimeGroups } from '../regime.js';
|
|
27
|
+
import { DENSITY, DIFFUSIVITY, SPECIFIC_HEAT, THERMAL_CONDUCTIVITY } from './dimensions.js';
|
|
28
|
+
import { DIFFUSION_FAMILY_NAME } from './models.js';
|
|
29
|
+
const TEST = 'tests/atlas/diffusion.test.ts';
|
|
30
|
+
const WITNESS_RESULTS_TEST = 'tests/atlas/witness-results.test.ts';
|
|
31
|
+
/** The Δt/t ceiling of the walk → diffusion regime: WD1's coarse resolution, 100 steps. @internal */
|
|
32
|
+
export const WALK_MAX_STEP_FRACTION = 0.01;
|
|
33
|
+
/** Bridge: lattice random walk → Fick diffusion, by coarse-graining. @internal */
|
|
34
|
+
export const BRIDGE_WALK_DIFFUSION = {
|
|
35
|
+
id: 'ab-walk-diffusion',
|
|
36
|
+
relation: 'coarse-graining',
|
|
37
|
+
premises: ['model-random-walk'],
|
|
38
|
+
conclusion: 'model-fick',
|
|
39
|
+
transformation: 'P(n, k)/(2Δx) ↦ c(x = nΔx, t = kΔt), with the closure D = Δx²/(2Δt)',
|
|
40
|
+
preserves: [
|
|
41
|
+
'mean-square displacement ⟨x²⟩ = 2Dt, exactly at every step',
|
|
42
|
+
'total probability',
|
|
43
|
+
'the Gaussian long-time profile',
|
|
44
|
+
],
|
|
45
|
+
doesNotPreserve: [
|
|
46
|
+
'the lattice spacing Δx and the step Δt as independent scales — only Δx²/Δt survives',
|
|
47
|
+
'parity: after an even number of steps only even sites are occupied',
|
|
48
|
+
'the finite propagation speed Δx/Δt: diffusion is positive everywhere at once',
|
|
49
|
+
],
|
|
50
|
+
sideConditions: [
|
|
51
|
+
'the closure D = Δx²/(2Δt) is held fixed as Δx, Δt → 0',
|
|
52
|
+
'many steps: Δt/t ≪ 1',
|
|
53
|
+
'symmetric, unbiased steps',
|
|
54
|
+
],
|
|
55
|
+
regime: {
|
|
56
|
+
family: DIFFUSION_FAMILY_NAME,
|
|
57
|
+
inequalities: [
|
|
58
|
+
{
|
|
59
|
+
group: 'dt · t^-1',
|
|
60
|
+
op: '<=',
|
|
61
|
+
bound: WALK_MAX_STEP_FRACTION,
|
|
62
|
+
alias: 'Δt/t ≪ 1 (machine form ≤ 0.01, the coarse resolution WD1 measures)',
|
|
63
|
+
},
|
|
64
|
+
],
|
|
65
|
+
groupDefinitions: deriveRegimeGroups(DIFFUSION_FAMILY_NAME, [
|
|
66
|
+
{ name: 'dx', dim: LENGTH },
|
|
67
|
+
{ name: 'dt', dim: TIME },
|
|
68
|
+
{ name: 'D', dim: DIFFUSIVITY },
|
|
69
|
+
{ name: 't', dim: TIME },
|
|
70
|
+
], []),
|
|
71
|
+
},
|
|
72
|
+
counterexamples: [
|
|
73
|
+
{
|
|
74
|
+
description: 'After 100 steps the walker cannot be more than 100 sites from the origin, so its ' +
|
|
75
|
+
'density at site 101 is exactly 0, while the diffusion kernel there is positive: the ' +
|
|
76
|
+
'coarse-grained model has no light cone.',
|
|
77
|
+
witness: 'WD1b',
|
|
78
|
+
},
|
|
79
|
+
],
|
|
80
|
+
evidence: new Set(['proposed', 'numerically-supported']),
|
|
81
|
+
witnesses: [
|
|
82
|
+
{
|
|
83
|
+
id: 'WD1',
|
|
84
|
+
kind: 'numeric',
|
|
85
|
+
test: TEST,
|
|
86
|
+
tolerance: 'density at the origin within 1e-4 of (4πDt)^-1/2 at 1000 steps; error shrinks with refinement',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
id: 'WD1b',
|
|
90
|
+
kind: 'numeric',
|
|
91
|
+
test: TEST,
|
|
92
|
+
tolerance: 'walk density exactly 0 beyond the light cone while the kernel is > 0',
|
|
93
|
+
},
|
|
94
|
+
],
|
|
95
|
+
citations: [
|
|
96
|
+
'Einstein, Ann. Phys. 17 (1905) 549 - Brownian motion; the mean-square displacement grows as 2Dt',
|
|
97
|
+
'Feller, An Introduction to Probability Theory and Its Applications, Vol. I - the symmetric random walk and the de Moivre-Laplace limit',
|
|
98
|
+
],
|
|
99
|
+
reviewStatus: 'proposed',
|
|
100
|
+
};
|
|
101
|
+
/** Bridge: heat conduction ↔ Fick diffusion, an exact equivalence. @internal */
|
|
102
|
+
export const BRIDGE_HEAT_DIFFUSION = {
|
|
103
|
+
id: 'ab-heat-diffusion',
|
|
104
|
+
relation: 'exact-equivalence',
|
|
105
|
+
premises: ['model-heat'],
|
|
106
|
+
conclusion: 'model-fick',
|
|
107
|
+
transformation: 'T ↦ c, κ/(ρ c_p) ↦ D',
|
|
108
|
+
inverse: 'c ↦ T, D ↦ κ/(ρ c_p) (any κ, ρ, c_p with that ratio)',
|
|
109
|
+
preserves: [
|
|
110
|
+
'the solution operator: equal initial data give equal solutions at every t',
|
|
111
|
+
'Fourier-mode decay rates D q²',
|
|
112
|
+
'the Fourier number D t/ℓ²',
|
|
113
|
+
],
|
|
114
|
+
doesNotPreserve: [
|
|
115
|
+
'physical interpretation: temperature versus concentration',
|
|
116
|
+
'units',
|
|
117
|
+
'the separate values of κ, ρ and c_p — only their ratio survives',
|
|
118
|
+
],
|
|
119
|
+
sideConditions: [
|
|
120
|
+
'homogeneous isotropic medium: κ, ρ, c_p constant',
|
|
121
|
+
'no sources and no advection (the Péclet number is not applicable to either model)',
|
|
122
|
+
],
|
|
123
|
+
regime: {
|
|
124
|
+
family: DIFFUSION_FAMILY_NAME,
|
|
125
|
+
inequalities: [],
|
|
126
|
+
groupDefinitions: deriveRegimeGroups(DIFFUSION_FAMILY_NAME, [
|
|
127
|
+
{ name: 'kappa', dim: THERMAL_CONDUCTIVITY },
|
|
128
|
+
{ name: 'rho', dim: DENSITY },
|
|
129
|
+
{ name: 'cp', dim: SPECIFIC_HEAT },
|
|
130
|
+
{ name: 'D', dim: DIFFUSIVITY },
|
|
131
|
+
{ name: 'ell', dim: LENGTH },
|
|
132
|
+
{ name: 't', dim: TIME },
|
|
133
|
+
], []),
|
|
134
|
+
},
|
|
135
|
+
counterexamples: [],
|
|
136
|
+
evidence: new Set(['proposed', 'numerically-supported']),
|
|
137
|
+
witnesses: [
|
|
138
|
+
{
|
|
139
|
+
id: 'WD2',
|
|
140
|
+
kind: 'numeric',
|
|
141
|
+
test: TEST,
|
|
142
|
+
tolerance: 'FTCS heat solution at x = 0 within 5e-4 of the Fick solution with D = κ/(ρ c_p) at 160 cells',
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
id: 'WD2s',
|
|
146
|
+
kind: 'symbolic',
|
|
147
|
+
test: WITNESS_RESULTS_TEST,
|
|
148
|
+
tolerance: 'CAS: κq²/(ρ c_p) under κ ↦ D ρ c_p minus D q² simplifies to literal 0',
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
citations: [
|
|
152
|
+
'Carslaw & Jaeger, Conduction of Heat in Solids - the heat equation and the thermal diffusivity κ/(ρ c_p)',
|
|
153
|
+
'Crank, The Mathematics of Diffusion - Fick’s second law and its identity with the heat-conduction equation',
|
|
154
|
+
],
|
|
155
|
+
reviewStatus: 'proposed',
|
|
156
|
+
};
|
|
157
|
+
/** Bridge: free Schrödinger → Fick diffusion, by Wick rotation. @internal */
|
|
158
|
+
export const BRIDGE_SCHRODINGER_DIFFUSION = {
|
|
159
|
+
id: 'ab-schrodinger-diffusion',
|
|
160
|
+
relation: 'analytic-continuation',
|
|
161
|
+
premises: ['model-schrodinger-free'],
|
|
162
|
+
conclusion: 'model-fick',
|
|
163
|
+
transformation: 't = −iτ: ψ(x, −iτ) ↦ c(x, τ), with D = ħ/(2m)',
|
|
164
|
+
preserves: [
|
|
165
|
+
'linearity',
|
|
166
|
+
'the Gaussian kernel structure, with a spread growing linearly in time',
|
|
167
|
+
],
|
|
168
|
+
doesNotPreserve: [
|
|
169
|
+
'unitarity: ∫|ψ|² dx is conserved, ∫φ² dx decays',
|
|
170
|
+
'oscillation and phase: the oscillating propagator becomes a decaying Gaussian',
|
|
171
|
+
'time-reversal symmetry: diffusion is irreversible',
|
|
172
|
+
],
|
|
173
|
+
sideConditions: [
|
|
174
|
+
'V = 0 (free particle)',
|
|
175
|
+
'the continuation is formal: real Schrödinger time maps to imaginary diffusion time',
|
|
176
|
+
],
|
|
177
|
+
regime: {
|
|
178
|
+
family: DIFFUSION_FAMILY_NAME,
|
|
179
|
+
inequalities: [],
|
|
180
|
+
groupDefinitions: deriveRegimeGroups(DIFFUSION_FAMILY_NAME, [
|
|
181
|
+
{ name: 'hbar', dim: ACTION },
|
|
182
|
+
{ name: 'm', dim: MASS },
|
|
183
|
+
{ name: 'D', dim: DIFFUSIVITY },
|
|
184
|
+
], []),
|
|
185
|
+
},
|
|
186
|
+
counterexamples: [
|
|
187
|
+
{
|
|
188
|
+
description: 'The squared norm of the Wick-rotated kernel falls from 1.755 at τ = 0 to 0.580 at ' +
|
|
189
|
+
'τ = 4 (ħ = 1, m = 0.5, s = 0.7), where the Schrödinger norm would be conserved.',
|
|
190
|
+
witness: 'WD3b',
|
|
191
|
+
},
|
|
192
|
+
],
|
|
193
|
+
evidence: new Set(['proposed', 'numerically-supported']),
|
|
194
|
+
witnesses: [
|
|
195
|
+
{
|
|
196
|
+
id: 'W5',
|
|
197
|
+
kind: 'numeric',
|
|
198
|
+
test: 'tests/atlas/quantum-support.test.ts',
|
|
199
|
+
tolerance: 'coefficients ħ/2m, −1, 1/ħ; free-kernel sup-norm residual ratio of ∂τφ = (ħ/2m)∂²φ below 1e-4',
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
id: 'WD3',
|
|
203
|
+
kind: 'numeric',
|
|
204
|
+
test: TEST,
|
|
205
|
+
tolerance: 'finite-difference residual of ∂τφ = (ħ/2m)∂²φ below 1e-3 at h = 0.025',
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
id: 'WD3b',
|
|
209
|
+
kind: 'numeric',
|
|
210
|
+
test: TEST,
|
|
211
|
+
tolerance: '∫φ² dx matches s²√(2π/σ(τ)) within 1e-9 and decreases in τ',
|
|
212
|
+
},
|
|
213
|
+
],
|
|
214
|
+
citations: [
|
|
215
|
+
'Feynman & Hibbs, Quantum Mechanics and Path Integrals - the free-particle kernel and its imaginary-time form',
|
|
216
|
+
'Nelson, J. Math. Phys. 5 (1964) 332 - Feynman integrals and the Schrödinger equation (the analytic continuation to the heat kernel)',
|
|
217
|
+
],
|
|
218
|
+
reviewStatus: 'proposed',
|
|
219
|
+
};
|
|
220
|
+
/** The diffusion family's bridges, in design-note order. @internal */
|
|
221
|
+
export const DIFFUSION_BRIDGES = [
|
|
222
|
+
BRIDGE_WALK_DIFFUSION,
|
|
223
|
+
BRIDGE_HEAT_DIFFUSION,
|
|
224
|
+
BRIDGE_SCHRODINGER_DIFFUSION,
|
|
225
|
+
];
|
|
226
|
+
//# sourceMappingURL=bridges.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridges.js","sourceRoot":"","sources":["../../../src/atlas/diffusion/bridges.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dimension constants the diffusion family needs that the canonical entry
|
|
3
|
+
* files declare MODULE-LOCAL and do not export.
|
|
4
|
+
*
|
|
5
|
+
* Redefined here with the same `dim(...)` arguments as their sources, the same
|
|
6
|
+
* discipline as `oscillators/dimensions.ts`. `tests/atlas/diffusion.test.ts`
|
|
7
|
+
* asserts the values against the canonical registry, so a future divergence
|
|
8
|
+
* fails a test rather than silently forking the physics.
|
|
9
|
+
*
|
|
10
|
+
* @module atlas/diffusion/dimensions
|
|
11
|
+
*/
|
|
12
|
+
import type { Dimension } from '../../dimensional/types.js';
|
|
13
|
+
/** m²/s, `L^2 T^-1` — `src/canonical/entries/thermo-nuclear-cosmo.ts:44`. @internal */
|
|
14
|
+
export declare const DIFFUSIVITY: Dimension;
|
|
15
|
+
/** W·m⁻¹·K⁻¹, `L M T^-3 Θ^-1` — `src/canonical/entries/thermo-nuclear-cosmo.ts:42`. @internal */
|
|
16
|
+
export declare const THERMAL_CONDUCTIVITY: Dimension;
|
|
17
|
+
/** kg/m³, `L^-3 M` — `src/canonical/entries/thermo-nuclear-cosmo.ts:43`. @internal */
|
|
18
|
+
export declare const DENSITY: Dimension;
|
|
19
|
+
/** J·kg⁻¹·K⁻¹, `L^2 T^-2 Θ^-1` — `src/canonical/entries/thermo-nuclear-cosmo.ts:35`. @internal */
|
|
20
|
+
export declare const SPECIFIC_HEAT: Dimension;
|
|
21
|
+
//# sourceMappingURL=dimensions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dimensions.d.ts","sourceRoot":"","sources":["../../../src/atlas/diffusion/dimensions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,uFAAuF;AACvF,eAAO,MAAM,WAAW,EAAE,SAAyB,CAAC;AAEpD,iGAAiG;AACjG,eAAO,MAAM,oBAAoB,EAAE,SAAgC,CAAC;AAEpE,sFAAsF;AACtF,eAAO,MAAM,OAAO,EAAE,SAAsB,CAAC;AAE7C,kGAAkG;AAClG,eAAO,MAAM,aAAa,EAAE,SAAgC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dimension constants the diffusion family needs that the canonical entry
|
|
3
|
+
* files declare MODULE-LOCAL and do not export.
|
|
4
|
+
*
|
|
5
|
+
* Redefined here with the same `dim(...)` arguments as their sources, the same
|
|
6
|
+
* discipline as `oscillators/dimensions.ts`. `tests/atlas/diffusion.test.ts`
|
|
7
|
+
* asserts the values against the canonical registry, so a future divergence
|
|
8
|
+
* fails a test rather than silently forking the physics.
|
|
9
|
+
*
|
|
10
|
+
* @module atlas/diffusion/dimensions
|
|
11
|
+
*/
|
|
12
|
+
import { dim } from '../../dimensional/ast-builders.js';
|
|
13
|
+
/** m²/s, `L^2 T^-1` — `src/canonical/entries/thermo-nuclear-cosmo.ts:44`. @internal */
|
|
14
|
+
export const DIFFUSIVITY = dim(2, 0, -1);
|
|
15
|
+
/** W·m⁻¹·K⁻¹, `L M T^-3 Θ^-1` — `src/canonical/entries/thermo-nuclear-cosmo.ts:42`. @internal */
|
|
16
|
+
export const THERMAL_CONDUCTIVITY = dim(1, 1, -3, 0, -1);
|
|
17
|
+
/** kg/m³, `L^-3 M` — `src/canonical/entries/thermo-nuclear-cosmo.ts:43`. @internal */
|
|
18
|
+
export const DENSITY = dim(-3, 1);
|
|
19
|
+
/** J·kg⁻¹·K⁻¹, `L^2 T^-2 Θ^-1` — `src/canonical/entries/thermo-nuclear-cosmo.ts:35`. @internal */
|
|
20
|
+
export const SPECIFIC_HEAT = dim(2, 0, -2, 0, -1);
|
|
21
|
+
//# sourceMappingURL=dimensions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dimensions.js","sourceRoot":"","sources":["../../../src/atlas/diffusion/dimensions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,mCAAmC,CAAC;AAGxD,uFAAuF;AACvF,MAAM,CAAC,MAAM,WAAW,GAAc,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAEpD,iGAAiG;AACjG,MAAM,CAAC,MAAM,oBAAoB,GAAc,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAEpE,sFAAsF;AACtF,MAAM,CAAC,MAAM,OAAO,GAAc,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAE7C,kGAAkG;AAClG,MAAM,CAAC,MAAM,aAAa,GAAc,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Diffusion-family assembly (Atlas Phase 4, S4.4).
|
|
3
|
+
*
|
|
4
|
+
* Assembly only: this module defines no physics and no numbers of its own.
|
|
5
|
+
*
|
|
6
|
+
* @module atlas/diffusion
|
|
7
|
+
*/
|
|
8
|
+
import type { AtlasFamily } from '../oscillators/index.js';
|
|
9
|
+
/**
|
|
10
|
+
* The diffusion family: eight models and eight bridges (three from S4.4, five
|
|
11
|
+
* from the Sprint 4 closure), no rejections.
|
|
12
|
+
*
|
|
13
|
+
* @internal
|
|
14
|
+
*/
|
|
15
|
+
export declare const DIFFUSION_FAMILY: AtlasFamily;
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atlas/diffusion/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAK3D;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,WAK9B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Diffusion-family assembly (Atlas Phase 4, S4.4).
|
|
3
|
+
*
|
|
4
|
+
* Assembly only: this module defines no physics and no numbers of its own.
|
|
5
|
+
*
|
|
6
|
+
* @module atlas/diffusion
|
|
7
|
+
*/
|
|
8
|
+
import { DIFFUSION_BRIDGES } from './bridges.js';
|
|
9
|
+
import { DIFFUSION_CLOSURE_BRIDGES } from './bridges-closure.js';
|
|
10
|
+
import { DIFFUSION_FAMILY_NAME, DIFFUSION_MODELS } from './models.js';
|
|
11
|
+
/**
|
|
12
|
+
* The diffusion family: eight models and eight bridges (three from S4.4, five
|
|
13
|
+
* from the Sprint 4 closure), no rejections.
|
|
14
|
+
*
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
17
|
+
export const DIFFUSION_FAMILY = {
|
|
18
|
+
family: DIFFUSION_FAMILY_NAME,
|
|
19
|
+
models: DIFFUSION_MODELS,
|
|
20
|
+
bridges: [...DIFFUSION_BRIDGES, ...DIFFUSION_CLOSURE_BRIDGES],
|
|
21
|
+
rejections: [],
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/atlas/diffusion/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAgB;IAC3C,MAAM,EAAE,qBAAqB;IAC7B,MAAM,EAAE,gBAAgB;IACxB,OAAO,EAAE,CAAC,GAAG,iBAAiB,EAAE,GAAG,yBAAyB,CAAC;IAC7D,UAAU,EAAE,EAAE;CACf,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Atlas Phase 4, S4.4 — the four models of the diffusion family.
|
|
3
|
+
*
|
|
4
|
+
* Design note: `docs/planning/Atlas-Phase-4-Design.md` §4.
|
|
5
|
+
*
|
|
6
|
+
* `canonicalRefs` lists an entry only where the canonical registry genuinely
|
|
7
|
+
* holds one. It has `CE-thermal-diffusivity` (α = κ/(ρ c_p)) and nothing for
|
|
8
|
+
* Fick's law, the heat equation as a PDE, the lattice random walk, or the free
|
|
9
|
+
* Schrödinger equation — so those models carry `[]` rather than a nearby entry
|
|
10
|
+
* that states something else.
|
|
11
|
+
*
|
|
12
|
+
* @module atlas/diffusion/models
|
|
13
|
+
*/
|
|
14
|
+
import type { Dimension } from '../../dimensional/types.js';
|
|
15
|
+
import type { AtlasModel } from '../model.js';
|
|
16
|
+
/** The family name every diffusion record carries. @internal */
|
|
17
|
+
export declare const DIFFUSION_FAMILY_NAME = "diffusion";
|
|
18
|
+
/** Pa·s, `L^-1 M T^-1` — `src/canonical/entries/fluids-waves.ts:45` (`VISCOSITY`). @internal */
|
|
19
|
+
export declare const VISCOSITY: Dimension;
|
|
20
|
+
/** The diffusion models, in design-note order; the last four were added to close Sprint 4. @internal */
|
|
21
|
+
export declare const DIFFUSION_MODELS: readonly AtlasModel[];
|
|
22
|
+
/** Look up a diffusion model by id, throwing on an unknown one. @internal */
|
|
23
|
+
export declare function getDiffusionModel(id: string): AtlasModel;
|
|
24
|
+
//# sourceMappingURL=models.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../src/atlas/diffusion/models.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAI9C,gEAAgE;AAChE,eAAO,MAAM,qBAAqB,cAAc,CAAC;AA+BjD,gGAAgG;AAChG,eAAO,MAAM,SAAS,EAAE,SAA0B,CAAC;AAEnD,wGAAwG;AACxG,eAAO,MAAM,gBAAgB,EAAE,SAAS,UAAU,EAyFjD,CAAC;AAEF,6EAA6E;AAC7E,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,CAIxD"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Atlas Phase 4, S4.4 — the four models of the diffusion family.
|
|
3
|
+
*
|
|
4
|
+
* Design note: `docs/planning/Atlas-Phase-4-Design.md` §4.
|
|
5
|
+
*
|
|
6
|
+
* `canonicalRefs` lists an entry only where the canonical registry genuinely
|
|
7
|
+
* holds one. It has `CE-thermal-diffusivity` (α = κ/(ρ c_p)) and nothing for
|
|
8
|
+
* Fick's law, the heat equation as a PDE, the lattice random walk, or the free
|
|
9
|
+
* Schrödinger equation — so those models carry `[]` rather than a nearby entry
|
|
10
|
+
* that states something else.
|
|
11
|
+
*
|
|
12
|
+
* @module atlas/diffusion/models
|
|
13
|
+
*/
|
|
14
|
+
import { ACTION, ENERGY, LENGTH, MASS, TIME } from '../../dimensional/types.js';
|
|
15
|
+
import { dim } from '../../dimensional/ast-builders.js';
|
|
16
|
+
import { DAMPING } from '../oscillators/dimensions.js';
|
|
17
|
+
import { deriveRegimeGroups } from '../regime.js';
|
|
18
|
+
import { DENSITY, DIFFUSIVITY, SPECIFIC_HEAT, THERMAL_CONDUCTIVITY } from './dimensions.js';
|
|
19
|
+
/** The family name every diffusion record carries. @internal */
|
|
20
|
+
export const DIFFUSION_FAMILY_NAME = 'diffusion';
|
|
21
|
+
function model(spec) {
|
|
22
|
+
return {
|
|
23
|
+
id: spec.id,
|
|
24
|
+
family: DIFFUSION_FAMILY_NAME,
|
|
25
|
+
stateSpace: spec.stateSpace,
|
|
26
|
+
dynamics: spec.dynamics,
|
|
27
|
+
observables: spec.observables,
|
|
28
|
+
parameters: spec.parameters,
|
|
29
|
+
dimensionlessInputs: [],
|
|
30
|
+
canonicalRefs: spec.canonicalRefs,
|
|
31
|
+
regime: {
|
|
32
|
+
family: DIFFUSION_FAMILY_NAME,
|
|
33
|
+
inequalities: [],
|
|
34
|
+
groupDefinitions: deriveRegimeGroups(DIFFUSION_FAMILY_NAME, spec.parameters, []),
|
|
35
|
+
},
|
|
36
|
+
...(spec.symmetryGroup === undefined ? {} : { symmetryGroup: spec.symmetryGroup }),
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/** Pa·s, `L^-1 M T^-1` — `src/canonical/entries/fluids-waves.ts:45` (`VISCOSITY`). @internal */
|
|
40
|
+
export const VISCOSITY = dim(-1, 1, -1);
|
|
41
|
+
/** The diffusion models, in design-note order; the last four were added to close Sprint 4. @internal */
|
|
42
|
+
export const DIFFUSION_MODELS = [
|
|
43
|
+
model({
|
|
44
|
+
id: 'model-random-walk',
|
|
45
|
+
stateSpace: 'P(n, k): probability at lattice site n ∈ ℤ after k ∈ ℕ steps',
|
|
46
|
+
dynamics: 'P(n, k+1) = ½ P(n−1, k) + ½ P(n+1, k), sites Δx apart, steps Δt apart',
|
|
47
|
+
observables: ['P(n, k)', 'mean-square displacement ⟨x²⟩'],
|
|
48
|
+
parameters: [
|
|
49
|
+
{ name: 'dx', dim: LENGTH },
|
|
50
|
+
{ name: 'dt', dim: TIME },
|
|
51
|
+
],
|
|
52
|
+
canonicalRefs: [],
|
|
53
|
+
}),
|
|
54
|
+
model({
|
|
55
|
+
id: 'model-fick',
|
|
56
|
+
stateSpace: 'c(x, t), x ∈ ℝ',
|
|
57
|
+
dynamics: '∂c/∂t = D ∂²c/∂x² (Fick’s second law)',
|
|
58
|
+
observables: ['c(x, t)', 'total amount ∫c dx', 'variance of c'],
|
|
59
|
+
parameters: [
|
|
60
|
+
{ name: 'D', dim: DIFFUSIVITY },
|
|
61
|
+
{ name: 'ell', dim: LENGTH },
|
|
62
|
+
],
|
|
63
|
+
canonicalRefs: [],
|
|
64
|
+
}),
|
|
65
|
+
model({
|
|
66
|
+
id: 'model-heat',
|
|
67
|
+
stateSpace: 'T(x, t), x ∈ ℝ',
|
|
68
|
+
dynamics: 'ρ c_p ∂T/∂t = κ ∂²T/∂x²',
|
|
69
|
+
observables: ['T(x, t)', 'heat content ∫ρ c_p T dx'],
|
|
70
|
+
parameters: [
|
|
71
|
+
{ name: 'kappa', dim: THERMAL_CONDUCTIVITY },
|
|
72
|
+
{ name: 'rho', dim: DENSITY },
|
|
73
|
+
{ name: 'cp', dim: SPECIFIC_HEAT },
|
|
74
|
+
{ name: 'ell', dim: LENGTH },
|
|
75
|
+
],
|
|
76
|
+
canonicalRefs: ['CE-thermal-diffusivity'],
|
|
77
|
+
}),
|
|
78
|
+
model({
|
|
79
|
+
id: 'model-schrodinger-free',
|
|
80
|
+
stateSpace: 'ψ(x, t) ∈ ℂ, x ∈ ℝ',
|
|
81
|
+
dynamics: 'i ħ ∂ψ/∂t = −(ħ²/2m) ∂²ψ/∂x²',
|
|
82
|
+
observables: ['|ψ|²', 'position spread σx'],
|
|
83
|
+
parameters: [
|
|
84
|
+
{ name: 'hbar', dim: ACTION },
|
|
85
|
+
{ name: 'm', dim: MASS },
|
|
86
|
+
],
|
|
87
|
+
canonicalRefs: [],
|
|
88
|
+
}),
|
|
89
|
+
model({
|
|
90
|
+
id: 'model-langevin',
|
|
91
|
+
stateSpace: '(x, v)(t), a Brownian particle',
|
|
92
|
+
dynamics: 'm v̇ = −γ v + ξ(t), ⟨ξ(t)ξ(t′)⟩ = 2γ k_B T δ(t − t′), ẋ = v',
|
|
93
|
+
observables: ['⟨x²⟩(t)', '⟨v²⟩ = k_B T/m'],
|
|
94
|
+
parameters: [
|
|
95
|
+
{ name: 'm', dim: MASS },
|
|
96
|
+
{ name: 'gamma', dim: DAMPING },
|
|
97
|
+
{ name: 'kT', dim: ENERGY },
|
|
98
|
+
],
|
|
99
|
+
canonicalRefs: [],
|
|
100
|
+
}),
|
|
101
|
+
model({
|
|
102
|
+
id: 'model-stokes-drag',
|
|
103
|
+
stateSpace: 'a sphere of radius a moving at speed v through a viscous fluid',
|
|
104
|
+
dynamics: 'F = −6π η a v (creeping flow, Re ≪ 1)',
|
|
105
|
+
observables: ['drag force F', 'friction coefficient γ = 6πηa'],
|
|
106
|
+
parameters: [
|
|
107
|
+
{ name: 'eta', dim: VISCOSITY },
|
|
108
|
+
{ name: 'a', dim: LENGTH },
|
|
109
|
+
],
|
|
110
|
+
canonicalRefs: ['CE-stokes-drag'],
|
|
111
|
+
}),
|
|
112
|
+
model({
|
|
113
|
+
id: 'model-telegraph',
|
|
114
|
+
stateSpace: 'u(x, t), x ∈ ℝ',
|
|
115
|
+
dynamics: 'τ u_tt + u_t = D u_xx (Cattaneo: diffusion with a relaxation time)',
|
|
116
|
+
observables: ['u(x, t)', 'mode decay rates', 'signal speed √(D/τ)'],
|
|
117
|
+
parameters: [
|
|
118
|
+
{ name: 'tau', dim: TIME },
|
|
119
|
+
{ name: 'D', dim: DIFFUSIVITY },
|
|
120
|
+
],
|
|
121
|
+
canonicalRefs: [],
|
|
122
|
+
}),
|
|
123
|
+
model({
|
|
124
|
+
id: 'model-laplace-1d',
|
|
125
|
+
stateSpace: 'T(x) on [0, ℓ] with fixed end values',
|
|
126
|
+
dynamics: 'T_xx = 0, so T is linear between T(0) and T(ℓ)',
|
|
127
|
+
observables: ['T(x)', 'steady heat flux'],
|
|
128
|
+
parameters: [{ name: 'ell', dim: LENGTH }],
|
|
129
|
+
canonicalRefs: [],
|
|
130
|
+
}),
|
|
131
|
+
];
|
|
132
|
+
/** Look up a diffusion model by id, throwing on an unknown one. @internal */
|
|
133
|
+
export function getDiffusionModel(id) {
|
|
134
|
+
const found = DIFFUSION_MODELS.find((m) => m.id === id);
|
|
135
|
+
if (found === undefined)
|
|
136
|
+
throw new Error(`unknown diffusion model id: ${id}`);
|
|
137
|
+
return found;
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=models.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/atlas/diffusion/models.ts"],"names":[],"mappings":"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"}
|