Kontext
Für sehr große Systeme ist selbst eine Sparse-LU-Faktorisierung pro dt teuer. Jacobian-Free Newton-Krylov (JFNK) vermeidet die explizite Jacobi-Bildung komplett.
Ziel
Matrix-freier Newton-Solve: das Newton-System (I - dt·a_ii·J)·Δ = r per Krylov-Verfahren (GMRES) lösen, wobei das Matrix-Vektor-Produkt J·v über eine richtungsabhängige Ableitung gebildet wird (Finite-Differenz (f(x+εv)-f(x))/ε oder, wo verfügbar, analytisches forward-AD J·v).
Umfang (Skizze)
- GMRES-Kern (mit Restart) in
src/optim/.
J·v-Operator: FD-basiert generisch; optional analytisch über den bereits vorhandenen forward-AD-JVP (vgl. model_jvp im codegen, Laufzeit-Pendant im Tape).
- Vorkonditionierung (mindestens Jacobi/Blockdiagonal), sonst konvergiert GMRES auf steifen Systemen schlecht.
- Solver-Knopf zum Umschalten LU vs JFNK (heuristisch ab Systemgröße).
Vorab
Großer Umbau des Newton-Solve-Pfades, Konvergenz hängt stark an der Vorkonditionierung. Erst messen ab welcher Größe LU limitiert. Ausgegliedert aus den "Performance-Punkten"; Geschwister-Epic zu Sparse-AD-Jacobi.
Kontext
Für sehr große Systeme ist selbst eine Sparse-LU-Faktorisierung pro
dtteuer. Jacobian-Free Newton-Krylov (JFNK) vermeidet die explizite Jacobi-Bildung komplett.Ziel
Matrix-freier Newton-Solve: das Newton-System
(I - dt·a_ii·J)·Δ = rper Krylov-Verfahren (GMRES) lösen, wobei das Matrix-Vektor-ProduktJ·vüber eine richtungsabhängige Ableitung gebildet wird (Finite-Differenz(f(x+εv)-f(x))/εoder, wo verfügbar, analytisches forward-ADJ·v).Umfang (Skizze)
src/optim/.J·v-Operator: FD-basiert generisch; optional analytisch über den bereits vorhandenen forward-AD-JVP (vgl.model_jvpim codegen, Laufzeit-Pendant im Tape).Vorab
Großer Umbau des Newton-Solve-Pfades, Konvergenz hängt stark an der Vorkonditionierung. Erst messen ab welcher Größe LU limitiert. Ausgegliedert aus den "Performance-Punkten"; Geschwister-Epic zu Sparse-AD-Jacobi.