Name: Lingxiao Xu Date: 12/21/14-05:01:05 PM Z


Hi, guys:
   Recently I am trying to evaluate the process muon decay into electron and photon in a theory, which contains just 2 kinds of leptons(muon and electron),photon,another kind of fermion and one neutral scalar. One lepton and fermion can couple with the neutral scalar via Yukawa-type interaction, further normal QED vertex is allowed in this theory.
   I just want to get the amplitude of this process at one loop level. Because of Ward-Takahashi Identity, the divergence in vertex correction type diagram should cancel the divergence in other two self energy type diagrams.
Here comes my problem, when I write the amplitude with p1,p2,k in different ways, in some ways the divergences cancel but some others don’t. PS:muon has mass m2 and momentum p2, electron has mass m1 and momentum p1 and photon has momentum k, where we have p2=p1+k.

Is there any bug ??? I am using FeynCalc 8.2.0 with Mathematica 9 at Win7.
 Thanks for the help!!

Regards,
Lingxiao

Here is code which might be helpful to solve my problem;
The divergences just don’t cancel,

In[2]:= (*some shorthands*)
dm[mu_] := DiracMatrix[mu, Dimension -> D]
ds[p_] := DiracSlash[p]
gA := I (AL dm[7] + AR dm[6])(*lepton scalar fermion Yukawa vertex*)
gB := I (BL dm[7] + BR dm[6])(*fermion scalar lepton Yukawa vertex*)
sp[p_, q_] := ScalarProduct[p, q]

In[7]:= onshell = {sp[p1, p1] -> m1^2, sp[p2, p2] -> m2^2,
   sp[k, k] -> 0, sp[k, p1] -> (m2^2 - m1^2)/2,
   sp[k, p2] -> (m2^2 - m1^2)/2, sp[p1, Polarization[k]] -> p2epk,
   sp[p2, Polarization[k]] -> p2epk};

In[8]:= div = {B0[m1^2, mf^2, ms^2] -> Div,
   B0[m2^2, mf^2, ms^2] -> Div, B0[0, mf^2, ms^2] -> Div,
   B0[0, mf^2, mf^2] -> Div, B0[0, ms^2, ms^2] -> Div};

In[9]:= num1 =
  SpinorUBar[p1, m1].gA.(ds[q + p1] + mf).ds[
     Polarization[k]].(ds[q + p2] + mf).gB.SpinorU[p2, m2] // FCI;
amp1 = num1 FeynAmpDenominator[PropagatorDenominator[q + p1, mf],
    PropagatorDenominator[q + p2, mf], PropagatorDenominator[q, ms]];

num2 = SpinorUBar[p1, m1].gA.(ds[q + p1] + mf).gB.(ds[p1] + m2).ds[
    Polarization[k]].SpinorU[p2, m2] // FCI; amp2 =
 num2 FeynAmpDenominator[PropagatorDenominator[q + p1, mf],
   PropagatorDenominator[p1, m2], PropagatorDenominator[q, ms]];

num3 = SpinorUBar[p1, m1].ds[
     Polarization[k]].(ds[p2] + m1).gA.(ds[q + p2] + mf).gB.SpinorU[
     p2, m2] // FCI;
amp3 = num3 FeynAmpDenominator[PropagatorDenominator[p2, m1],
    PropagatorDenominator[q + p2, mf], PropagatorDenominator[q, ms]];
SetOptions[OneLoop, Dimension -> D];
ans = OneLoop[q, amp1 + amp2 + amp3] /. onshell /. div // PaVeReduce //
    Simplify;
test = Coefficient[ans, Div] // Simplify

Out[16]= -(1/2) I \[Pi]^2 (AL BR \[LeftDoubleBracketingBar]\CurlyPhi.(\[Gamma]\[CenterDot]\CurlyEpsilon).\[Gamma]^6.\CurlyPhi\[RightDoubleBracketingBar]+AR BL \[LeftDoubleBracketingBar]\CurlyPhi.(\[Gamma]\[CenterDot]\CurlyEpsilon).\[Gamma]^7.\CurlyPhi\[RightDoubleBracketingBar])