forked from alisw/jewel
-
Notifications
You must be signed in to change notification settings - Fork 0
/
medium-vac.f
214 lines (156 loc) · 6.47 KB
/
medium-vac.f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
C+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
C++ Copyright (C) 2017 Korinna C. Zapp [[email protected]] ++
C++ ++
C++ This file is part of JEWEL 2.2.0 ++
C++ ++
C++ The JEWEL homepage is jewel.hepforge.org ++
C++ ++
C++ The medium model was partly implemented by Jochen Klein. ++
C++ Raghav Kunnawalkam Elayavalli helped with the implementation ++
C++ of the V+jet processes. ++
C++ ++
C++ Please follow the MCnet GUIDELINES and cite Eur.Phys.J. C74 ++
C++ (2014) no.2, 2762 [arXiv:1311.0048] for the code and ++
C++ JHEP 1303 (2013) 080 [arXiv:1212.1599] and ++
C++ optionally EPJC 60 (2009) 617 [arXiv:0804.3568] for the ++
C++ physics. The reference for V+jet processes is EPJC 76 (2016) ++
C++ no.12 695 [arXiv:1608.03099] and for recoil effects it is ++
C++ arXiv:1707.01539.
C++ ++
C++ JEWEL relies heavily on PYTHIA 6 for the event generation. The ++
C++ modified version of PYTHIA 6.4.25 that is distributed with ++
C++ JEWEL is, however, not an official PYTHIA release and must not ++
C++ be used for anything else. Please refer to results as ++
C++ "JEWEL+PYTHIA". ++
C++ ++
C++ JEWEL also uses code provided by S. Zhang and J. M. Jing ++
C++ (Computation of Special Functions, John Wiley & Sons, New York, ++
C++ 1996 and http://jin.ece.illinois.edu) for computing the ++
C++ exponential integral Ei(x). ++
C++ ++
C++ ++
C++ JEWEL is free software; you can redistribute it and/or ++
C++ modify it under the terms of the GNU General Public License ++
C++ as published by the Free Software Foundation; either version 2 ++
C++ of the License, or (at your option) any later version. ++
C++ ++
C++ JEWEL is distributed in the hope that it will be useful, ++
C++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++
C++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++
C++ GNU General Public License for more details. ++
C++ ++
C++ You should have received a copy of the GNU General Public ++
C++ License along with this program; if not, write to the Free ++
C++ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, ++
C++ MA 02110-1301 USA ++
C++ ++
C++ Linking JEWEL statically or dynamically with other modules is ++
C++ making a combined work based on JEWEL. Thus, the terms and ++
C++ conditions of the GNU General Public License cover the whole ++
C++ combination. ++
C++ ++
C++ In addition, as a special exception, I give you permission to ++
C++ combine JEWEL with the code for the computation of special ++
C++ functions provided by S. Zhang and J. M. Jing. You may copy and ++
C++ distribute such a system following the terms of the GNU GPL for ++
C++ JEWEL and the licenses of the other code concerned, provided ++
C++ that you include the source code of that other code when and as ++
C++ the GNU GPL requires distribution of source code. ++
C+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
SUBROUTINE MEDINIT
IMPLICIT NONE
COMMON/MEDPARAM/BMIN,BMAX,CENTRMIN,CENTRMAX,BREAL,RAU
DOUBLE PRECISION BMIN,BMAX,CENTRMIN,CENTRMAX,BREAL,RAU
COMMON/MEDIUM/MEDIUM
LOGICAL MEDIUM
DATA MEDIUM/.FALSE./
RAU=5.d0
END
SUBROUTINE MEDNEXTEVT
IMPLICIT NONE
END
double precision function getcentrality()
implicit none
getcentrality=-1.d0
end
SUBROUTINE PICKVTX(X,Y)
IMPLICIT NONE
DOUBLE PRECISION X,Y
X=0.d0
Y=0.d0
END
SUBROUTINE SETB(BVAL)
IMPLICIT NONE
DOUBLE PRECISION BVAL
END
SUBROUTINE GETSCATTERER(X,Y,Z,T,TYPE,PX,PY,PZ,E,MS,MD,TEMP)
IMPLICIT NONE
DOUBLE PRECISION X,Y,Z,T,MS,PX,PY,PZ,E,MD,TEMP
INTEGER TYPE
WRITE(*,*)'GETSCATTERER called although in vacuum'
END
SUBROUTINE AVSCATCEN(X,Y,Z,T,PX,PY,PZ,E,MS)
IMPLICIT NONE
DOUBLE PRECISION X,Y,Z,T,MS,PX,PY,PZ,E
WRITE(*,*)'AVSCATCEN called although in vacuum'
END
SUBROUTINE MAXSCATCEN(PX,PY,PZ,E,MS)
IMPLICIT NONE
DOUBLE PRECISION MS,PX,PY,PZ,E
ms=0.5d0
e=0.5d0
px=0.d0
py=0.d0
pz=0.d0
END
DOUBLE PRECISION FUNCTION GETNEFF(X,Y,Z,T)
IMPLICIT NONE
DOUBLE PRECISION X,Y,Z,T
GETNEFF=0.d0
END
DOUBLE PRECISION FUNCTION GETTEMP(X,Y,Z,T)
IMPLICIT NONE
DOUBLE PRECISION X,Y,Z,T
GETTEMP=0.d0
END
DOUBLE PRECISION FUNCTION GETTEMPMAX()
IMPLICIT NONE
GETTEMPMAX=0.d0
END
DOUBLE PRECISION FUNCTION GETMDMAX()
IMPLICIT NONE
GETMDMAX=0.d0
END
DOUBLE PRECISION FUNCTION GETMDMIN()
IMPLICIT NONE
GETMDMIN=0.d0
END
DOUBLE PRECISION FUNCTION GETMSMAX()
IMPLICIT NONE
GETMSMAX=0.d0
END
DOUBLE PRECISION FUNCTION GETNEFFMAX()
IMPLICIT NONE
GETNEFFMAX=0.d0
END
DOUBLE PRECISION FUNCTION GETNATMDMIN()
IMPLICIT NONE
GETNATMDMIN=0.d0
END
DOUBLE PRECISION FUNCTION GETLTIMEMAX()
IMPLICIT NONE
GETLTIMEMAX=0.
END
DOUBLE PRECISION FUNCTION GETMD(X,Y,Z,T)
IMPLICIT NONE
DOUBLE PRECISION X,Y,Z,T,GETTEMP
GETMD=0.D0
END
DOUBLE PRECISION FUNCTION GETMS(X,Y,Z,T)
IMPLICIT NONE
DOUBLE PRECISION X,Y,Z,T,GETMD
GETMS=0.D0
END
DOUBLE PRECISION FUNCTION MEDDERIV(XVAL,W)
MEDDERIV=0.D0
END