]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HIJING/hipyset1_35/plu_hijing.F
Initialize API
[u/mrichter/AliRoot.git] / HIJING / hipyset1_35 / plu_hijing.F
1 * $Id$
2     
3 C*********************************************************************  
4     
5       FUNCTION PLU_HIJING(I,J) 
6     
7 C...Purpose: to provide various real-valued event related data. 
8 #include "lujets_hijing.inc"
9 #include "ludat1_hijing.inc"
10 #include "ludat2_hijing.inc"
11       DIMENSION PSUM(4) 
12     
13 C...Set default value. For I = 0 sum of momenta or charges, 
14 C...or invariant mass of system.    
15       PLU_HIJING=0.    
16       IF(I.LT.0.OR.I.GT.MSTU(4).OR.J.LE.0) THEN 
17       ELSEIF(I.EQ.0.AND.J.LE.4) THEN    
18         DO 100 I1=1,N   
19   100   IF(K(I1,1).GT.0.AND.K(I1,1).LE.10) PLU_HIJING=PLU_HIJING+P(I1,J)  
20       ELSEIF(I.EQ.0.AND.J.EQ.5) THEN    
21         DO 110 J1=1,4   
22         PSUM(J1)=0. 
23         DO 110 I1=1,N   
24   110   IF(K(I1,1).GT.0.AND.K(I1,1).LE.10) PSUM(J1)=PSUM(J1)+P(I1,J1)   
25         PLU_HIJING=SQRT(MAX(0.,PSUM(4)**2-PSUM(1)**2-PSUM(2)**2-PSUM(3)
26      $       **2))   
27       ELSEIF(I.EQ.0.AND.J.EQ.6) THEN    
28         DO 120 I1=1,N   
29  120       IF(K(I1,1).GT.0.AND.K(I1,1).LE.10) PLU_HIJING=PLU_HIJING
30      $          +LUCHGE_HIJING(K(I1,2))/3.   
31       ELSEIF(I.EQ.0) THEN   
32     
33 C...Direct readout of P matrix. 
34       ELSEIF(J.LE.5) THEN   
35         PLU_HIJING=P(I,J)  
36     
37 C...Charge, total momentum, transverse momentum, transverse mass.   
38       ELSEIF(J.LE.12) THEN  
39         IF(J.EQ.6) PLU_HIJING=LUCHGE_HIJING(K(I,2))/3.    
40         IF(J.EQ.7.OR.J.EQ.8) PLU_HIJING=P(I,1)**2+P(I,2)**2+P(I,3)**2  
41         IF(J.EQ.9.OR.J.EQ.10) PLU_HIJING=P(I,1)**2+P(I,2)**2   
42         IF(J.EQ.11.OR.J.EQ.12) PLU_HIJING=P(I,5)**2+P(I,1)**2+P(I,2)**2    
43         IF(J.EQ.8.OR.J.EQ.10.OR.J.EQ.12) PLU_HIJING=SQRT(PLU_HIJING)  
44     
45 C...Theta and phi angle in radians or degrees.  
46       ELSEIF(J.LE.16) THEN  
47          IF(J.LE.14) PLU_HIJING=ULANGL_HIJING(P(I,3),SQRT(P(I,1)**2+P(I
48      $        ,2)**2))    
49         IF(J.GE.15) PLU_HIJING=ULANGL_HIJING(P(I,1),P(I,2))   
50         IF(J.EQ.14.OR.J.EQ.16) PLU_HIJING=PLU_HIJING*180./PARU(1) 
51     
52 C...True rapidity, rapidity with pion mass, pseudorapidity. 
53       ELSEIF(J.LE.19) THEN  
54         PMR=0.  
55         IF(J.EQ.17) PMR=P(I,5)  
56         IF(J.EQ.18) PMR=ULMASS_HIJING(211) 
57         PR=MAX(1E-20,PMR**2+P(I,1)**2+P(I,2)**2)    
58         PLU_HIJING=SIGN(LOG(MIN((SQRT(PR+P(I,3)**2)+ABS(P(I,3)))/SQRT(PR
59      $       ),1E20)),P(I,3))  
60     
61 C...Energy and momentum fractions (only to be used in CM frame).    
62       ELSEIF(J.LE.25) THEN  
63          IF(J.EQ.20) PLU_HIJING=2.*SQRT(P(I,1)**2+P(I,2)**2+P(I,3)**2)
64      $        /PARU(21) 
65         IF(J.EQ.21) PLU_HIJING=2.*P(I,3)/PARU(21)  
66         IF(J.EQ.22) PLU_HIJING=2.*SQRT(P(I,1)**2+P(I,2)**2)/PARU(21)   
67         IF(J.EQ.23) PLU_HIJING=2.*P(I,4)/PARU(21)  
68         IF(J.EQ.24) PLU_HIJING=(P(I,4)+P(I,3))/PARU(21)    
69         IF(J.EQ.25) PLU_HIJING=(P(I,4)-P(I,3))/PARU(21)    
70       ENDIF 
71     
72       RETURN    
73       END