71 lines
4.0 KiB
Markdown
71 lines
4.0 KiB
Markdown
# Minimal Smagorinsky normalization integration candidate
|
|
|
|
This local candidate changes only the two closed-form D2Q9/D3Q19 coefficients
|
|
from 18 to 18 sqrt(2), plus their convention comments. The intended convention
|
|
is |S| = sqrt(2 S:S), with self-consistent effective tau. No Cs default,
|
|
iterative formula/cap/iteration count, collision dispatch, AMR guard, inlet,
|
|
channel-parity rule, or unrelated source file changes.
|
|
|
|
The resulting turbulence_smag.cuh SHA256 is
|
|
`a3db46c2e7d27530b2d1436e65cdbed0b72cc7e047bfbeef2a640877271b51aa`,
|
|
exactly the independently reviewed temporary correction used in the paired
|
|
scalar and end-to-end flow experiments. Its uncorrected baseline remains at
|
|
validation checkpoint `9805383f9c50d867e8555471baf5dbda8333a652`.
|
|
|
|
## Evidence and limits
|
|
|
|
The separately audited scalar-helper GPU diagnostic on the cd3 source campaign
|
|
covered 48 cases per variant. All 32 paired iterative results were bit-identical;
|
|
maximum patched closed-form error was approximately 1.19e-7, versus 0.06454 for
|
|
the baseline against the same standard convention. This is scalar evidence,
|
|
not full-collision or turbulence qualification.
|
|
|
|
The independently reviewed wall-bounded, x-periodic SRT/shifted-FP32/double-buffer
|
|
shear experiment distinguished baseline from corrected source under identical
|
|
predeclared criteria. Baseline Cs=1 SGS decrement errors at the last two
|
|
checkpoints were approximately 28.50% and 28.05%; corrected errors were 0.0628%
|
|
and 0.00612%. Corrected maximum Cs=1 profile error was approximately 0.11344%,
|
|
and the Cs=0 observations were identical between variants. Cs=1 is an amplified
|
|
normalization diagnostic, not a recommended physical coefficient. These data
|
|
qualify this bounded normalization comparison, not general turbulence accuracy.
|
|
|
|
The current direct-header host regression uses the existing independent
|
|
Hermite tensor construction and quadratic bisection oracle. It covers 120
|
|
parameter subcases across D2/D3, Cs=0/.16, rho=.7/1/1.3, tau0=.56/.8,
|
|
equilibrium, both signs of shear and trace-free extension, including a 3D axis.
|
|
It also checks converged iterative agreement, Cs=0 omega guard bounds, and
|
|
explicitly proves that removing sqrt(2) in temporary headers fails the oracle.
|
|
No stored candidate header or full solver fixture is added.
|
|
|
|
MRT full-trace/bulk coupling, forcing/Guo correction, other streaming/storage
|
|
paths, three-dimensional turbulent flows, and AMR LES remain uncertified.
|
|
Full-stress closed form and deviatoric/capped iteration intentionally need not
|
|
agree on isotropic or cap-active stresses. Existing guards remain unchanged.
|
|
|
|
## Run and retain provenance
|
|
|
|
From this candidate checkout:
|
|
|
|
PYTHONPATH=src python tests/unit/test_smagorinsky_normalization.py -v
|
|
PYTHONPATH=src python tests/unit/test_les_flow_runner.py -v
|
|
|
|
The flow runner already supports `--variant corrected` against the exact
|
|
reviewed helper hash. Its source-pin tests now exercise that current variant;
|
|
they still verify that the archived baseline variant rejects the corrected
|
|
source and that unrelated source tampering is rejected.
|
|
|
|
Historical Re100, Jet, matched-DFG and paired-scalar manifests/runners are not
|
|
repinned or weakened. Their baseline-source guards are expected to reject this
|
|
changed production tree. Run those archived source-specific checks on the clean
|
|
9805383 checkpoint; their old GPU evidence does not become evidence for this
|
|
candidate. The new direct-current-header test is the regression for corrected
|
|
production. Do not describe the historical full suite as passing on this tree.
|
|
|
|
Before publication or main integration, obtain final independent diff review
|
|
and rerun the applicable scalar/flow GPU commands on the exact final candidate
|
|
commit after the executor reconnects. Retain new checkout/import/source-hash
|
|
receipts and compare against the frozen baseline using separate processes.
|
|
A new commit receipt is required even though its corrected header matches the
|
|
previously tested temporary correction. No GPU rerun, publication, or main
|
|
merge is claimed by this candidate preparation.
|