Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:21:08

0001  
0002 C*********************************************************************
0003  
0004 C...PYALEM
0005 C...Calculates the running alpha_electromagnetic.
0006  
0007       FUNCTION PYALEM(Q2)
0008  
0009 C...Double precision and integer declarations.
0010       IMPLICIT DOUBLE PRECISION(A-H, O-Z)
0011       IMPLICIT INTEGER(I-N)
0012       INTEGER PYK,PYCHGE,PYCOMP
0013 C...Commonblocks.
0014       COMMON/PYDAT1/MSTU(200),PARU(200),MSTJ(200),PARJ(200)
0015       SAVE /PYDAT1/
0016  
0017 C...Calculate real part of photon vacuum polarization.
0018 C...For leptons simplify by using asymptotic (Q^2 >> m^2) expressions.
0019 C...For hadrons use parametrization of H. Burkhardt et al.
0020 C...See R. Kleiss et al, CERN 89-08, vol. 3, pp. 129-131.
0021       AEMPI=PARU(101)/(3D0*PARU(1))
0022       IF(MSTU(101).LE.0.OR.Q2.LT.2D-6) THEN
0023         RPIGG=0D0
0024       ELSEIF(MSTU(101).EQ.2.AND.Q2.LT.PARU(104)) THEN
0025         RPIGG=0D0
0026       ELSEIF(MSTU(101).EQ.2) THEN
0027         RPIGG=1D0-PARU(101)/PARU(103)
0028       ELSEIF(Q2.LT.0.09D0) THEN
0029         RPIGG=AEMPI*(13.4916D0+LOG(Q2))+0.00835D0*LOG(1D0+Q2)
0030       ELSEIF(Q2.LT.9D0) THEN
0031         RPIGG=AEMPI*(16.3200D0+2D0*LOG(Q2))+
0032      &  0.00238D0*LOG(1D0+3.927D0*Q2)
0033       ELSEIF(Q2.LT.1D4) THEN
0034         RPIGG=AEMPI*(13.4955D0+3D0*LOG(Q2))+0.00165D0+
0035      &  0.00299D0*LOG(1D0+Q2)
0036       ELSE
0037         RPIGG=AEMPI*(13.4955D0+3D0*LOG(Q2))+0.00221D0+
0038      &  0.00293D0*LOG(1D0+Q2)
0039       ENDIF
0040  
0041 C...Calculate running alpha_em.
0042       PYALEM=PARU(101)/(1D0-RPIGG)
0043       PARU(108)=PYALEM
0044  
0045       RETURN
0046       END