# BEGIN ANSIBLE MANAGED BLOCK WIKIEDITOR #17.01.14-> wfLoadExtension( 'WikiEditor' ); # ## Enables/disables use of WikiEditor by default but still allow users to disable it in preferences #$wgDefaultUserOptions['usebetatoolbar'] = 1; #$wgDefaultUserOptions['usebetatoolbar-cgd'] = 1; # ## Displays the Preview and Changes tabs #$wgDefaultUserOptions['wikieditor-preview'] = 0; # ## Displays the Publish and Cancel buttons on the top right side #$wgDefaultUserOptions['wikieditor-publish'] = 0; #17.01.14<- # END ANSIBLE MANAGED BLOCK WIKIEDITOR Changes - EIC

# Changes

,  14:40, 3 June 2019
no edit summary
Line 1: Line 1: −
====By now it is better to use DJANGOH for polarised studies as it is the more complete generator====
+
==== By now it is better to use DJANGOH for polarised studies as it is the more complete generator ====
+

PEPSI (Polarised Electron Proton Scattering Interactions) [[#Ref1|[1]]] is a Monte Carlo generator for polarised deep inelastic scattering (pDIS). It is based on the [http://www.isv.uu.se/thep/lepto/ LEPTO] 6.5 Monte Carlo for unpolarised DIS.

PEPSI (Polarised Electron Proton Scattering Interactions) [[#Ref1|[1]]] is a Monte Carlo generator for polarised deep inelastic scattering (pDIS). It is based on the [http://www.isv.uu.se/thep/lepto/ LEPTO] 6.5 Monte Carlo for unpolarised DIS.

== PEPSI References ==

== PEPSI References ==
−
<span id="Ref1">(1)</span> ''"PEPSI - a Monte Carlo generator for polarized leptoproduction"'', L. Mankiewicz, A. Schäfer and M. Veltri, Comp. Phys. Comm. '''71''', 305-318 (1992) [https://wiki.bnl.gov/eic/index.php/File:PEPSI.paper.pdf PEPSI.paper.pdf].
+
<span id="Ref1">(1)</span> ''"PEPSI - a Monte Carlo generator for polarized leptoproduction"'', L. Mankiewicz, A. Schäfer and M. Veltri, Comp. Phys. Comm. '''71''', 305-318 (1992) [https://wiki.bnl.gov/eic/upload/PEPSI.paper.pdf PEPSI.paper.pdf].
−
==Parton distribution functions==
+
== Parton distribution functions ==
−
The distribution function to use in polarised leptoproduction is set via the variable <tt>LST(15)</tt> in the LEPTO <tt>COMMON</tt> block <tt>/LEPTOU/</tt>. [[PEPSI-pdf | Tables 1 and 2]] list internal allowed values of <tt>LST(15)</tt> for polarised and unpolarised distributions respectively.
+
The distribution function to use in polarised leptoproduction is set via the variable <tt>LST(15)</tt> in the LEPTO <tt>COMMON</tt> block <tt>/LEPTOU/</tt>. [[PEPSI-pdf|Tables 1 and 2]] list internal allowed values of <tt>LST(15)</tt> for polarised and unpolarised distributions respectively.

Pepsi is linked with the pdflib such all PDFs included in there can be used by setting <tt>LST(15)</tt> to the respective PDF-ID

Pepsi is linked with the pdflib such all PDFs included in there can be used by setting <tt>LST(15)</tt> to the respective PDF-ID
Line 16: Line 17:
{| class="wikitable" style="text-align:left" border="1" cellpadding="3" cellspacing="0"

{| class="wikitable" style="text-align:left" border="1" cellpadding="3" cellspacing="0"

|-

|-
+
+
+

|-

|-
|colspan="3" align="center" | DIRECT
+
| colspan="3" align="center" | DIRECT

|-

|-
!γ∗q → q
+
! γ∗q → q
!1
+
! 1
!LO DIS
+
! LO DIS

|-

|-
!γ∗ q → qg
+
! γ∗ q → qg
!2
+
! 2

! QCDC

! QCDC

|-

|-
!γ∗ g → q qbar
+
! γ∗ g → q qbar
!3
+
! 3

! PGF

! PGF

|}

|}
QCDC: QCD-Compton, radiation of a gluon from incoming or outgoing quark lines<br>
+

PGF: Photon Gluon Fusion<br>
+
QCDC: QCD-Compton, radiation of a gluon from incoming or outgoing quark lines<br/>PGF: Photon Gluon Fusion

== Running PEPSI ==

== Running PEPSI ==
+

the code can be found on the afs directory for EIC at BNL

the code can be found on the afs directory for EIC at BNL
+

"/afs/rhic.bnl.gov/eic/PACKAGES/PEPSI"

"/afs/rhic.bnl.gov/eic/PACKAGES/PEPSI"
−
this code is based on PEPSI/LEPTO and was modified to include radiative corrections using [[#Documentation on Radiative Corrections: | RadGen]].<br>
+
this code is based on PEPSI/LEPTO and was modified to include radiative corrections using [[#Documentation_on_Radiative_Corrections:|RadGen]].<br/>The main program is in the same directory and called pepsiMaineRHIC_noradcorr.f / pepsiMaineRHIC_radcorr.f, several other routines are needed, which are in the same directory.<br/>The executable is in the same directory and called pepsieRHICnoRAD / pepsieRHICwithRAD<br/>There are several steer files (named: input.data. XXXXX.eic) provided in this directory to run PEPSI and get reasonable output.
The main program is in the same directory and called pepsiMaineRHIC_noradcorr.f / pepsiMaineRHIC_radcorr.f, several other routines are needed, which are in the same directory.<br>
−
The executable is in the same directory and called pepsieRHICnoRAD / pepsieRHICwithRAD<br>
−
There are several steer files (named: input.data. XXXXX.eic) provided in this directory to run PEPSI and get reasonable output.

=== How to Run the Code ===

=== How to Run the Code ===
====Features====
+

PEPSI has to be run twice if polarized asymmetries should be generated, once for parallel, lepton and proton beam spin direction, and once antiparallel.<br>
+
==== Features ====
Charge Current events can only be generated in the unpolarized mode.<br>
+

The LST(8) can only be used different from 0 or 1 in the unpolarised mode.
+
PEPSI has to be run twice if polarized asymmetries should be generated, once for parallel, lepton and proton beam spin direction, and once antiparallel.<br/>Charge Current events can only be generated in the unpolarized mode.<br/>The LST(8) can only be used different from 0 or 1 in the unpolarised mode.

+

input.data_noradcor.eic.pol.anti is one of the steer file examples in the directory to run PEPSI with settings tuned for Hermes, and/or H1 and ZEUS for the antiparallel polarized cross-section<br>
+

input.data_noradcor.eic.pol.par: for the parallel polarized cross-section<br>
+
input.data_noradcor.eic.pol.anti is one of the steer file examples in the directory to run PEPSI with settings tuned for Hermes, and/or H1 and ZEUS for the antiparallel polarized cross-section<br/>input.data_noradcor.eic.pol.par: for the parallel polarized cross-section<br/>input.data_noradcor.eic.unpol: for the unpolarised cross-section

* 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>
+
*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
+

* or you can use one of the files already generated<br>
+

the files are in the directory
+
*or you can use one of the files already generated
+

+
the files are in the directory
+

+

and called xytab1unp.04.050.dat or xytab1ant.04.050.dat or xytab1par.04.050.dat

and called xytab1unp.04.050.dat or xytab1ant.04.050.dat or xytab1par.04.050.dat
* to run the code than with radiative corrections simply change the steer file to either
+

+
*to run the code than with radiative corrections simply change the steer file to either
+

+

=== Output file structure ===

=== Output file structure ===
the output file is in a text format which has the following structure.<br>
+

* 1st line:   PEPSI EVENT FILE
+
the output file is in a text format which has the following structure.
* 2nd line: "============================================"
+

<br>
+
*1st line: PEPSI EVENT FILE
* 3rd line: Information on event wise variables stored in the file
+
*2nd line: "============================================"
+

+

+

+
*3rd line: Information on event wise variables stored in the file
+

{| class="wikitable" style="text-align:left" border="1" cellpadding="2" cellspacing="0"

{| 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
−
|-
−
| process: || pepsi subprocess (LST(23)), for details see table above
−
|-
−
| subprocess: || pythia subprocess (LST(24)), for details see table above

|-

|-
| nucleon: || hadron beam type (LST(22))
+
| I:
+
| 0 (line index)
+
|-
+
| ievent:
+
| eventnumber running from 1 to XXX
+
|-
+
| genevent:
+
| trials to generate this event
+
|-
+
| process:
+
| pepsi subprocess (LST(23)), for details see table above
+
|-
+
| subprocess:
+
| pythia subprocess (LST(24)), for details see table above
+
|-
+
| nucleon:
+
+
|-
+
| struckparton:
+
| parton hit in the target (LST(25))

|-

|-
| struckparton: || parton hit in the target (LST(25))
+
| partontrack:
+
| # or parton track (LST(26))

|-

|-
| partontrack: || # or parton track (LST(26))
+
| truey, trueQ2, truex, trueW2, trueNu:
|-
+
| are the kinematic variables of the event.
| 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 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
+
|
+
| If radiative corrections are turned off they are the same as what is calculated from the scattered lepton

|-

|-
| mcfixedweight || weight calculated from generation limits
+
| mcfixedweight
+
| weight calculated from generation limits

|-

|-
| weight || total weight including everything
+
| weight
+
| total weight including everything

|-

|-
| dxsec || cross section included in the weight
+
| dxsec
+
| cross section included in the weight

|-

|-
| mcextraweight || Pepsi total cross section in pb from numerical integration parl(23)
+
| mcextraweight
+
| Pepsi total cross section in pb from numerical integration parl(23)

|-

|-
| dilut, F1, F2, A1, A2, R, Depol, d, eta, eps, chi || true variables needed to calculate g1
+
| dilut, F1, F2, A1, A2, R, Depol, d, eta, eps, chi
+
| true variables needed to calculate g1

|-

|-
| gendilut, genF1, genF2, genA1, genA2, genR, genDepol, gend, geneta, geneps, genchi || variables needed to calculate g1
+
| gendilut, genF1, genF2, genA1, genA2, genR, genDepol, gend, geneta, geneps, genchi
+
| variables needed to calculate g1

|-

|-
| SigRadCor: || information used and needed in the radiative correction code
+
+
| information used and needed in the radiative correction code

|-

|-
| EBrems: || energy of the radiative photon in the nuclear rest frame
+
| EBrems:
+
| energy of the radiative photon in the nuclear rest frame

|-

|-
| nrTracks: || number of tracks in this event, includes also virtual particles
+
| 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
+
*4th line: "============================================"
+

+

+

+
*5th line: Information on track wise variables stored in the file
+

{| class="wikitable" style="text-align:left" border="1" cellpadding="2" cellspacing="0"

{| 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, ....)
+
| I:
|-
+
| line index, runs from 1 to nrTracks
|K(I,3): || line number of parent particle
+
|-
+
| 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

|-

|-
|K(I,4): || normally the line number of the first daughter; it is 0 for an undecayed particle or unfragmented parton
+
| P(I,5):
|-
+
| mass of particle
|K(I,5): || normally the line number of the last daughter; it is 0 for an undecayed particle or unfragmented parton.
+
|-
|-
+
| V(I,1):
|P(I,1): || px of particle
+
| x vertex information
|-
+
|-
|P(I,2): || py of particle
+
| V(I,2):
|-
+
| y vertex information
|P(I,3): || pz of particle
+
|-
|-
+
| V(I,3):
|P(I,4): || Energy of particle
+
| z vertex information
|-
−
|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
+
*6th line: "============================================"
* 8th line: "============================================"
+
*7th line: event information for first event
* 9th to X-1 line: trackwise info of 1st event
+
*8th line: "============================================"
* Xth line "=============== Event finished ==============="
+
*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.'''

'''the information from line 7 to X repeats for each event.'''

=== How to analyze events ===

=== 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 (still under construction)=====
+
*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 (still under construction) =====
+

to normalize your counts to cross section you need two informations

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
+
*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
+

==> count * total integrated cross section /total number of trials

==> count * total integrated cross section /total number of trials

to calculate the corresponding luminosity

to calculate the corresponding luminosity
+

==> total number of trials/ total integrated cross section

==> total number of trials/ total integrated cross section

== Documentation on Radiative Corrections: ==

== 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
+
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

[[Category:Event Generators]]

[[Category:Event Generators]]
2,102

edits