]>
Commit | Line | Data |
---|---|---|
da0e9ce3 | 1 | FUNCTION PHOCOR(MPASQR,MCHREN,ME) |
2 | C.---------------------------------------------------------------------- | |
3 | C. | |
4 | C. PHOTOS: PHOton radiation in decays CORrection weight from | |
5 | C. matrix elements | |
6 | C. | |
7 | C. Purpose: Calculate photon angle. The reshaping functions will | |
8 | C. have to depend on the spin S of the charged particle. | |
9 | C. We define: ME = 2 * S + 1 ! | |
10 | C. | |
11 | C. Input Parameters: MPASQR: Parent mass squared, | |
12 | C. MCHREN: Renormalised mass of charged system, | |
13 | C. ME: 2 * spin + 1 determines matrix element | |
14 | C. | |
15 | C. Output Parameter: Function value. | |
16 | C. | |
17 | C. Author(s): Z. Was, B. van Eijk Created at: 26/11/89 | |
18 | C. Last Update: 21/03/93 | |
19 | C. | |
20 | C.---------------------------------------------------------------------- | |
21 | IMPLICIT NONE | |
22 | DOUBLE PRECISION MPASQR,MCHREN,BETA,XX,YY,DATA | |
23 | INTEGER ME | |
24 | REAL*8 PHOCOR,PHOFAC,WT1,WT2,WT3 | |
25 | DOUBLE PRECISION MCHSQR,MNESQR | |
26 | REAL*8 PNEUTR | |
27 | COMMON/PHOMOM/MCHSQR,MNESQR,PNEUTR(5) | |
28 | DOUBLE PRECISION COSTHG,SINTHG | |
29 | REAL*8 XPHMAX,XPHOTO | |
30 | COMMON/PHOPHS/XPHMAX,XPHOTO,COSTHG,SINTHG | |
31 | INTEGER IREP | |
32 | REAL*8 PROBH,CORWT,XF | |
33 | COMMON/PHOPRO/PROBH,CORWT,XF,IREP | |
34 | C-- | |
35 | C-- Shaping (modified by ZW)... | |
36 | XX=4.D0*MCHSQR/MPASQR*(1.D0-XPHOTO)/(1.D0-XPHOTO+(MCHSQR-MNESQR)/ | |
37 | &MPASQR)**2 | |
38 | IF (ME.EQ.1) THEN | |
39 | YY=1.D0 | |
40 | WT3=(1.D0-XPHOTO/XPHMAX)/((1.D0+(1.D0-XPHOTO/XPHMAX)**2)/2.D0) | |
41 | ELSEIF (ME.EQ.2) THEN | |
42 | YY=0.5D0*(1.D0-XPHOTO/XPHMAX+1.D0/(1.D0-XPHOTO/XPHMAX)) | |
43 | WT3=1.D0 | |
44 | ELSEIF ((ME.EQ.3).OR.(ME.EQ.4).OR.(ME.EQ.5)) THEN | |
45 | YY=1.D0 | |
46 | WT3=(1.D0+(1.D0-XPHOTO/XPHMAX)**2-(XPHOTO/XPHMAX)**3)/ | |
47 | & (1.D0+(1.D0-XPHOTO/XPHMAX)** 2) | |
48 | ELSE | |
49 | DATA=(ME-1.D0)/2.D0 | |
50 | CALL PHOERR(6,'PHOCOR',DATA) | |
51 | YY=1.D0 | |
52 | WT3=1.D0 | |
53 | ENDIF | |
54 | BETA=SQRT(1.D0-XX) | |
55 | WT1=(1.D0-COSTHG*SQRT(1.D0-MCHREN))/(1.D0-COSTHG*BETA) | |
56 | WT2=(1.D0-XX/YY/(1.D0-BETA**2*COSTHG**2))*(1.D0+COSTHG*BETA)/2.D0 | |
57 | WT2=WT2*PHOFAC(1) | |
58 | PHOCOR=WT1*WT2*WT3 | |
59 | CORWT=PHOCOR | |
60 | IF (PHOCOR.GT.1.D0) THEN | |
61 | DATA=PHOCOR | |
62 | CALL PHOERR(3,'PHOCOR',DATA) | |
63 | ENDIF | |
64 | RETURN | |
65 | END |