Opened 13 years ago
Closed 13 years ago
#388 closed defect (fixed)
Precision loss and violation of transversality for massless spinors in O'Mega
Reported by: | Christian Speckner | Owned by: | Christian Speckner |
---|---|---|---|
Priority: | P1 | Milestone: | v2.0.5 |
Component: | omega | Version: | 2.0.4 |
Severity: | normal | Keywords: | |
Cc: |
Description
The wavefunctions for massless external fermions in helicity eigenstates frequently contain nonzero entries around 10-7 which should in fact be exactly zero. Among other things, this leads to a violation of transversality for the off-shell wavefunctions formed from two spinors by about 10-5 (which is how I noticed the issue). While this is arguable neglegible for the application in WHIZARD, it is an obstacle when comparing numeric values of amplitudes.
The issue can be traced back to the expression sqrt (max (p0 - p, 0)) which multiplies the corresponding entries in the spinors --- while analytically zero, p0 - p is numerically around 10-14, and the square root then does its nasty work and leads to the aforementioned instability.
In r2932, I have added a fix to u
and vbar
by checking for m < epsilon * p and setting p0 - p to zero in this case, which corresponds to checking whether m is negligible compared to p. If everybody is fine with this solution, I'll close this ticket again ;)
Change History (4)
comment:1 Changed 13 years ago by
Status: | new → assigned |
---|
comment:2 Changed 13 years ago by
comment:3 Changed 13 years ago by
Priority: | P3 → P1 |
---|
comment:4 Changed 13 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
As no one protests against my solution, I'm closing this as fixed :)
Reintroduced the
max (p0 - pabs, 0)
logic for a little extra safety in r2933.