Skip to content

Validate differentiated-current PlaneWave measurements and refresh scoped goldens - #94

Merged
yonghakim merged 15 commits into
mainfrom
codex/fdtd-dj2-acceptance
Oct 22, 2026
Merged

yonghakim merged 15 commits into
mainfrom
codex/fdtd-dj2-acceptance

Conversation

@yonghakim

@yonghakim yonghakim commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

Oblique p PlaneWave columns use a centre-normalized two-node differentiated current. Independent prescribed-input transfer tests verify the launch while retaining the original accuracy, convergence, derivative and numerical tolerances.

Measurement qualification separates time, boundary, bandwidth and reference uncertainty. The frequency-focused fixture preserves physical PML depth and passes all 43 records (27 fresh, 16 audited identical-input records). Conical error improves 2.498x against the original 1.8x requirement. A further 36 original-bandwidth contact records pass the existing asymptotic and fine-grid uncertainty criteria; historical coarse-grid failures remain recorded.

Only stage-2 plane_wave and stage-3 bloch_stack/conical are refrozen at their unchanged 300/500 steps and 1e-12 tolerance. Three CPU backends reproduce twice; the scope audit preserves 527 unrelated arrays byte-for-byte and changes 183 intended arrays plus three skeleton entries. Historical hard-drive diagnostic fixtures remain explicit, with a separate production-current quiet-window check and the converged 320/640-period grazing control.

M1 p now has separate historical and current-source regression records. Six new CPU records pass the original C7 criteria: convergence orders 1.968772/1.955651, reference uncertainty, all 72 Richardson comparisons, time budgets, validity, layout, backend agreement and deliberate-error controls. The old archive and RCWA values remain unchanged. Both source generations retain 1e-10 pins and the same recorded-error-cap formula. A public qualification/export command refuses incomplete or failed qualification, mismatched cases/provenance and overwrites. This resolves the previously failing current-versus-historical single-grid maximum comparison with independent qualification, rather than widening a tolerance. It qualifies M1 p, not the whole metasurface campaign.

Broadband PML time convergence remains unresolved. Earlier 16 controls reduced growth but failed fixed time caps; four source-free controls reproduced known bound-mode growth. Five new long-duration broadband records and one passive trace strengthen that diagnosis: loss .003 fails the 640/1280 comparison at 1.771860 times its cap. Loss .03 passes those endpoints at .988485, but the separately registered 960-period midpoint exposes a 640/960 failure at 1.138452. Late point signals contain a slow oscillation near frequency .777; these fits are not spatial-mode identification or a stability proof. No failed record is reclassified and no PML default is changed.

CI run 245 encountered an unrelated newly installed tzdata 2026.5 inventory omission before numerical testing in the affected jobs. Reuses the existing official-wheel license review (matching SHA256 and Apache-2.0 metadata), adding only the inventory entry and bilingual documentation. The strict checker and dependency requirements are unchanged. License/document tests pass 194 with one skip and EN/KO Sphinx-W builds pass; the new head still needs full CI.

Latest local validation: metasurface non-slow module 4 passed (one unchanged slow case not run); final M1 replay after portable hash handling passed again; export/provenance/portability guards 11 passed; quick profile 17 passed; documentation contracts 165 passed, 1 skipped; English and Korean Sphinx warnings-as-errors builds passed; changed Python files pass the repository's Ruff rules. All 279 physical input hashes remain unchanged and five score/fit reports reproduce from raw records.

Earlier unchanged-solver evidence remains separate: selected archive/backend/mutant/qualification tests 379 passed and 1 skipped; source/accuracy/Torch/derivative checks and junction regressions were documented in the preceding checkpoints. They are not counted as new executions here. Previous CI failures are preserved; this head still requires full CI and independent review before merge. No fresh external-solver, GPU or other-OS validation is claimed.

Criteria, outcomes and reproduction: docs/validation/fdtd/fd-planewave-acceptance.md and its Korean translation.

Ports: 8a17037
Ports: eb68c8a
Ports: e917d8256c14bbfb026a8a82b0fb6f0d881d722d
Ports: c226b7439cda3b06282fe5df936d1b049a4aa91a
Ports: 209d891d1aa3b013b9afdaf8f69ca06a84dd75aa
Ports: bd237a6

yonghakim and others added 9 commits October 21, 2026 13:37
Ports: 8a17037

Co-authored-by: Codex <noreply@openai.com>
Ports: eb68c8a

Retain the current public time-unit names when porting the oracle.

Co-authored-by: Codex <noreply@openai.com>
…dgets

Separate time, boundary and reference convergence from fixed accuracy limits; retain source, spatial convergence and golden regression checks. Record complete runs without replacing golden archives.

Co-authored-by: Codex <noreply@openai.com>
…vidence

Verify complete finite post-source windows before accepting the documented diagnostic floor. Preserve initial classifications and record the completed 38-run campaign, blocked refreeze and unchanged numerical limits.

Co-authored-by: Codex <noreply@openai.com>
…ication protocol

Retain original fixed budgets and original protocol. The revised protocol uses longer records and 48/96-cell stabilized PML with fixed source, monitor and interface positions. Keep the trapped-column diagnostic under explicit test-only hard injection, test the current-driven quiet window, and require the grazing p measurement to converge at 320/640 periods without loosening its tolerance.

Co-authored-by: Codex <noreply@openai.com>
…rols

Co-authored-by: Codex <noreply@openai.com>
…th controls

Keep the original and stabilized campaigns reproducible. Require sufficient incident signal, unchanged absolute and uncertainty budgets, and conical grid improvement; distinguish historical-golden differences from independent physical acceptance. Add explicit CPU backend selection and provenance.

Co-authored-by: Codex <noreply@openai.com>
Add independent prescribed-input source-transfer checks for both validation pulse widths. Keep the failed fixed-cell-depth protocol in its recorded commit and preserve all accuracy and uncertainty limits.

Co-authored-by: Codex <noreply@openai.com>
…cation

Preserve unrelated array bytes and producer provenance; retain all numerical budgets and document the qualified frequency scope.

Co-authored-by: Codex <noreply@openai.com>
@yonghakim yonghakim changed the title Drive oblique p columns with a DC-free current and qualify acceptance measurements Validate differentiated-current PlaneWave measurements and refresh scoped goldens Oct 21, 2026
@yonghakim
yonghakim marked this pull request as ready for review October 21, 2026 15:28
yonghakim and others added 2 commits October 21, 2026 16:09
…tling limits

Record 36 new contact rows passing the existing asymptotic criterion plus fine-grid controls, and 16 broadband PML controls failing unchanged time caps. Preserve historical failures and limit the claims to measured fixtures. Register the acceptance page in navigation to fix the warnings-as-errors CI build. English and Korean Sphinx builds pass; documentation contracts pass 165 with one skip.

Co-authored-by: Codex <noreply@openai.com>
Replay the immutable flat-film pins with their original hard drive while keeping the production drive under the original RCWA second-order and staircase-order gates. Preserve all pins and tolerances. The complete junction physics module passes 15 tests on NumPy.

Co-authored-by: Codex <noreply@openai.com>
@yonghakim
yonghakim marked this pull request as draft October 21, 2026 16:15
yonghakim and others added 3 commits October 21, 2026 16:16
Preserve the original hard-source campaign rows and 1e-10 replay tolerance. Compare the production current drive independently against the unchanged RCWA distance caps. The non-slow module reports 3 passed and 1 failed: M1 p reproduces the old pins but its current-drive amplitude error exceeds the historical maximum by 9.96e-8. Keep this visible failure blocking acceptance; do not refreeze or loosen the cap. PR remains Draft pending current-drive qualification.

Co-authored-by: Codex <noreply@openai.com>
…ation

Preserve fixed limits and failed endpoints; distinguish passive point fits from spatial-mode identification.

Co-authored-by: Codex <noreply@openai.com>
Apply the unchanged C7 spatial, reference-uncertainty, time, backend and negative-control criteria before exporting a separate current-source regression row. Replay both source generations at their original pin and recorded-error tolerances.

Ports: e917d8256c14bbfb026a8a82b0fb6f0d881d722d
Ports: c226b7439cda3b06282fe5df936d1b049a4aa91a

Co-authored-by: Codex <noreply@openai.com>
@yonghakim
yonghakim marked this pull request as ready for review October 22, 2026 03:38
Reuse the official tzdata 2026.5 wheel review without changing dependency requirements or the strict license checker. The published wheel digest and Apache-2.0 metadata match the existing review.

Ports: bd237a6

Co-authored-by: Codex <noreply@openai.com>
@yonghakim
yonghakim merged commit 83cbc34 into main Oct 22, 2026
56 checks passed
@yonghakim
yonghakim deleted the codex/fdtd-dj2-acceptance branch October 22, 2026 04:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant