Repository navigation
Add opt-in ring far-field evaluation for WASM 0.8.0 - #10
Merged
Merged
Conversation
Share a bounded C++ ring kernel between stateful and worker evaluators, preserve exact defaults, and support embedded fields with explicit provenance. Include native, package, browser, and packaged-consumer coverage plus reproducible native/WASM benchmarks and the integration report.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Dense upper-hemisphere grids spend most retained-solve time evaluating far fields. This adds an opt-in ring band-limited evaluator and prepares
@necpp-engine/wasm0.8.0, while keeping existing exact defaults and goldens unchanged.Set
farFieldEvaluator: "ring"when creating a model or array solver, or selectevaluatorper request. The shared C++ kernel supports free space and PEC ground, falls back to direct evaluation when needed, and works with ordinary fields, worker pools, both embedded normalizations, and packed characterization. Result metadata records evaluator provenance and the analytical truncation bound; packed formats and ABI version 1 remain compatible.The report in
docs/ring-far-field-evaluation.mdincludes profiling, the tail-bound derivation, native/WASM benchmarks, accuracy, limitations, and reproduction commands. Large-array stateful WASM field evaluations improved 6.76–8.91×. All 154 benchmark comparisons passed the 1e-7 target (largest observed relative error 5.389e-10); all 84 scalar power-closure comparisons agree to nine decimal places.Validation:
The version bump updates the lockfile, runtime version export, fixture version metadata, assertions, and changelog. No npm publication or visualizer dependency change is included. The visualizer can use the CI-tested 0.8.0 tarball from this PR/merge workflow using its existing vendoring process.