rtx-cfd: overset Schwarz stall rule guarded (fires only within 10× the tolerance) — unguarded it cut CFD1's transient at round 3 every step and the coupled march diverged at ny=62 (pressure 4e4 → 1e140 by step 450); CFD1 harness knobs (stall, step cap, trace)
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Build CPU-Only (Explicit) (push) Canceled after 0s
Documentation / Build User Guide (push) Canceled after 0s
Performance Benchmarks / Run Benchmarks (push) Canceled after 0s
CI / Format Check (push) Canceled after 0s
CI / Clippy Check (push) Canceled after 0s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Build (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Documentation / Build API Documentation (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Build CPU-Only (Explicit) (push) Canceled after 0s
Documentation / Build User Guide (push) Canceled after 0s
Performance Benchmarks / Run Benchmarks (push) Canceled after 0s
CI / Format Check (push) Canceled after 0s
CI / Clippy Check (push) Canceled after 0s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Build (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Documentation / Build API Documentation (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]> Claude-Session: https://claude.ai/code/session_01X2GmJXeQ2njUecEKiJZ1G2
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
00f73eb70a
commit
02c855b9c4
@@ -716,7 +716,17 @@ impl OversetPisoSolver {
|
||||
// 20-round cap at n = 64, and a 7.5 h n = 128 march.
|
||||
history.push(change);
|
||||
let k = self.params.stall_rounds;
|
||||
if k > 0 && history.len() > k && change > 0.7 * history[history.len() - 1 - k] {
|
||||
// Guarded: a stall counts only once the exchange is already
|
||||
// within 10× the tolerance — Anderson converges
|
||||
// non-monotonically, and an unguarded 30%-over-k-rounds test
|
||||
// fired at round 3 of the first corrector throughout CFD1's
|
||||
// transient, under-converging every step until the coupled
|
||||
// march diverged (pressure 4e4 → 1e140 by step 450 at ny = 62).
|
||||
if k > 0
|
||||
&& history.len() > k
|
||||
&& change > 0.7 * history[history.len() - 1 - k]
|
||||
&& change <= 10.0 * self.params.schwarz_tolerance * scale
|
||||
{
|
||||
schwarz_stalled += 1;
|
||||
done = true;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user