Name: V. Shtabovenko Date: 02/27/18-10:06:02 PM Z
Hi,
thanks for the hint. EWMuonDecayTree is missing an
FCRenameDummyIndices
in the part where the matrix element is squared: I backported this
example from the current development version where ComplexConjugate
applies FCRenameDummyIndices by default. In FeynCalc 9.2 this is yet
not
the case. Should be now fixed.
https://github.com/FeynCalc/feyncalc/commit/51d72bc5467e016d117ccbe8b2bf74ecdb3d1d65
I suppose that your code might have the same issue.
In general, FeynCalc is not very efficient for calculating squared
matrix elements. It works fast enough for simple cases with few
diagrams, but realistic calculations tend to become painfully slow.
Some people tend to overcome that using helicity amplitude methods.
Others (like myself), delegate the calculation of M^2 to FORM.
Cheers,
Vladyslav
Am 27.02.2018 um 20:29 schrieb Pedro:
> Dear all,
>
> I am calculating a simple diagram and the program is returning the
wrong answer.
>
> I have looked up my code thousand times and I don’t think it has an
error (plus I run the EWMuonDecayTree example and it gave me the same
wrong answer….)
>
> Is this a bug or am I missing something very trivial?
>
> The proble is the following:
>
> I am calculating the muon decay matrix element, using the following
code:
>
> (* Beging of the code *)
>
>
> (*This is Gf/Sqrt[2]Overscriptu,
_\[Gamma]^a(1-\[Gamma]^5)u(p1) (muon curent)
*)
>
> j\[Mu] = Gf/Sqrt[2]*Spinor[p3,
0].GA[a].(1 - GA[5]).Spinor[p1,
m\[Mu]];
>
>
> (*This is Gf/Sqrt[2]Overscriptu,
_\[Gamma]^a(1-\[Gamma]^5)v(p2) (electron
curent) *)
>
> je = Gf/Sqrt[2] Spinor[p4, me].GA[b].(1 -
GA[5]).Spinor[-p2, 0];
>
>
> (*This is to contract the \[Gamma] matrices*)
>
> M = (j\[Mu] MT[a, b] je // Contract);
>
>
> (* Matrix element <|M|^2>. Should be 64 Gf^2 (p1.p2)(p3.p4), see
e.g. Griffths *)
>
> FermionSpinSum[M*ComplexConjugate[M]] /. DiracTrace
-> TR
>
>
> (*End of the code *)
>
>
> The result it is giving is: 64 Gf^2 (p1.p3)(p2.p4) and not the well
known 64 Gf^2 (p1.p2)(p3.p4).
>
>
> Now, if I run the EWMuonDecayTree example, it will show in the last
line
>
> Check with the Okun, Chapter 3.2:CORRECT.
>
> But only because it is checking the final total decay rate and not
the intermediate step (by lucky, it gave the correct result). If you run
the EWMuonDecayTree, in the third output, after the Feynman Diagram, you
will find the equivalent expression. Notice that the program gives
~(k.q1)(p.q2) which should be ~(k.q2)(p.q1)
>
>
> I am currently using version 9.2.0 and I also tested it on 8.2.0 and
it gave the same results.
>
> Is there something wrong with my code and the example?
>
>
> thanks
>