Name: V. Shtabovenko Date: 05/29/18-06:15:47 AM Z


Hi,

well if you have an expression like

SpinorUBar[p1].GA[mu].SpinorV[p2] SpinorVBar[p2].GA[mu].SpinorU[p1]

then there is nothing more you can contract at this stage, so the
Lorentz index will of course remain there.

If you are calculating an amplitude squared, the next step is to apply
the usual summation formulas for Dirac spinors

u ubar = pslash +m /2m,

v vbar = pslash -m /2m,

take the Dirac traces and contract the remaining indices (now that the
expression is free of Dirac spinors and matrices)

res=((M12 // FermionSpinSum) /. DiracTrace -> Tr) // Contract

FreeQ[res, LorentzIndex]
(*True*)

Cheers,
Vladyslav

Am 28.05.2018 um 22:14 schrieb D. Azevedo:
> Hello FeynCalc team,
>
> first of all, thank you for such a powerful tool.
>
> I am beginning learning FeynCalc and before venturing into loops, I would like to compute the squared matrix element of e+ e- -> t bar{t} h at tree level. I am having some problems related to contracting lorentz indexes. My nb file is:
>
> SetOptions[InitializeModel,
> ModelEdit :> (M$ClassesDescription =
> M$ClassesDescription /. MZ -> MZc)]
> InitializeModel[{SM, UnitarySM},
> GenericModel -> {Lorentz, UnitaryLorentz}];
>
> NoElectronHCoupling =
> ExcludeFieldPoints -> {FieldPoint[0][-F[2, {1}], F[1, {1}], S[3]],
> FieldPoint[0][-F[2, {1}], F[2, {1}], S[1]],
> FieldPoint[0][-F[2, {1}], F[2, {1}], S[2]]}
>
> part = InsertFields[
> CreateTopologies[0,
> 2 -> 3], {F[2, {1}], -F[2, {1}]} -> {F[3, {3}], -F[3, {3}], S[1]},
> Restrictions -> NoElectronHCoupling, InsertionLevel -> {Classes},
> Model -> {SM, UnitarySM},
> GenericModel -> {Lorentz, UnitaryLorentz}];
> Paint[part, PaintLevel -> {Classes}]
>
> listdiag =
> FCFAConvert[CreateFeynAmp[part], SMP -> True, ChangeDimension -> 4,
> IncomingMomenta -> {p1, p2}, OutgoingMomenta -> {k1, k2, k3},
> DropSumOver -> True, List -> False, UndoChiralSplittings -> True];
> diag1 = listdiag[[5]]
> diag2 = listdiag[[4]]
> diag3 = listdiag[[3]]
> diag4 = listdiag[[2]]
> diag5 = listdiag[[1]]
>
> I am splitting the diagrams just to follow the same idea as some tutorials I have been reading. diag[[5]] is the Higgsstrahung from the Z boson. In this diagram (as with all of the others) I haven’t been able to contract the lorentz indexes, there is one that remains for some reason.
>
> (I set up my kinematics)
> ClearScalarProducts;
>
> SP[p1, p1] = me^2;
> SP[p2, p2] = me^2;
> SP[p1, p2] = (s - 2 me^2)/2 ;
>
> SP[k1, k1] = mt^2;
> SP[k2, k2] = mt^2;
> SP[k3, k3] = mh^2;
> SP[k1, k2] = (s3 - 2 mt^2)/2;
> SP[k1, k3] = (s2 - mt^2 - mh^2)/2;
> SP[k2, k3] = (s1 - mt^2 - mh^2)/2;
>
> diag1 = diag1 /. {Lor1 -> \[Mu], Lor2 -> \[Nu], Lor3 -> \[Alpha],
> Lor4 -> \[Beta]};
> diag1C = ComplexConjugate[
> diag1] /. {\[Mu] -> \[Mu]lin, \[Nu] -> \[Nu]lin, \[Alpha] -> \
> \[Alpha]lin, \[Beta] -> \[Beta]lin};
> M12 = diag1 diag1C // Contract
>
> M12 still have mu and mulin indexes left to be contracted. What am I doing wrong?
>
> Thank you,
> Duarte
>