Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
pyalem.f
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file pyalem.f
1 
2 C*********************************************************************
3 
4 C...PYALEM
5 C...Calculates the running alpha_electromagnetic.
6 
7  FUNCTION pyalem(Q2)
8 
9 C...Double precision and integer declarations.
10  IMPLICIT DOUBLE PRECISION(a-h, o-z)
11  IMPLICIT INTEGER(i-n)
12  INTEGER pyk,pychge,pycomp
13 C...Commonblocks.
14  common/pydat1/mstu(200),paru(200),mstj(200),parj(200)
15  SAVE /pydat1/
16 
17 C...Calculate real part of photon vacuum polarization.
18 C...For leptons simplify by using asymptotic (Q^2 >> m^2) expressions.
19 C...For hadrons use parametrization of H. Burkhardt et al.
20 C...See R. Kleiss et al, CERN 89-08, vol. 3, pp. 129-131.
21  aempi=paru(101)/(3d0*paru(1))
22  IF(mstu(101).LE.0.OR.q2.LT.2d-6) THEN
23  rpigg=0d0
24  ELSEIF(mstu(101).EQ.2.AND.q2.LT.paru(104)) THEN
25  rpigg=0d0
26  ELSEIF(mstu(101).EQ.2) THEN
27  rpigg=1d0-paru(101)/paru(103)
28  ELSEIF(q2.LT.0.09d0) THEN
29  rpigg=aempi*(13.4916d0+log(q2))+0.00835d0*log(1d0+q2)
30  ELSEIF(q2.LT.9d0) THEN
31  rpigg=aempi*(16.3200d0+2d0*log(q2))+
32  & 0.00238d0*log(1d0+3.927d0*q2)
33  ELSEIF(q2.LT.1d4) THEN
34  rpigg=aempi*(13.4955d0+3d0*log(q2))+0.00165d0+
35  & 0.00299d0*log(1d0+q2)
36  ELSE
37  rpigg=aempi*(13.4955d0+3d0*log(q2))+0.00221d0+
38  & 0.00293d0*log(1d0+q2)
39  ENDIF
40 
41 C...Calculate running alpha_em.
42  pyalem=paru(101)/(1d0-rpigg)
43  paru(108)=pyalem
44 
45  RETURN
46  END