Skip to content

Retain source fixed widths in legacy tree and bridge currents - #31

Open
lsimon125 wants to merge 1 commit into
MadGraphTeam:loopfrom
lsimon125:codex/loop-fixed-width-bridges
Open

lsimon125 wants to merge 1 commit into
MadGraphTeam:loopfrom
lsimon125:codex/loop-fixed-width-bridges

Conversation

@lsimon125

Copy link
Copy Markdown

Demonstrated Problem

The legacy one-loop source path drops finite widths from tree propagators and loop bridges. In e+ e- > u u~, this shifts the Born result and every virtual coefficient by the same relative amount (about 1.28e-7 at one of the tested points). Setting only the reference Z width to zero removes the discrepancy.

Minimal Fix

  • Add the source fixed-width term +i*m*width to the shared tree/bridge denominator helper. Born, local counterterms and loop bridges use the same helper.
  • Retain the corresponding declared width parameters in the source scalar binding, including live parameter updates.
  • Add exact zero-width, finite-width and renamed-width regression cases.

This is a fixed-width tree/bridge prescription, not a complex-mass renormalization scheme. Integral-family masses and the v2 engine are unchanged. No process-specific colour or Born-factor shortcut is used.

Validation

  • Three exact scalar regression cases pass. They need no native graph-worker fixture and were run with the parent collection-wide graph licence gate excluded:
PYTHONPATH=src python -m pytest --confcutdir=tests/unit \
  tests/unit/test_loop_graph_basis.py -q \
  -k tree_bridge_denominator_retains_symbolic_fixed_width
  • Independent MadNkLO/MadLoop comparison: 56 Born/finite/single-pole/double-pole checks pass across two kinematic points, two alpha_s values, three scales, and additional zero/enlarged Z-width updates on the loaded runtimes. Worst relative difference: 4.49e-13. Acceptance tolerance remains 1e-7.
  • Generated artifacts are evaluated through the dynamically linked C SDK; no numerical normalization adjustment was introduced.
  • git diff --check passes.

The numerical fixture was run in the isolated MadNkLO integration based on loop at 36f43250, with the package-scope fix from #30. The three files touched here are unchanged between that base and this PR base. Generated artifacts/reports remain local; this PR contains only the source fix and small regression.

This branch has not been deployed

No deployments
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