New entry 2026-04-21-polytopic-sos-tikhonov.tex covering:
- Polytopic barrier attempt (naive Nagumo check), why it fails
(safety polytope too large for LQR contraction from anywhere),
and the Blanchini pre-image algorithm as the right fix.
- SOS polynomial barrier success on the 2-state reduced projection:
CSDP returns OPTIMAL on a degree-4 polynomial B(x1, x2). First
non-quadratic barrier artifact for this plant. Full polynomial
coefficients embedded.
- Tikhonov singular-perturbation theorem derivation for the PJ
reduction. Writes the 10-state PKE in slow-fast form with
eps=Lambda, identifies the quasi-steady manifold h(x) = PJ
formula, shows fast subsystem exponentially stable under the
prompt_critical_margin_heatup invariant. Error bound:
|x(t) - x_PJ(t)| <= C*Lambda = O(1e-4) in state units, uniform
after boundary layer. Empirical validation data (0.1% max) is
consistent with K_1 ~ 40, K_3 ~ 70 problem constants.
- apass markers for remaining open items: scram entry expansion,
heatup steam-dump Q_sg, heatup controller-ref mismatch.
The Tikhonov derivation upgrades "we ran it and 0.1% error" to
"bounded by C*Lambda where C depends on problem properties bounded
by the safety halfspaces." Rigorous rate.
Journal: 38 pages, clean build.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
81 lines
2.7 KiB
TeX
81 lines
2.7 KiB
TeX
% journal.tex — top-level document that aggregates all dated entries.
|
|
%
|
|
% Build:
|
|
% cd journal && latexmk -pdf journal.tex
|
|
% or individual entry:
|
|
% cd journal && latexmk -pdf entries/2026-04-17-controllers-linear-reach.tex
|
|
|
|
\input{preamble.tex}
|
|
|
|
\title{HAHACS Lab Journal\\
|
|
\large PWR\_HYBRID\_3 preliminary example, invention log}
|
|
\author{Dane Sabo, with Claude (Hacker-Split)}
|
|
\date{Started \today}
|
|
|
|
\begin{document}
|
|
|
|
\maketitle
|
|
\tableofcontents
|
|
\newpage
|
|
|
|
\section*{How to read this journal}
|
|
|
|
Each section is a dated session. Sessions are written in two styles:
|
|
|
|
\begin{itemize}
|
|
\item \textbf{Deep (A-style)}: full invention-log depth. Derivations
|
|
in math, code snippets with commentary, figures with long
|
|
captions, dead-ends documented, terminal output included where
|
|
it changes the story. A reader in 2030 should be able to
|
|
rebuild the work from this alone.
|
|
\item \textbf{Narrative (B-style)}: end-of-session notes with
|
|
pointers. Marked with \apass{some detail} callouts for
|
|
content that should be expanded in a later A-pass.
|
|
\end{itemize}
|
|
|
|
\textbf{File-path archaeology note.} Entries dated on or before
|
|
2026-04-20 (afternoon) refer to MATLAB files under \texttt{plant-model/}
|
|
and a MATLAB-Julia split where Julia code lived under \texttt{julia-port/}.
|
|
The 2026-04-20 evening mega-session ported everything to Julia and
|
|
deleted MATLAB; the result is the unified \texttt{code/} directory.
|
|
Path references in earlier entries are historically accurate for their
|
|
date; recover the corresponding sources via \texttt{git log} or the
|
|
parent commit at the time.
|
|
|
|
Callout boxes signal specific content types:
|
|
|
|
\begin{derivation}
|
|
Mathematical derivations — algebra, integrals, limits. Where they
|
|
matter to the safety claim, they live here in full.
|
|
\end{derivation}
|
|
|
|
\begin{decision}
|
|
Design decisions made during the session, with the rationale and the
|
|
alternatives considered.
|
|
\end{decision}
|
|
|
|
\begin{deadend}
|
|
Approaches that didn't work and why. These are as valuable as the
|
|
working paths — they keep the next explorer from repeating the mistake.
|
|
\end{deadend}
|
|
|
|
\begin{limitation}
|
|
Known-approximate or known-broken behavior. Soundness gaps live here.
|
|
Each limitation ties to a plan or an open question.
|
|
\end{limitation}
|
|
|
|
\newpage
|
|
|
|
% ---- Session entries, in chronological order -------------------------------
|
|
\input{entries/2026-04-17-controllers-linear-reach.tex}
|
|
\newpage
|
|
\input{entries/2026-04-20-predicates-boundaries-julia-nonlinear.tex}
|
|
\newpage
|
|
\input{entries/2026-04-20-evening-mega-session.tex}
|
|
\newpage
|
|
\input{entries/2026-04-20-overnight-prompt-jump.tex}
|
|
\newpage
|
|
\input{entries/2026-04-21-polytopic-sos-tikhonov.tex}
|
|
|
|
\end{document}
|