Chapter 9 — Modeling Methods & Numerical Implementation
I. One-Sentence Goal
Provide an end-to-end numerical pathway from Catalog / Seeds to state evolution (Trajectory), then to spectroscopy L_nu / LC and propagation T_arr / Delta_T_arr—covering solver structure, step-size and convergence, thin/thick switching consistency tau_switch, concurrency and caching, benchmark suite and error semantics—so that implementations are auditable, reproducible, and comparable.
II. Scope & Non-Goals
- Covered: model expression and discretization strategy; time marching and event-driven updates (seed/trigger); spectral synthesis and propagation assembly; layered segmentation and corrections; consistency and error metrics (eta_T / tau_switch); concurrency and caching; benchmark tasks and pass criteria; logging and replayability.
- Not covered: re-deriving the equations of Chs. 3–6; replacing the uncertainty-propagation corpus of Ch. 12; instrument response and external observation pipelines.
III. Minimal Terms & Symbols
- Objects & state: Catalog, Seeds, Trajectory; state = { M, R, J, a_bh, SFR, Z, … }.
- Fields & environment: T_fil(x,t), Phi_T(x,t), grad_Phi_T(x,t); SeaProfile, Sigma_env.
- Propagation & path: n_eff(x,t,f) (dimensionless and ≥ 1), c_ref, path gamma(ell), measure d ell, endpoints { ell_i }.
- Luminosity & observables: L_nu(f), F_nu(f), LC(t), T_arr(f, gamma), Delta_T_arr(f1,f2, gamma).
- Consistency & thresholds: eta_T (two-form), tau_switch (thin/thick), eps_T (convergence), eta_w (thin-layer gate); energy closure R_env + T_trans + A_sigma = 1.
- Naming isolation: T_fil ≠ T_trans and n ≠ n_eff.
IV. End-to-End Modeling Roadmap
- Inputs: Catalog / Seeds, Phi_T / grad_Phi_T or T_fil + G(•), SeaProfile / Sigma_env, coords_spec / units_spec / metric_spec, c_ref (or CalibCref), f_grid, gamma.
- Time marching: advance state(t) on tgrid, applying Trigger updates at event times (Ch. 4).
- Spectral synthesis: from state(t) and params_sed, produce L_nu(f), then F_nu(f_obs) / LC(t) (Ch. 6).
- Propagation assembly: build n_eff = F(Φ_T, grad_Φ_T, ρ, f) + H_sea; detect { ell_i }; perform two-form segmented integrals for T_arr; compute Delta_T_arr.
- Audits: enforce T_arr ≥ L_path / c_ref; assert eta_T, tau_switch; check R_env + T_trans + A_sigma = 1; verify discretization convergence eps_T.
- Outputs: Trajectory / L_nu / F_nu / LC / T_arr / Delta_T_arr plus audit logs and a reproducibility bundle.
V. Solver Architecture & Pseudoflow
A. Unified main loop (object → spectrum → propagation)
for O in Catalog:
state = init_from_seed(O.Seed)
t = t0
while t < t_end:
state = advance_state(state, Phi_T, env, Δt) # S70-7…S70-10
if trigger_due(t): state = apply_trigger(state, event) # S70-2
L_nu = synthesize_spectrum(O, state, f_grid) # S70-10
n_eff = assemble_neff(Phi_T, grad_Phi_T, SeaProfile, f_grid)
ell_i = detect_interfaces(gamma, SeaProfile or Sigma_env)
T_arr = integrate_arrival(n_eff, gamma, ell_i, mode, c_ref)
ΔT_arr = arrival_delta(n_path_params, f1, f2, gamma, mode, c_ref)
audit_and_log(state, L_nu, n_eff, T_arr, ΔT_arr, ell_i)
t += Δt
B. Grid-first (field-first)
- Precompute Φ_T / grad_Φ_T and slowly varying n_common on a grid; interpolate n_eff(γ[k]) and integrate by segments.
- Note: use symmetric stencils near interfaces; forbid cross-interface interpolation; include { ell_i } explicitly in the integral.
C. Path-first
on thin layers.Delta_T_sigmaEvaluate Φ_T, grad_Φ_T along γ[k]; assemble n_eff(γ[k], f) per frequency; perform segmented integrals; invokeD. Hybrid
.accuracy vs throughputCache slow terms on a grid + refine in local path windows around layers/interfaces—balancingVI. Segmentation, Corrections & Multi-Path Composition
- Segmentation rule: γ(ell_i) ∈ (Sigma_env ∪ Sigma_sea); each segment stays within a single side-limit; include both endpoints; no cross-interface interpolation.
- Thin-layer correction: if Delta_k / L_char ≤ eta_w then Delta_T_sigma ≈ k_sigma • H(crossing); log trigger counts and amplitudes.
- Thick-layer volume integral: T_arr^{layer} = ∫_{layer} ( n_eff / c_ref ) d ell.
- Multi-path synthesis: T_arr_total = ∑_m w_m • T_arr[γ_m], with w_m normalized and derived from geometry and R_env, T_trans, A_sigma.
VII. Step-Size Control, Error Estimation & Convergence
- Three adaptive thresholds
Geometry curvature: ‖ d^2γ/dℓ^2 ‖ ≥ tau_geom
Medium variation: | d n_eff / dℓ | ≥ tau_medium
Layer strength: Xi_k(chi) ≥ tau_sea - Local error: per segment, use a two-order quadrature difference; count interface segments separately.
- Global convergence: | T_arr^{(fine)} − T_arr^{(coarse)} | ≤ eps_T; two-form eta_T within gate; thin/thick tau_switch within gate; lower bound holds at all times.
VIII. Thin/Thick Chain Selection & Consistency
- Criterion: Delta_k / L_char ≤ eta_w → thin; else thick.
- Debounce: dual-solve within the eta_w neighborhood and record tau_switch; if over gate, lock to thick and back-trace SeaProfile or endpoint tolerances.
- Implementation hint: cap sub-segment step length proportionally to Delta_k; symmetric sampling at endpoints reduces bias.
IX. Concurrency, Caching & Performance
- Axes of concurrency: object × frequency band × path; prioritize band and path parallelism.
- Caching policy: cache Φ_T / grad_Φ_T near paths; memoize { ell_i }, w_m, and Delta_T_sigma trigger statistics.
- I/O & persistence: store gridded fields as Zarr/NetCDF, trajectories & observations as JSONL/Parquet; hash-based content validation.
- Warm-start: reuse previous theta_hat and SeaProfile caches; skip cold-start where configurations are near-identical.
X. Benchmarks & Pass Criteria
- Benchmark 1 (uniform medium): n_eff ≡ 1 ⇒ T_arr = L_path / c_ref (dimension and lower-bound checks).
- Benchmark 2 (single thin band): tanh/logistic layer ⇒ | T_arr^{thick} − (T_arr^{thin}+ΔT_sigma) | = tau_switch within gate.
- Benchmark 3 (two concatenated layers): constant n_eff per layer + corrections; validate segmentation and endpoint inclusion.
- Benchmark 4 (directional channel, optional): enable b1 / b1_n; verify significance across azimuthal paths.
- Benchmark 5 (band dispersion): fit n_path polynomial; validate Delta_T_arr linear regime and OOB leakage.
- Pass conditions: all of eps_T, eta_T, tau_switch, energy closure, and the lower bound pass; logs complete.
XI. Error Semantics (aligned with the template error family)
- E-DIM-001 dimension inconsistency or missing units
- E-INTF-005 interface matching failure or parameter out of range
- E-QAD-006 quadrature fails to converge or eps_T unmet
- E-NEFF-003 n_eff < 1 or assembly failure
- E-CONSIST-008 two-form consistency failure (eta_T over gate)
- E-EO-010 thin/thick consistency failure (tau_switch over gate) or cross-interface interpolation
Handling: preserve intermediate logs and RNG seed; output a falsification sample and back-trace guidance (convention, segmentation, SeaProfile, step-size).
XII. Interfaces & Implementation Bindings (aligned with template I70-*)
- build_solver_config_EO(params) -> SolverCfg
- evolve_object_state(O, env, tgrid) -> Trajectory (I70-3)
- synthesize_spectrum(O, state, fgrid) -> L_nu (I70-4)
- predict_arrival_signature(n_eff, gamma, mode, c_ref) -> { T_arr, Delta_T_arr } (I70-6)
- detect_interfaces(gamma, Sigma_env or SeaProfile) -> { ell_i }
- segment_integrals(n_eff, gamma, { ell_i }, mode) -> { T_arr_i }, T_arr
- interface_correction_sea(gamma, SeaProfile, params) -> Delta_T_sigma
- consistency_dual_mode_EO(inputs) -> eta_T
- consistency_thin_vs_thick_EO(inputs) -> tau_report
- benchmark_suite_EO(runlist) -> Summary
- log_artifacts_EO(meta, hashes, metrics) -> Log
Constraints: entry dimension and lower-bound checks so dim(T_arr) = [T], dim(n_eff) = 1; record coords_spec / units_spec / metric_spec and thresholds.
XIII. Logging, Reproduction & Publication
- Minimal log: hash(Catalog/Seeds/Trajectory/SeaProfile/Phi_T/n_eff/gamma), coords_spec / units_spec / metric_spec, SolverCfg, mode, eps_T, eta_T, eta_w, tau_switch, interface_marks, Delta_T_sigma trigger stats, and R_env / T_trans / A_sigma summaries.
- Repro bundle: data + code + parameters + RNG seed + hash manifest + replay scripts.
- Publication: no external links in the main text; list references, hashes, and replay commands at the end of the report; attach falsification samples and back-trace handles.
XIV. Cross-References
- EFT.WP.Cosmo.EarlyObjects v1.0: Ch. 3 (minimal equations), Ch. 4 (seed/trigger), Ch. 5 (coupling & growth), Ch. 6 (radiation & propagation), Ch. 7 (metrology).
- EFT.WP.Cosmo.LayeredSea v1.0: segmentation, matching, and consistency.
- EFT.WP.Propagation.TensionPotential v1.0: two-form and differential workflows.
- EFT.WP.Core.Equations v1.1 / Metrology v1.0 / Errors v1.0: notation, metrology, and error families.
XV. Deliverables
- Solver implementation checklist & pseudoflow (with segmentation and correction norms).
- Convergence & consistency templates for eps_T, eta_T, eta_w, tau_switch and their audits.
- Benchmark scripts & reproducibility bundle layout: data, code, hashes, and replay instructions.