Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
pynmes.f
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file pynmes.f
1 
2 C*********************************************************************
3 
4 C...PYNMES
5 C...Generates number of popcorn mesons and stores some relevant
6 C...parameters.
7 
8  SUBROUTINE pynmes(KFDIQ)
9 
10 C...Double precision and integer declarations.
11  IMPLICIT DOUBLE PRECISION(a-h, o-z)
12  IMPLICIT INTEGER(i-n)
13  INTEGER pyk,pychge,pycomp
14 C...Commonblocks.
15  common/pydat1/mstu(200),paru(200),mstj(200),parj(200)
16  common/pydat2/kchg(500,4),pmas(500,4),parf(2000),vckm(4,4)
17  SAVE /pydat1/,/pydat2/
18 
19  mstu(121)=0
20  IF(mstj(12).LT.2) RETURN
21 
22 C..Old version: Get 1 or 0 popcorn mesons
23  IF(mstj(12).LT.5)THEN
24  popwt=parf(131)
25  IF(kfdiq.NE.0) THEN
26  kfdiqa=iabs(kfdiq)
27  kfa=mod(kfdiqa/1000,10)
28  kfb=mod(kfdiqa/100,10)
29  kfs=mod(kfdiqa,10)
30  popwt=parf(132)
31  IF(kfa.EQ.3) popwt=parf(133)
32  IF(kfb.EQ.3) popwt=parf(134)
33  IF(kfs.EQ.1) popwt=popwt*sqrt(parj(4))
34  ENDIF
35  mstu(121)=int(popwt/(1d0+popwt)+pyr(0))
36  RETURN
37  ENDIF
38 
39 C..New version: Store popcorn- or rank 0 diquark parameters
40  mstu(122)=170
41  parf(193)=parj(8)
42  parf(194)=parf(139)
43  IF(kfdiq.NE.0) THEN
44  mstu(122)=180
45  parf(193)=parj(10)
46  parf(194)=parf(140)
47  ENDIF
48  IF(parf(194).LT.1d-5.OR.parf(194).GT.1d0-1d-5) THEN
49  IF(parf(194).GT.1d0-1d-5) CALL pyerrm(9,
50  & '(PYNMES:) Neglecting too large popcorn possibility')
51  RETURN
52  ENDIF
53 
54 C..New version: Get number of popcorn mesons
55  100 rtst=pyr(0)
56  mstu(121)=-1
57  110 mstu(121)=mstu(121)+1
58  rtst=rtst/parf(194)
59  IF(rtst.LT.1d0) goto 110
60  IF(kfdiq.EQ.0.AND.pyr(0)*(2d0+parf(135)*parf(161)).GT.
61  & (2d0+parf(135)*parf(161)*parf(138)**mstu(121))) goto 100
62  RETURN
63  END