Appendix A — Symbols, Units, and Dimension Checks
I. One-Sentence Goal
Provide a unified symbol set, SI units, and dimensional conventions for this Early Objects volume, together with an executable dimension-checking workflow and common-pitfall guards. The intent is to keep the dimensional algebra self-consistent across Catalog / Seeds / Trajectory, Phi_T / grad_Phi_T, L_nu / LC, n_eff, T_arr / Delta_T_arr, Delta_T_sigma, and the energy triplet—under both arrival-time forms and throughout data I/O.
II. Applicability & Non-Goals
- Covered: base dimension set, unified units, core symbols & dimensions, two-form arrival checks (continuous & discrete), spectroscopic and K-correction dimensionality, interfaces & energy triplet, an automated dimension-check sequence with a DimReport template, plus common errors & safeguards.
- Not covered: uncertainty propagation (Ch. 7) and numerical implementation details (Ch. 9); device-specific units for instrument response.
III. Base Dimensions & SI Units
- Base dimensions: [L] (length), [T] (time), [M] (mass). Angles are dimensionless (radian).
- SI units: length m; time s; speed m•s^-1; frequency Hz = s^-1; mass kg; power W.
- Line element: enforce dim(d ell) = [L]. Any coordinate-to-metric mapping must yield a physical arclength in consistent units.
IV. Fixed Symbols with Dimensions (EarlyObjects)
- Coordinates & metric
eta (conformal time), dim = [T] when used as a time parameter; a(eta) (scale factor), dim = 1.
chi (comoving radius) is mapped to physical arclength per metric_spec; post-mapping, dim(chi) ≡ [L] in engineering use. - Object & state
state = { M, R, J, a_bh, SFR, Z, … }
dim(M)=[M]; dim(R)=[L]; dim(J)=[M•L^2•T^-1]; dim(a_bh)=1; dim(SFR)=[M•T^-1]; dim(Z)=1. - Field & potential
T_fil(x,t) (tension), dimension set by model/medium;
Phi_T(x,t) (tension potential), recommended non-dimensionalization (declare Phi_ref in Contract) so dim(Phi_T)=1;
grad_Phi_T(x,t), dim = dim(Phi_T)[L^-1]. - Propagation & path
n_eff(x,t,f) (effective refractive index), dim = 1, with hard constraint n_eff ≥ 1;
c_ref, dim = [L][T^-1]; c_loc = c_ref / n_eff, dim = [L][T^-1];
gamma(ell) (arclength parameterization), dim(gamma)=[L]; d ell, dim=[L]. - Spectrum & light curve
L_nu(f) (rest-frame spectral density), typical dim = [W•Hz^-1] (or declared photometric system in Contract);
F_nu(f) (observed spectral density), dim = [W•m^-2•Hz^-1];
LC(t) (light curve), unit depends on definition (luminosity/flux/count-rate) and must be declared in Contract. - Arrival times & corrections
T_arr, dim = [T]; Delta_T_arr, dim = [T];
zero-thickness correction Delta_T_sigma, dim = [T]. - Interfaces & energy
R_env, T_trans, A_sigma (reflection, transmission, absorption), dim = 1, with R_env + T_trans + A_sigma = 1.
Jump terms: C_sigma = Phi_T^+ − Phi_T^-, dim = dim(Phi_T);
J_sigma = dot( grad_Phi_T^+ − grad_Phi_T^- , n_vec ), dim = dim(grad_Phi_T).
V. Two-Form Arrival-Time Dimension Checks (continuous & discrete)
- Constant pull-out form
Continuous: T_arr = ( 1 / c_ref ) * ( ∫ n_eff d ell ) ⇒ ([L]/[L•T^-1]) = [T]
Discrete: T_arr ≈ (1/c_ref) * ∑ n_eff[gamma[k]] • Δell[k] ⇒ [T] - General form
Continuous: T_arr = ( ∫ ( n_eff / c_ref ) d ell ) ⇒ ([T•L^-1]•[L]) = [T]
Discrete: T_arr ≈ ∑ ( n_eff[gamma[k]] / c_ref[gamma[k]] ) • Δell[k] ⇒ [T] - Lower-bound coherence: because n_eff ≥ 1, always T_arr ≥ L_path / c_ref (the general form encodes this inside the integrand).
VI. Spectroscopy & K-Correction Dimensionality
Observed spectrum:
F_nu(f_obs) = L_nu(f_em) / ( 4π D_L^2 ) • K(z_obs), with f_em = f_obs • (1+z_obs)
- dim(F_nu) = [W•m^-2•Hz^-1], dim(L_nu) = [W•Hz^-1], dim(D_L) = [L], dim(K) = 1.
- LC(t): if flux-based, dim(LC) = [W•m^-2]; if count-rate, declare unit in Contract and record in DimReport.
- Joint dimensionality: when building a joint likelihood over { T_arr, Delta_T_arr, F_nu, LC }, declare all units in the Contract and retain the stance for D_L in logs.
VII. Causation/Growth Dimensional Checks (examples)
- dM/dt = F_M( … ) ⇒ dim=[M•T^-1]
- dR/dt = F_R( … ) ⇒ dim=[L•T^-1]
- dJ/dt = F_J( … ) ⇒ dim=[M•L^2•T^-2]
- da_bh/dt = F_a( … ) ⇒ dim=[T^-1]
- dSFR/dt ⇒ dim=[M•T^-2]
- grad_Phi_T = g_T(T_fil) • grad(T_fil) ⇒ dim(g_T) = dim(Phi_T)/dim(T_fil); if Phi_T is non-dimensionalized, dim(g_T) = 1/dim(T_fil).
VIII. Layer/Interface Parameter Dimensions
- If a layer term uses Xi_k = | dW_k/dchi | (from LayeredSea), then dim(Xi_k) = [L^-1].
- If n_eff has a layer component u1_k • Xi_k, to remain dimensionless we need dim(u1_k) = [L].
- Event-type correction Delta_T_sigma ≈ k_sigma • H(crossing): dim(k_sigma) = [T], dim(H)=1.
- Directional term b1 • dot( grad_Phi_T , t_hat ): dim(b1) = 1 / dim(grad_Phi_T) = [L]/dim(Phi_T); if Phi_T is non-dimensionalized then dim(b1) = [L].
IX. Automated Dimension-Check Workflow (check_dimension sequence)
- Contract ingest: load units_spec, coords_spec, metric_spec, mode, tolerances:{eps_T,eta_T,eta_w,tau_switch}.
- Bind canonical dimensions: dim(c_ref)=[L][T^-1], dim(n_eff)=1, dim(d ell)=[L], dim(T_arr)=[T], dim(Delta_T_sigma)=[T]; if using layer terms, set dim(Xi_k)=[L^-1].
- Arrival checks: verify both two-form continuous and discrete equations reduce to [T]; emit ok(formula_const/general).
- Spectroscopic checks: verify dimensionality of F_nu = L_nu/(4π D_L^2)•K; confirm use sites of f_em = f_obs•(1+z).
- Coupling/layer checks: infer whether u1_k, b1, b1_n, k_sigma units match this Appendix; flag mismatches.
- Discrete coherence: validate unit alignment of Δell and c_ref; enforce explicit inclusion of { ell_i } endpoints; no cross-interface interpolation.
- Report: emit a DimReport and persist to logs (fields below).
X. Common Errors & Safeguards
- Unit mismatch: path in km while c_ref is m•s^-1 ⇒ T_arr off by 10^3. Guard: canonicalize units at ingress; record mapping.
- Missing parentheses: ∫ n_eff / c_ref d ell vs ∫ ( n_eff / c_ref ) d ell differ in meaning. Guard: always parenthesize the integrand.
- Angle units: degrees passed to trig expecting radians. Guard: declare radian convention and convert if needed.
- Layer coefficient mis-units: u1_k not cancelling with Xi_k to a dimensionless n_eff. Guard: infer & check at assembly time.
- Interface mis-spec: C_sigma / J_sigma logged dimensionless. Guard: correct to dim(Phi_T) / dim(grad_Phi_T) or reject.
- Naming confusion: using T_fil where T_trans is intended, or n for n_eff. Guard: block at the Contract layer.
- Missing metric: absent metric_spec leaves d ell ambiguous. Guard: reject Contract if missing.
XI. DimReport (EarlyObjects) — Minimal Fields
- Meta: units_spec, coords_spec, metric_spec, mode ∈ {constant, general}
- Arrival: ok(formula_const), ok(formula_general), ok(lower_bound), ok(discrete_forms)
- Dimension table:
{ c_ref:[L T^-1], n_eff:1, d_ell:[L], T_arr:[T], Delta_T_sigma:[T], Phi_T:?, grad_Phi_T:?•[L^-1], L_nu:[W Hz^-1], F_nu:[W m^-2 Hz^-1] } - Parameter units: { u1_k:[L], b1:[L]/dim(Phi_T), b1_n:[L]/dim(Phi_T), k_sigma:[T] } (when layer/directional terms are enabled)
- Interface & energy: { C_sigma:dim(Phi_T), J_sigma:dim(grad_Phi_T), R_env:1, T_trans:1, A_sigma:1 }
- Differentials: { dim(Delta_T_arr):[T] }
- Notes: anomalies and auto-fix annotations
- Hashes: hash(Catalog/Seeds/Trajectory/SeaProfile/Phi_T/n_eff/gamma/code)
XII. Worked Checks (Four Illustrations)
- Ex.1 — Uniform medium: n_eff ≡ 1 ⇒ T_arr = L_path / c_ref, so [L]/([L][T^-1]) = [T]; lower bound attained.
- Ex.2 — Thin-layer zero-thickness correction: single crossing, Delta_T_sigma = k_sigma, dim(k_sigma) = [T]; T_arr_total = T_arr + Delta_T_sigma remains [T].
- Ex.3 — First-order band dispersion differential: n_path ≈ c_1(f−f0), dim(c_1)=[T] ⇒ dim(Delta_T_arr)=[T]; two-form coherence holds.
- Ex.4 — Directional term: n_eff ≈ a0 + b1 • dot(grad_Phi_T, t_hat); if Phi_T is non-dimensionalized, dim(b1)=[L], thus overall dimensionless.
XIII. Cross-References
- EFT.WP.Cosmo.EarlyObjects v1.0: Ch. 3 (minimal equations), Ch. 5 (coupling & growth), Ch. 6 (radiation & propagation), Ch. 9 (numerics), Ch. 12 (error budget).
- EFT.WP.Propagation.TensionPotential v1.0: two-form and path expressions.
- EFT.WP.Cosmo.LayeredSea v1.0: layer and interface dimensional alignment.
- EFT.WP.Core.Equations v1.1 / Metrology v1.0: notation and traceability.
XIV. Deliverables
- Dimension–unit binding sheet (drop-in to the Contract).
- check_dimension execution order & decision rules (incl. spectroscopy and layer terms).
- DimReport examples with log-field mapping (including eta_T / tau_switch and energy-triplet entries).