Deferred-correction interface fluxes for the adaptive grid

Two-point fluxes across coarse-fine faces miss the tangential potential
gradient (offset leaf centers), biasing R ~0.5-2% low. After the first
solve, per-leaf gradients are reconstructed by least squares over face
neighbors and the known tangential term g*delta*Gt moves to the
right-hand side of a re-solve (ADAPTIVE_CORRECTION_PASSES, default 1).
The matrix is unchanged, so the new PreparedSolver reuses the LU
factorization / AMG hierarchy across passes; the corrected currents
satisfy KCL exactly, so the power-balance identity, via currents and
part fluxes all use them consistently (edge power = dV * I_corr).

Measured: strip worst case -1.74% -> -0.028% (1 pass); feature-dense
plate end-to-end -1.1% -> -0.011% at 7.2 s vs 25.9 s uniform (5.58M ->
823k unknowns). Tests tightened accordingly plus a passes-knob test.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
janik
2026-07-15 17:52:31 +07:00
parent 49f682364f
commit a2a8a9d702
6 changed files with 222 additions and 65 deletions
+7 -4
View File
@@ -144,10 +144,13 @@ SWIG API. Requires KiCad **10.0.1+**.
sets the clearance a block needs to grow). The **minimum element size
is the grid cell size itself** (auto / dialog / `CELL_UM_OVERRIDE`);
the uniform limit reproduces the normal grid exactly. Large
speed/memory wins on big pours; the coarsefine interfaces carry a
first-order flux error that biases R **low by ~0.52 %** depending on
geometry (worst on narrow strips, mild on large planes). All fields
are expanded back to the fine grid for the maps and reports.
speed/memory wins on big pours. The raw coarsefine interface flux
bias (~0.52 % low) is removed by a **deferred-correction pass**
(`ADAPTIVE_CORRECTION_PASSES`, default 1: reconstruct leaf gradients,
move the tangential term to the RHS, re-solve on the reused
factorization/AMG hierarchy) — measured residual deviation from the
uniform grid ≲ 0.03 %, with the power-balance identity intact. All
fields are expanded back to the fine grid for the maps and reports.
## Offline / development