Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:13:36

0001 c********************************************************************

0002 c...dotup()-------dot product of two momentum.                       c

0003 c...polsppup()----spinnor product involving bc* polarization vector. c

0004 c...inpup()-------inner product of two massless partical.            c

0005 c...sppup()-------spinor product of <p1+|\slash(p3)|p2+>.            c

0006 cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc

0007 c...       bc in color-singlet and color-octet states.               c

0008 cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc

0009 
0010 c...dotproduct of two momenta.

0011       double precision function dotup(ip,jp)
0012         implicit double precision (a-h,o-z)
0013         implicit integer (i-n)
0014 
0015         double complex colmat,bundamp
0016         common/upcom/ecm,pmbc,pmb,pmc,fbcc,pmomup(5,8),
0017      &  colmat(10,64),bundamp(4),pmomzero(5,8)
0018       
0019       dotup=pmomup(4,ip)*pmomup(4,jp)-pmomup(1,ip)*pmomup(1,jp)-
0020      &  pmomup(2,ip)*pmomup(2,jp)-pmomup(3,ip)*pmomup(3,jp)
0021         
0022       return
0023       end
0024 
0025 c******************************************************************

0026 
0027 c...inner product involving bc polarization vector. ip stands one

0028 c...of the three polarization vectors.

0029       double complex function polsppup(ip)
0030       implicit double precision (a-h,o-z)
0031         implicit integer (i-n)
0032         double complex colmat,bundamp,piv,pjv,ephase,pkv
0033         common/upcom/ecm,pmbc,pmb,pmc,fbcc,pmomup(5,8),
0034      &  colmat(10,64),bundamp(4),pmomzero(5,8)
0035       common/pol/polar(4,3)    
0036      
0037         pia=polar(4,ip)+polar(3,ip)
0038         pip=polar(4,ip)-polar(3,ip)
0039         piv=dcmplx(polar(1,ip),polar(2,ip))
0040 
0041         pja=pmomup(4,8)+pmomup(3,8)
0042         pjp=pmomup(4,8)-pmomup(3,8)
0043         pjv=dcmplx(pmomup(1,8),pmomup(2,8))
0044 
0045         pka=pmomzero(4,3)+pmomzero(3,3)
0046         pkp=pmomzero(4,3)-pmomzero(3,3)
0047         pkv=dcmplx(pmomzero(1,3),pmomzero(2,3))
0048 
0049       if (pja .gt. 1.0d-16 .and. pjp .gt. 1.0d-16) then
0050            ephase=dconjg(pjv)/dsqrt(pja*pjp)
0051         else
0052            ephase=dcmplx(1.0d0)
0053         end if
0054 
0055         polsppup=pka*pip*dconjg(pjv)-dconjg(pkv)*pja*pip-pka*piv*pjp
0056      &  *ephase**2+piv*dconjg(pkv)*dconjg(pjv)-pkv*dconjg(piv)*
0057      &    dconjg(pjv)+pja*dconjg(piv)*pkp+pia*pkv*pjp*ephase**2-
0058      &    pia*pkp*dconjg(pjv)
0059 
0060       return
0061         end
0062 
0063 c*****************************************************************

0064 
0065 c...inner scalar product of two momenta.

0066       double complex function inpup(ip,jp)
0067       implicit double precision (a-h,o-z)
0068         implicit integer (i-n)
0069 
0070         double complex colmat,piv,pjv,bundamp
0071         common/upcom/ecm,pmbc,pmb,pmc,fbcc,pmomup(5,8),
0072      &  colmat(10,64),bundamp(4),pmomzero(5,8)
0073             
0074 c-ap initialize to avoid compiler warming:

0075         inpup = 0.
0076 c-ap end init

0077 
0078         pia=pmomzero(4,ip)+pmomzero(3,ip)
0079         pip=pmomzero(4,ip)-pmomzero(3,ip)
0080         piv=dcmplx(pmomzero(1,ip),pmomzero(2,ip))
0081 
0082         pja=pmomzero(4,jp)+pmomzero(3,jp)
0083         pjp=pmomzero(4,jp)-pmomzero(3,jp)
0084         pjv=dcmplx(pmomzero(1,jp),pmomzero(2,jp))
0085 
0086       if (pia .gt. 1.0d-16 .and. pja .gt. 1.0d-16) then
0087            inpup=piv*dsqrt(pja/pia)-pjv*dsqrt(pia/pja)
0088         end if
0089         if (pia .lt. 1.0d-16 .and. pja .gt. 1.0d-16) then
0090            inpup=dsqrt(pip*pja)
0091       end if
0092       if (pia .gt. 1.0d-16 .and. pja .lt. 1.0d-16) then
0093            inpup=-dsqrt(pia*pjp)
0094       end if
0095         if (pia .lt. 1.0d-16 .and. pja .lt. 1.0d-16) then
0096            inpup=0.0d0
0097       end if
0098 
0099       return
0100       end
0101 
0102 c******************************************************************

0103 
0104 c...spinor product <p1+|\slash(p3)|p2+>, all momenta are light-like.

0105       double complex function sppup(ip,kp,jp)
0106         implicit double precision (a-h,o-z)
0107         implicit integer(i-n)
0108         double complex colmat,inpup,bundamp
0109         common/upcom/ecm,pmbc,pmb,pmc,fbcc,pmomup(5,8),
0110      &  colmat(10,64),bundamp(4),pmomzero(5,8)
0111               
0112       sppup=dconjg(inpup(kp,ip))*inpup(kp,jp)
0113       
0114       return
0115       end
0116