[an error occurred while processing this directive]
Package-X is hosted by Hepforge, IPPP Durham
PACKAGE-X TUTORIAL

Linking FeynCalc to Package-X

FeynCalc is a Mathematica package consisting of a wide array of tools to assist with high energy physics computations. Since the tensor algebraic capabilities of FeynCalc are more comprehensive than those of Package-X, it is expedient to carry out the bulk of your calculations with FeynCalc, and only use Package-X's OneLoop.m file as a library of analytic one-loop integrals. The add-on FeynHelpers to FeynCalc provides this interface. This tutorial illustrates how you can analytically evaluate one loop integrals in FeynCalc using FeynHelpers.

Loading FeynHelpers

After installing FeynCalc 9.2 or later together with FeynHelpers 1.1, initialize them from a fresh kernel:

Restart kernel to start a new Mathematica session. Load FeynCalc, together with FeynHelpers:
In[2]:=
Click for copyable input
In[8]:=
Click for copyable input

Once initialized, FeynHelpers provides the function PaXEvaluate, which interfaces with Package-X to insert the analytic forms of one loop integrals.

PaXEvaluate[expr,q]evaluates scalar 1-loop integrals (up to 4-point functions) in expr that depend on the loop momentum q in D dimensions.

Substitute analytic forms of 1-loop integrals with Package-X.

Example

In this tutorial, we will calculate the one loop gluon self energy in QCD in covariant ξ-gauges. Omitting the quarks, there are three contributing diagrams:

    

This example uses FeynCalc's library of Feynman rules, and its ability to carry out color algebra. Package-X will be used in the end to supply the analytic expressions.

Construct the Feynman integrals using the Feynman rules
In[10]:=
Click for copyable input
Out[10]=
Out[11]=
Out[12]=
Apply TID to make a covariant decomposition of the tensor integrals:
In[13]:=
Click for copyable input
Out[13]=
Apply PaXEvaluate to insert the analytic expressions (Package-X's OneLoop.m file is loaded at this stage):
In[14]:=
Click for copyable input
Out[14]=
Use Collect2 to organize the expression, separating the UV divergent part from the remainder:
In[15]:=
Click for copyable input
Out[15]=