Tutorial

This documentation explains how to generate the SIDIS cross section:

dσdxdQ2dzdpT

in units of GeV5. Here, pT is the produced hadron’s transverse momentum in the Breit frame and x,z,Q2 are the usual kinematical variables.

Getting started

  • Install Anaconda with python2 in your system which you can get for free at https://www.anaconda.com
  • Install lhapdf in your system.
  • Open up a terminal. Below $ denotes the terminal prompt.
  • You will need to make lhapdf reachable from python. For that you need to set the environment variables PYTHONPATH and LD_LIBRARY_PATH. For bash it can be done as
export PATH=<path2lhapdf>/bin:$PATH
export PYTHONPATH=$PYTHONPATH:path2lhapdf/lib/python2.7/site-packages/
export LD_LIBRARY_PATH=<lhapdf>/lib
  • Alternatively you can place these lines in your .bashrc file
  • Clone the repository from github
git clone git@github.com:JeffersonLab/BigTMD.git
  • Go inside the repo directory
cd BigTMD
  • Copy the folders lhapdf/dsshpNLO and lhapdf/dsshmNLO inside to
<path2lhapdf>/share/LHAPDF/
  • This will allow you to load DSS07 fragmentation functions from lhapdf
  • Run the setup script (this takes some time)
./setup.py
  • The script sidis.py orchestrates the full NLO calculation for a given kinematic point x,Q2,z,qT=pT/z
  • Use driver.py as an example. You can run it simply like
./driver.py

Details

In the above, driver.py calls a function sidis.get_xsec from sidis.py. In turn, sidis.py imports LO.py and the contents of Pg and Ppp in the NLO directory. LO.py contains the leading order cross section directly, while Pg and Ppp contain all channels and charge configurations for the next-to-leading order cross section. (See citation for explanations of symbols, including Pg and Ppp.) These functions are of the form

 fchn(channel)(charge configuration).

The following table summarizes the various incoming and outgoing parton combinations for the virtual and real contributions.

channels index
channel virtual real
1 γ+g(qh)+ˉq γ+g(qh)+ˉq+g
2 γ+q(qh)+g γ+q(qh)+g+g
    γ+q(qh)+q+ˉq
3 γ+q(gh)+q γ+q(gh)+q+g
4   γ+g(gh)+q+ˉq
5   γ+q(ˉqh)+q+ˉq
6   γ+q(qh)+q+ˉq

The channels are organized such that IR singularities of the virtual contribution matches with those from the real contributions. γ is the virtual photon, g is a gluon, q and q denote different quark flavors, and ˉq and ˉq are the antiparticles of q and q respectively. fh means it is the parton of flavor “math:f that hadronizes. For example,

γ+q(gh)+q+g

refers to graphs with 3 unobserved real emissions where a target quark leads to a hadronizing final state gluon and an unobserved quark and gluon. The correspondence between real and virtual graphs is in the sense of Table I of citation.

By charge configuration we mean whether the photon couples directly to the charge of a target (anti)quark. A charge configuration A is when the photon couples directly to the quark flavor in the pdf,

_images/chgA.jpg

configuration C is when it does not,

_images/chgC.jpg

and B is an interference between two such cases. See Fig.``chgcon`` for examples.

_images/chgB.jpg