Difference between revisions of "PYTHIA"

From EIC
Jump to navigation Jump to search
(Replaced content with "This page is now maintained at [https://eic.github.io/software/pythia6.html https://eic.github.io/software/pythia6.html].")
Tag: Replaced
 
(13 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== Documentation on PYTHIA: ==
+
This page is now maintained at [https://eic.github.io/software/pythia6.html https://eic.github.io/software/pythia6.html].
* for ep only versions of PYTHIA 6.4 can be used
 
* its www-page http://home.thep.lu.se/~torbjorn/pythiaaux/recent.html
 
* the manual http://home.thep.lu.se/~torbjorn/pythia/lutp0613man2.pdf<br>
 
* a file containing all particle codes and decay channels with branching ratios implemented in pythia ([http://www.phenix.bnl.gov/WWW/publish/elke/EIC/Files-for-Wiki/Pythia.6.4.particles.codes.and.decays.txt [PYTHIA PDG]])
 
==== Pythia processes important in ep ====
 
 
 
{| class="wikitable" style="text-align:left" border="1" cellpadding="3" cellspacing="0"
 
|-
 
! style="background:#ffdead;" |Subprocess
 
! style="background:#ffdead;" |#
 
! style="background:#ffdead;" |Description
 
|-
 
|colspan="3" align="center"| soft VMD
 
|-
 
!V N → V N
 
!91
 
!elastic VMD
 
|-
 
!V N → V X
 
!92
 
!single-diffractive VMD
 
|-
 
!V N → XN
 
!93
 
!single-diffractive VMD
 
|-
 
!V N → XX
 
!94
 
!double-diffractive VMD
 
|-
 
!V N → X
 
!95
 
!soft non-diffractive VMD low-pT
 
|-
 
|colspan="3" align="center" | QCD 2→2
 
|-
 
!
 
!96
 
!semihard QCD 2→2
 
|-
 
|colspan="3" align="center" | RESOLVED (hard VMD and anomalous)
 
|-
 
!qq → qq
 
!11
 
!QCD 2 → 2(q)
 
|-
 
!q qbar → q qbar
 
!12
 
!
 
|-
 
!q qbar → gg
 
!13
 
!
 
|-
 
!gq → gq
 
!28
 
!
 
|-
 
!qg → qg
 
!28
 
!QCD 2 → 2(g)
 
|-
 
!gg → q qbar
 
!53
 
!
 
|-
 
!gg → gg
 
!68
 
!
 
|-
 
|colspan="3" align="center" | DIRECT
 
|-
 
!γ∗q → q
 
!99 
 
!LO DIS
 
|-
 
!γ∗T q → qg
 
!131 
 
!(transverse) QCDC
 
|-
 
!γ∗L q → qg
 
!132 
 
!(longitudinal) QCDC
 
|-
 
!γ∗T g → q qbar
 
!135 
 
!(transverse) PGF
 
|-
 
!γ∗L g → q qbar
 
!136 
 
!(longitudinal) PGF
 
|}
 
VMD: Vector Meson Dominance, describing the elastic diffractive production of Vector Mesons<br>
 
QCDC: QCD-Compton, radiation of a gluon from incoming or outgoing quark lines<br>
 
PGF: Photon Gluon Fusion<br>
 
 
 
== Running PYTHIA ==
 
the code can be found on the afs directory for EIC at BNL
 
"/afs/rhic.bnl.gov/eic/PACKAGES/PYTHIA-RAD-CORR"
 
 
 
this is code is based on PYTHIA 6.4.13 and was modified to include radiative corrections using [[#Documentation on Radiative Corrections: | RadGen]].<br>
 
The main program is in the same directory and called [https://wiki.bnl.gov/eic/upload/PyMaineRHIC-Jan2012.pdf [pyMaineRHIC.f]], several other routines are needed which are in the same directory.<br>
 
The executable is in the same directory and called pythiaeRHIC<br>
 
There are several steer files (named: input.data. XXXXX.eic) provided in this directory to run PYTHIA and get reasonable output
 
Here example files for [https://wiki.bnl.gov/eic/upload/Input.data.eAu_noradcorr.eic.pdf‎ [eAu]] and [https://wiki.bnl.gov/eic/upload/Input.data.ep_noradcorr.eic.pdf‎ [ep]]
 
 
 
=== How to Run the Code ===
 
==== without radiative corrections ====
 
  pythiaeRHIC < input.data_noradcor.eic > XXX.log 
 
input.data_noradcor.eic is one of the steer file examples in the directory to run PYTHIA with settings tuned for Hermes, and/or H1 and ZEUS.<br>
 
If you want to run only elastic vector meson production the example steer file is "input.data_noradcor.VM.eic"
 
 
 
==== with radiative corrections ====
 
* create a directory called radgen in the area you want to run the code
 
* you either need to generate the lookup table for your cuts and beam energy settings first <br>
 
    pythiaeRHIC < input.data_make-radcor.eic
 
* or you can use one of the files already generated<br>
 
the directories are in
 
  "/afs/rhic.bnl.gov/eic/PACKAGES/PYTHIA-RAD-CORR"
 
and called radgen(ebeamB)x(pbeamE), like  radgen10x100 or radgen4x100 or .......
 
* to run the code than with radiative corrections simply change the steer file to either
 
    input.data_radcor.eic or input.data_radcor.VM.eic and type pythiaeRHIC < input.data_radcor.eic > XXX.log
 
 
 
=== Output file structure ===
 
the output file is in a text format which has the following structure.<br>
 
* 1st line:  PYTHIA EVENT FILE
 
* 2nd line: "============================================"
 
<br>
 
* 3rd line: Information on event wise variables stored in the file
 
{| class="wikitable" style="text-align:left" border="1" cellpadding="2" cellspacing="0"
 
| I: || 0 (line index)
 
|-
 
| ievent: || eventnumber running from 1 to XXX
 
|-
 
| genevent: || trials to generate this event
 
|-
 
| subprocess: || pythia subprocess (MSTI(1)), for details see table above
 
|-
 
| nucleon: || hadron beam type (MSTI(12))               
 
|-
 
| targetparton: || parton hit in the target (MSTI(16))
 
|-
 
| xtargparton: || x of target parton (PARI(34))
 
|-
 
| beamparton: || in case of resolved photon processes and soft VMD the virtual photon has a hadronic structure. This gives the info which parton interacted with the target parton (MSTI(15))
 
|-
 
| xbeamparton: || x of beam parton (PARI(33))             
 
|-
 
| thetabeamparton: || theta of beam parton (PARI(53))
 
|-
 
| truey, trueQ2, truex, trueW2, trueNu: || are the kinematic variables of the event.
 
|-
 
| || If radiative corrections are turned on they are different from what is calculated from the scattered lepton.
 
|-
 
| || If radiative corrections are turned off they are the same as what is calculated from the scattered lepton
 
|-
 
| leptonphi:|| phi of the lepton (VINT(313)) 
 
|-
 
| s_hat: || shat of the process (PARI(14))
 
|-
 
| t_hat: || Mandelstam t (PARI(15))
 
|-
 
| u_hat: || Mandelstm u (PARI(16))
 
|-
 
| pt2_hat: || pthat^2 of the hard scattering (PARI(18))
 
|-
 
| Q2_hat: || Q2hat of the hard scattering (PARI(22)),
 
|-
 
| F2, F1, R, sigma_rad, SigRadCor: || information used and needed in the radiative correction code
 
|-
 
| EBrems: || energy of the radiative photon in the nuclear rest frame
 
|-
 
| photonflux: || flux factor from PYTHIA (VINT(319))
 
|-
 
| nrTracks: || number of tracks in this event, includes also virtual particles
 
|}
 
<br>
 
* 4th line: "============================================"
 
<br>
 
* 5th line: Information on track wise variables stored in the file
 
{| class="wikitable" style="text-align:left" border="1" cellpadding="2" cellspacing="0"
 
| I: || line index, runs from 1 to nrTracks 
 
|- 
 
|K(I,1): || status code KS (1: stable particles      11: particles which decay        55; radiative photon)
 
|-
 
|K(I,2): || particle KF code (211: pion, 2112:n, ....)
 
|- 
 
|K(I,3): || line number of parent particle
 
|-
 
|K(I,4): || normally the line number of the first daughter; it is 0 for an undecayed particle or unfragmented parton
 
|- 
 
|K(I,5): || normally the line number of the last daughter; it is 0 for an undecayed particle or unfragmented parton.       
 
|- 
 
|P(I,1): || px of particle 
 
|- 
 
|P(I,2): || py of particle 
 
|- 
 
|P(I,3): || pz of particle
 
|- 
 
|P(I,4): || Energy of particle
 
|- 
 
|P(I,5): || mass of particle 
 
|- 
 
|V(I,1): || x vertex information 
 
|-
 
|V(I,2): || y vertex information 
 
|- 
 
|V(I,3): || z vertex information
 
|}
 
* 6th line: "============================================"
 
* 7th line: event information for first event
 
* 8th line: "============================================"
 
* 9th to X-1 line: trackwise info of 1st event
 
* Xth line "=============== Event finished ==============="
 
 
 
'''the information from line 7 to X repeats for each event.'''
 
 
 
=== How to analyze events ===
 
* create a root tree
 
there are root macros available to convert the output txt-files into root trees.<br>
 
Details how to run the macros can be found [https://wiki.bnl.gov/eic/index.php/ROOT [here]]
 
 
 
===== MC normalization=====
 
to normalize your counts to cross section you need two informations
 
* the total number of trials (NGEN(0,3)), it is printed to the screen/logfile if PYTHIA finishes
 
* the total integrated cross section (PARI(1)), the unit is microbarn (10^-6), it is printed to the screen/logfile if PYTHIA finishes<br>
 
<br>
 
'''Counts = Luminosity x Cross Section'''<br>
 
<br>
 
 
 
==> count * total integrated cross section /total number of trials
 
to calculate the corresponding luminosity
 
==> total number of trials/ total integrated cross section
 
 
 
== Documentation on Radiative Corrections: ==
 
the code implemented in PTHIA to calculate radiative corrections is called RADGEN<br>
 
The writeup on it can be found here [http://arXiv.org/pdf/hep-ph/9906408 [hep-ph/9906408]]<br>
 
The following steps have been done to implement it in PYTHIA:
 
* change the subroutine pygaga.f so it calls radgen after you have thrown y and Q2
 
* get the true y and Q2 from radgen and the radiated photon
 
* Pythia will continue to now generate an event based on this y and Q2
 
* Pythia still operates under accept reject, the extra weigt from the radiative corrections is absorbed in the flux factor
 
 
 
=== Additional Info on radiative corrections ===
 
www-pages with codes
 
* [http://www.jlab.org/RC/ [http://www.jlab.org/RC/]]
 
* [http://www.desy.de/~heramc/mclist.html [http://www.desy.de/~heramc/mclist.html]]
 
* Nuclear beams in HERA.
 
M. Arneodo, (Turin U. & INFN, Cosenza) , A. Bialas, (Jagiellonian U.) , M.W. Krasny, (Paris U., VI-VII & Paris U., VI-VII) , T. Sloan, (Lancaster U.) , M. Strikman, (Penn State U.) . Sep 1996. 40pp.
 
To be published in the proceedings of Workshop on Future Physics at HERA,
 
Hamburg, Germany, 25-26 Sep 1995.
 
In *Hamburg 1995/96, Future physics at HERA* 887-926.
 
e-Print: hep-ph/9610423
 
and the references 5 and 6 in this article
 
to find them check [http://www.desy.de/~heraws96/ [here]]
 
 
 
[[Category:Event Generators]]
 

Latest revision as of 14:06, 9 June 2020

This page is now maintained at https://eic.github.io/software/pythia6.html.