Repository navigation
Evaluate native tree amplitudes with runtime model parameters - #18
Open
huashengshao wants to merge 1 commit into
Open
huashengshao wants to merge 1 commit into
huashengshao wants to merge 1 commit into
Conversation
This branch has not been deployed
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.
Prepared native tree amplitudes currently freeze every model parameter. This adds ordered runtime parameter inputs to the existing exact coefficient program, allowing running couplings and model coefficients to change per lane without regenerating diagrams or rescaling a completed norm.
TreeProgram::prepare_with_runtime_parametersretains each declared parameter as a free input through FeynKit's existing scalar resolver, including analytic dependencies such asG=2*sqrt(pi*aS). The same native evaluator accepts real, positive-real or complex parameter batches for helicity coefficients, external component probes and spin-summed norms. Existing constructors retain their behavior. Runtime values preserve the selected carrier and working precision, and row identity, domains, immutable structural zeros and pole admission remain checked.Exact graph coupling-order selection also rejects mixed-order vertex entries, whose componentwise-maximum label cannot implement a termwise projection. Unfiltered mixed vertices retain their full coherent sum.
Validation: all 81 native unit tests pass on both the standalone 9cdc dependency family and the coherent ROULETTE e93 consumer family with PATH=/nonexistent. Seven new checks include changing
aSbelow binary64 resolution at 173 working bits, complete complex parameter phases, zero cached coupling defaults, runtime domains and row ordering, and explicit mixed-order rejection. The preparation/runtime source received independent review.A separate consumer adapter test exposed roundoff in the pre-existing complex norm sum at a boosted gluon point. That adapter correctly rejects the residual imaginary part under its
Unknownaccuracy contract; exact Hermitian norm lowering is tracked in a separate follow-up and is not claimed by this parameter-input change.Stacked on codex/native-qcd-amplitudes at a547843. No dependency revision changes, Python preparation, process source generation, or additional amplitude engine.