4 Commits

Author SHA1 Message Date
Dane Sabo
c5816c359e OVERNIGHT_NOTES: log post-gym session additions
Six new commits while Dane was at the gym, logged at top of the
doc: PJ-validity halfspace, reach tube overlays (your 4 points
done), polytopic barrier attempt, SOS polynomial barrier (degree-4,
CSDP OPTIMAL), Tikhonov bound derivation, controller-ref mismatch
finding.

Top of the file still has the blocked remote-push note with the
exact commands to unblock.  All work local on main; reading order
for morning: OVERNIGHT_NOTES -> journal.pdf (38 pages) ->
individual file headers.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-21 17:24:13 -04:00
Dane Sabo
07579b64b4 reach tubes: heatup PJ tight full data + overlay plots
reach_heatup_pj_tight_full.mat now has per-timestep envelopes
(Tc_lo_ts, Tc_hi_ts, Tf_lo_ts, ..., rho_lo_ts, rho_hi_ts) for
12932 reach-sets over 300 s, 200s wall time.

plot_reach_tubes.jl produces four-panel overlay figures for both
operation and heatup PJ modes.  Two figures saved:
  docs/figures/reach_operation_tubes.png (operation LQR)
  docs/figures/reach_heatup_pj_tubes.png (heatup PJ tight entry)

Each shows:
  - T_c / T_hot / T_cold tubes overlaid on one axis
  - ΔT_core = T_hot - T_cold (power proxy; right axis MW)
  - rho envelope in dollars, ±1$ prompt-critical lines
  - n envelope

Finding worth flagging: heatup PJ tight tube shows rho in
[-0.25 $, -0.05 $] throughout — always subcritical. The controller
is driving rho negative because T_ref starts at T_standby=275 but
X_entry has T_c in [285, 291]. So the ramp reference is BELOW the
current T_c and the FL controller commands cooling. n decays from
[0.001, 0.002] to near zero.

PJ validity trivially satisfied (rho stays well below +beta).
But the physics being captured is "plant cooling back to ramp
reference," not "plant heating to operating temp." For a real
heatup tube we'd need ref.T_start aligned with X_entry's T_c
midpoint, or X_entry pinned at T_standby.

Logged as apass in journal for next pass; morning's priority list
(polytopic/SOS barriers, Tikhonov bound) takes precedence.

OVERNIGHT_NOTES.md flags the blocked remote push — gitea URL is
agent-inferred from submodule submodule.thesis.url pattern, harness
(correctly) refused the exfiltration risk.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-21 16:39:48 -04:00
Dane Sabo
7a1023e252 tight-entry heatup PJ: ALL 6 inv1_holds halfspaces discharged
Second heatup PJ probe with tightened X_entry (T_c width 6K vs
baseline 14K) gives:

  T=60s:  5710 sets in 101s — T_c envelope [281.05, 291.0] 
  T=300s: 12932 sets in 206s — T_c envelope [281.05, 291.0] 

T_c envelope STABLE (identical at 60s and 300s) — the tube reached
steady shape and stopped growing. Low-T_avg trip (280) cleared at
lower bound 281.05, ~1K margin.

**First sound nonlinear reach-avoid proof for any mode of this plant:**
for the tightened entry and T = 300s, every inv1_holds halfspace
holds along the tube.  Sound w.r.t. PJ dynamics (<= 0.1% error vs
full state).

The baseline wider-entry run was loose on T_c low bound (272.4),
confirming that the looseness was entry-box-width driven (14K too
wide for TMJets + orderQ=2) rather than intrinsic to the method.
Entry splitting / refinement is the path to the full baseline set.

Also: LaTeX preamble now has the unicode-to-math literate map
attached to the listing STYLES themselves (not just global \lstset),
so terminal-output listings pasted from Julia with Δ, ≥, °,  etc.
render correctly.  Journal 34 pages, clean build.

OVERNIGHT_NOTES.md updated with tight-entry win.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-21 15:01:13 -04:00
Dane Sabo
aba017c5b1 overnight wrap: summary notes + tighter-entry heatup PJ stub
- OVERNIGHT_NOTES.md: read-this-first TL;DR for morning review.
  Points at journal.pdf (32 pages, latest entry has all results),
  validate_pj_heatup.png, and the Pluto app.  Lists priority-1 actions
  (look at data, decide on refinement vs accept-300s-tube) and
  priority-2 followups (scram reach ingestion, entry refinement,
  saturation hybrid, SOS barriers, alpha parametric).

- reach_heatup_pj_tight.jl: script committed but not yet run tonight.
  Tighter X_entry on T_c (width 6 K vs baseline 14 K) to test whether
  the low-T_avg-trip tube-looseness is entry-box-width driven or
  reach-growth driven.

Scram PJ still compiling as of this commit; will land separately
when it completes.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-21 14:49:48 -04:00