00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 SUBROUTINE INIETC(ITAUXPAR,xpar)
00022 INCLUDE "BXformat.h"
00023 REAL*8 xpar(*)
00024 INTEGER INUT,IOUT
00025 COMMON /INOUT/
00026 $ INUT,
00027 $ IOUT
00028 COMMON / IDFC / IDFF
00029 COMMON / TAURAD / XK0DEC,ITDKRC
00030 DOUBLE PRECISION XK0DEC
00031 COMMON / JAKI / JAK1,JAK2,JAKP,JAKM,KTOM
00032
00033 INTEGER KeyA1
00034 COMMON /TESTA1/
00035 $ KeyA1
00036
00037
00038
00039
00040
00041
00042
00043 SAVE
00044 idff = xpar(ITAUXPAR+3)
00045
00046 xk0dec = xpar(ITAUXPAR+5)
00047
00048 itdkRC = xpar(ITAUXPAR+4)
00049
00050 Jak1 = xpar(ITAUXPAR+1)
00051 Jak2 = xpar(ITAUXPAR+2)
00052
00053 IOUT = xpar(4)
00054
00055 KeyA1 = xpar(ITAUXPAR+6)
00056
00057 WRITE(iout,bxope)
00058 WRITE(iout,bxtxt) ' Parameters passed from KK to Tauola: '
00059 WRITE(iout,bxl1i) Jak1, 'dec. type 1-st tau ','Jak1 ','t01'
00060 WRITE(iout,bxl1i) Jak2, 'dec. type 2-nd tau ','Jak2 ','t02'
00061 WRITE(iout,bxl1i) KeyA1, 'current type a1 dec.','KeyA1 ','t03'
00062 WRITE(iout,bxl1i) idff, 'PDG id 1-st tau ','idff ','t04'
00063 WRITE(iout,bxl1i) itdkRC, 'R.c. switch lept dec','itdkRC','t05'
00064 WRITE(iout,bxl1g) xk0dec, 'IR-cut for lept r.c.','xk0dec','t06'
00065 WRITE(iout,bxclo)
00066
00067 end
00068
00069 SUBROUTINE INITDK(ITAUXPAR,xpar)
00070
00071
00072
00073
00074
00075 INCLUDE "BXformat.h"
00076 INTEGER INUT,IOUT
00077 COMMON /INOUT/
00078 $ INUT,
00079 $ IOUT
00080 REAL*8 xpar(*)
00081 COMMON / DECPAR / GFERMI,GV,GA,CCABIB,SCABIB,GAMEL
00082 REAL*4 GFERMI,GV,GA,CCABIB,SCABIB,GAMEL
00083 COMMON / PARMAS / AMTAU,AMNUTA,AMEL,AMNUE,AMMU,AMNUMU
00084 * ,AMPIZ,AMPI,AMRO,GAMRO,AMA1,GAMA1
00085 * ,AMK,AMKZ,AMKST,GAMKST
00086
00087 REAL*4 AMTAU,AMNUTA,AMEL,AMNUE,AMMU,AMNUMU
00088 * ,AMPIZ,AMPI,AMRO,GAMRO,AMA1,GAMA1
00089 * ,AMK,AMKZ,AMKST,GAMKST
00090 COMMON / TAUBRA / GAMPRT(30),JLIST(30),NCHAN
00091 COMMON / TAUKLE / BRA1,BRK0,BRK0B,BRKS
00092 REAL*4 BRA1,BRK0,BRK0B,BRKS
00093 #if defined (ALEPH)
00094 PARAMETER (NMODE=15,NM1=0,NM2=1,NM3=8,NM4=2,NM5=1,NM6=3)
00095 COMMON / TAUDCD /IDFFIN(9,NMODE),MULPIK(NMODE)
00096 & ,NAMES
00097 CHARACTER NAMES(NMODE)*31
00098 #else
00099 PARAMETER (NMODE=15,NM1=0,NM2=1,NM3=8,NM4=2,NM5=1,NM6=3)
00100 COMMON / DECOMP /IDFFIN(9,NMODE),MULPIK(NMODE)
00101 & ,NAMES
00102 CHARACTER NAMES(NMODE)*31
00103 #endif
00104 CHARACTER OLDNAMES(7)*31
00105 CHARACTER*80 bxINIT
00106 PARAMETER (
00107 $ bxINIT ='(1x,1h*,g17.8, 16x, a31,a4,a4, 1x,1h*)'
00108 $ )
00109 REAL*4 PI,POL1(4)
00110
00111
00112
00113
00114
00115
00116 #if defined (ALEPH)
00117
00118
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130
00131
00132
00133
00134
00135
00136
00137
00138
00139
00140
00141
00142
00143
00144
00145
00146
00147
00148
00149
00150
00151
00152
00153
00154
00155
00156
00157
00158
00159
00160
00161
00162
00163 #else
00164
00165
00166
00167
00168
00169
00170
00171
00172
00173
00174
00175
00176 #endif
00177
00178 DIMENSION NOPIK(6,NMODE),NPIK(NMODE)
00179
00180 DATA NPIK / 4, 4,
00181 1 5, 5,
00182 2 6, 6,
00183 3 3, 3,
00184 4 3, 3,
00185 5 3, 3,
00186 6 3, 3,
00187 7 2 /
00188 #if defined (ALEPH)
00189 DATA NOPIK / -1,-1, 2, 1, 0, 0, 2, 2, 2,-1, 0, 0,
00190 1 -1,-1, 1, 2, 2, 0, -1,-1,-1, 1, 1, 0,
00191 2 -1,-1,-1, 1, 1, 2, -1,-1, 1, 2, 2, 2,
00192 3 -3,-1, 3, 0, 0, 0, 4,-1,-4, 0, 0, 0,
00193 4 -3, 2, 4, 0, 0, 0, 2, 2,-3, 0, 0, 0,
00194 5 -3,-1, 1, 0, 0, 0, -1,-4, 2, 0, 0, 0,
00195 6 9,-1, 2, 0, 0, 0, -1, 2, 8, 0, 0, 0,
00196 #else
00197 DATA NOPIK / -1,-1, 1, 2, 0, 0, 2, 2, 2,-1, 0, 0,
00198 1 -1,-1, 1, 2, 2, 0, -1,-1,-1, 1, 1, 0,
00199 2 -1,-1,-1, 1, 1, 2, -1,-1, 1, 2, 2, 2,
00200 3 -3,-1, 3, 0, 0, 0, -4,-1, 4, 0, 0, 0,
00201 4 -3, 2,-4, 0, 0, 0, 2, 2,-3, 0, 0, 0,
00202 5 -3,-1, 1, 0, 0, 0, -1, 4, 2, 0, 0, 0,
00203 6 9,-1, 2, 0, 0, 0, -1, 2, 8, 0, 0, 0,
00204 #endif
00205 #if defined (CLEO)
00206
00207 7 -3,-4, 0, 0, 0, 0 /
00208 #else
00209 7 -3, 4, 0, 0, 0, 0 /
00210 #endif
00211
00212 NCHAN = NMODE + 7
00213 DO 1 I = 1,30
00214 IF (I.LE.NCHAN) THEN
00215 JLIST(I) = I
00216 #if defined (CePeCe)
00217 IF(I.EQ. 1) GAMPRT(I) = 1.0000
00218 IF(I.EQ. 2) GAMPRT(I) = 1.0000
00219 IF(I.EQ. 3) GAMPRT(I) = 1.0000
00220 IF(I.EQ. 4) GAMPRT(I) = 1.0000
00221 IF(I.EQ. 5) GAMPRT(I) = 1.0000
00222 IF(I.EQ. 6) GAMPRT(I) = 1.0000
00223 IF(I.EQ. 7) GAMPRT(I) = 1.0000
00224 IF(I.EQ. 8) GAMPRT(I) = 1.0000
00225 IF(I.EQ. 9) GAMPRT(I) = 1.0000
00226 IF(I.EQ.10) GAMPRT(I) = 1.0000
00227 IF(I.EQ.11) GAMPRT(I) = 1.0000
00228 IF(I.EQ.12) GAMPRT(I) = 1.0000
00229 IF(I.EQ.13) GAMPRT(I) = 1.0000
00230 IF(I.EQ.14) GAMPRT(I) = 1.0000
00231 IF(I.EQ.15) GAMPRT(I) = 1.0000
00232 IF(I.EQ.16) GAMPRT(I) = 1.0000
00233 IF(I.EQ.17) GAMPRT(I) = 1.0000
00234 IF(I.EQ.18) GAMPRT(I) = 1.0000
00235 IF(I.EQ.19) GAMPRT(I) = 1.0000
00236 IF(I.EQ.20) GAMPRT(I) = 1.0000
00237 IF(I.EQ.21) GAMPRT(I) = 1.0000
00238 IF(I.EQ.22) GAMPRT(I) = 1.0000
00239 #elif defined (CLEO)
00240 IF(I.EQ. 1) GAMPRT(I) =0.1800
00241 IF(I.EQ. 2) GAMPRT(I) =0.1751
00242 IF(I.EQ. 3) GAMPRT(I) =0.1110
00243 IF(I.EQ. 4) GAMPRT(I) =0.2515
00244 IF(I.EQ. 5) GAMPRT(I) =0.1790
00245 IF(I.EQ. 6) GAMPRT(I) =0.0071
00246 IF(I.EQ. 7) GAMPRT(I) =0.0134
00247 IF(I.EQ. 8) GAMPRT(I) =0.0450
00248 IF(I.EQ. 9) GAMPRT(I) =0.0100
00249 IF(I.EQ.10) GAMPRT(I) =0.0009
00250 IF(I.EQ.11) GAMPRT(I) =0.0004
00251 IF(I.EQ.12) GAMPRT(I) =0.0003
00252 IF(I.EQ.13) GAMPRT(I) =0.0005
00253 IF(I.EQ.14) GAMPRT(I) =0.0015
00254 IF(I.EQ.15) GAMPRT(I) =0.0015
00255 IF(I.EQ.16) GAMPRT(I) =0.0015
00256 IF(I.EQ.17) GAMPRT(I) =0.0005
00257 IF(I.EQ.18) GAMPRT(I) =0.0050
00258 IF(I.EQ.19) GAMPRT(I) =0.0055
00259 IF(I.EQ.20) GAMPRT(I) =0.0017
00260 IF(I.EQ.21) GAMPRT(I) =0.0013
00261 IF(I.EQ.22) GAMPRT(I) =0.0010
00262 #elif defined (ALEPH)
00263 IF(I.EQ. 1) GAMPRT(I) = 1.0000
00264 IF(I.EQ. 2) GAMPRT(I) = .9732
00265 IF(I.EQ. 3) GAMPRT(I) = .6217
00266 IF(I.EQ. 4) GAMPRT(I) = 1.4221
00267 IF(I.EQ. 5) GAMPRT(I) = 1.0180
00268 IF(I.EQ. 6) GAMPRT(I) = .0405
00269 IF(I.EQ. 7) GAMPRT(I) = .0781
00270 IF(I.EQ. 8) GAMPRT(I) = .2414
00271 IF(I.EQ. 9) GAMPRT(I) = .0601
00272 IF(I.EQ.10) GAMPRT(I) = .0281
00273 IF(I.EQ.11) GAMPRT(I) = .0045
00274 IF(I.EQ.12) GAMPRT(I) = .0010
00275 IF(I.EQ.13) GAMPRT(I) = .0062
00276 IF(I.EQ.14) GAMPRT(I) = .0096
00277 IF(I.EQ.15) GAMPRT(I) = .0169
00278 IF(I.EQ.16) GAMPRT(I) = .0056
00279 IF(I.EQ.17) GAMPRT(I) = .0045
00280 IF(I.EQ.18) GAMPRT(I) = .0219
00281 IF(I.EQ.19) GAMPRT(I) = .0180
00282 IF(I.EQ.20) GAMPRT(I) = .0096
00283 IF(I.EQ.21) GAMPRT(I) = .0088
00284 IF(I.EQ.22) GAMPRT(I) = .0146
00285 #else
00286 #endif
00287 IF(I.EQ. 1) OLDNAMES(I)=' TAU- --> E- '
00288 IF(I.EQ. 2) OLDNAMES(I)=' TAU- --> MU- '
00289 IF(I.EQ. 3) OLDNAMES(I)=' TAU- --> PI- '
00290 IF(I.EQ. 4) OLDNAMES(I)=' TAU- --> PI-, PI0 '
00291 IF(I.EQ. 5) OLDNAMES(I)=' TAU- --> A1- (two subch) '
00292 IF(I.EQ. 6) OLDNAMES(I)=' TAU- --> K- '
00293 IF(I.EQ. 7) OLDNAMES(I)=' TAU- --> K*- (two subch) '
00294 IF(I.EQ. 8) NAMES(I-7)=' TAU- --> 2PI-, PI0, PI+ '
00295 IF(I.EQ. 9) NAMES(I-7)=' TAU- --> 3PI0, PI- '
00296 IF(I.EQ.10) NAMES(I-7)=' TAU- --> 2PI-, PI+, 2PI0 '
00297 IF(I.EQ.11) NAMES(I-7)=' TAU- --> 3PI-, 2PI+, '
00298 IF(I.EQ.12) NAMES(I-7)=' TAU- --> 3PI-, 2PI+, PI0 '
00299 IF(I.EQ.13) NAMES(I-7)=' TAU- --> 2PI-, PI+, 3PI0 '
00300 IF(I.EQ.14) NAMES(I-7)=' TAU- --> K-, PI-, K+ '
00301 IF(I.EQ.15) NAMES(I-7)=' TAU- --> K0, PI-, K0B '
00302 #if defined (ALEPH)
00303 IF(I.EQ.16) NAMES(I-7)=' TAU- --> K- PI0 K0 '
00304 #else
00305 IF(I.EQ.16) NAMES(I-7)=' TAU- --> K-, K0, PI0 '
00306 #endif
00307 IF(I.EQ.17) NAMES(I-7)=' TAU- --> PI0 PI0 K- '
00308 IF(I.EQ.18) NAMES(I-7)=' TAU- --> K- PI- PI+ '
00309 IF(I.EQ.19) NAMES(I-7)=' TAU- --> PI- K0B PI0 '
00310 IF(I.EQ.20) NAMES(I-7)=' TAU- --> ETA PI- PI0 '
00311 IF(I.EQ.21) NAMES(I-7)=' TAU- --> PI- PI0 GAM '
00312 IF(I.EQ.22) NAMES(I-7)=' TAU- --> K- K0 '
00313 ELSE
00314 JLIST(I) = 0
00315 GAMPRT(I) = 0.
00316 ENDIF
00317 1 CONTINUE
00318 DO I=1,NMODE
00319 MULPIK(I)=NPIK(I)
00320 DO J=1,MULPIK(I)
00321 IDFFIN(J,I)=NOPIK(J,I)
00322 ENDDO
00323 ENDDO
00324
00325
00326
00327
00328
00329
00330
00331
00332
00333
00334 BRA1=0.5
00335 BRK0=0.5
00336 BRK0B=0.5
00337 BRKS=0.6667
00338
00339
00340 GFERMI = 1.16637E-5
00341 CCABIB = 0.975
00342 GV = 1.0
00343 GA =-1.0
00344 GFERMI = xpar(32)
00345 IF (XPAR(ITAUXPAR+100+1).GT.-1D0) THEN
00346
00347 CCABIB = XPAR(ITAUXPAR+7)
00348 GV = XPAR(ITAUXPAR+8)
00349 GA = XPAR(ITAUXPAR+9)
00350
00351 BRA1 = XPAR(ITAUXPAR+10)
00352 BRKS = XPAR(ITAUXPAR+11)
00353 BRK0 = XPAR(ITAUXPAR+12)
00354 BRK0B = XPAR(ITAUXPAR+13)
00355 DO K=1,NCHAN
00356 GAMPRT(K)=XPAR(ITAUXPAR+100+K)
00357 ENDDO
00358 ENDIF
00359
00360 SCABIB = SQRT(1.-CCABIB**2)
00361 PI =4.*ATAN(1.)
00362 GAMEL = GFERMI**2*AMTAU**5/(192*PI**3)
00363
00364
00365
00366
00367
00368 SUM=0
00369 DO K=1,NCHAN
00370 SUM=SUM+GAMPRT(K)
00371 ENDDO
00372
00373
00374 WRITE(iout,bxope)
00375 WRITE(iout,bxtxt) ' TAUOLA Initialization SUBROUTINE INITDK: '
00376 WRITE(iout,bxtxt) ' Adopted to read from KK '
00377 WRITE(iout,bxtxt) ' '
00378 WRITE(iout,bxtxt) ' Choice Probability -- Decay Channel'
00379 DO K=1,7
00380 WRITE(iout,bxINIT) GAMPRT(K)/SUM, OLDNAMES(K),'****','***'
00381 ENDDO
00382 DO K=8,7+NMODE
00383 WRITE(iout,bxINIT) GAMPRT(K)/SUM, NAMES(K-7),'****','***'
00384 ENDDO
00385 WRITE(iout,bxtxt) ' In addition:'
00386 WRITE(iout,bxINIT) GV, 'Vector W-tau-nu coupl. ','****','***'
00387 WRITE(iout,bxINIT) GA, 'Axial W-tau-nu coupl. ','****','***'
00388 WRITE(iout,bxINIT) GFERMI,'Fermi Coupling ','****','***'
00389 WRITE(iout,bxINIT) CCABIB,'cabibo angle ','****','***'
00390 WRITE(iout,bxINIT) BRA1, 'a1 br ratio (massless) ','****','***'
00391 WRITE(iout,bxINIT) BRKS, 'K* br ratio (massless) ','****','***'
00392 WRITE(iout,bxclo)
00393
00394 RETURN
00395 END
00396
00397 SUBROUTINE INIPHY(XK00)
00398
00399
00400
00401
00402 COMMON / QEDPRM /ALFINV,ALFPI,XK0
00403 REAL*8 ALFINV,ALFPI,XK0
00404 REAL*8 PI8,XK00
00405
00406 PI8 = 4.D0*DATAN(1.D0)
00407 ALFINV = 137.03604D0
00408 ALFPI = 1D0/(ALFINV*PI8)
00409 XK0=XK00
00410 END
00411
00412 SUBROUTINE INIMAS(ITAUXPAR,xpar)
00413
00414
00415
00416
00417
00418 INCLUDE "BXformat.h"
00419 INTEGER INUT,IOUT
00420 COMMON /INOUT/
00421 $ INUT,
00422 $ IOUT
00423 REAL*8 xpar(*)
00424 COMMON / PARMAS / AMTAU,AMNUTA,AMEL,AMNUE,AMMU,AMNUMU
00425 * ,AMPIZ,AMPI,AMRO,GAMRO,AMA1,GAMA1
00426 * ,AMK,AMKZ,AMKST,GAMKST
00427
00428 REAL*4 AMTAU,AMNUTA,AMEL,AMNUE,AMMU,AMNUMU
00429 * ,AMPIZ,AMPI,AMRO,GAMRO,AMA1,GAMA1
00430 * ,AMK,AMKZ,AMKST,GAMKST
00431 CHARACTER*80 bxINIT
00432 PARAMETER (
00433 $ bxINIT ='(1x,1h*,g17.8, 16x, a31,a4,a4, 1x,1h*)'
00434 $ )
00435
00436
00437 AMTAU = xpar(656)
00438 AMNUTA = 0.010
00439 AMEL = xpar(616)
00440 AMNUE = 0.0
00441 AMMU = xpar(636)
00442 AMNUMU = 0.0
00443
00444
00445 #if defined (CePeCe)
00446 AMPIZ = 0.134964
00447 AMPI = 0.139568
00448 AMRO = 0.773
00449 GAMRO = 0.145
00450
00451 AMA1 = 1.251
00452 GAMA1 = 0.599
00453 AMK = 0.493667
00454 AMKZ = 0.49772
00455 AMKST = 0.8921
00456 GAMKST = 0.0513
00457 #elif defined (CLEO)
00458 AMPIZ = 0.134964
00459 AMPI = 0.139568
00460 AMRO = 0.773
00461 GAMRO = 0.145
00462
00463 AMA1 = 1.251
00464 GAMA1 = 0.599
00465 AMK = 0.493667
00466 AMKZ = 0.49772
00467 AMKST = 0.8921
00468 GAMKST = 0.0513
00469
00470
00471
00472
00473
00474
00475
00476
00477
00478
00479
00480
00481 AMA1 = 1.275
00482 GAMA1 = 0.615
00483
00484
00485
00486
00487
00488 #elif defined (ALEPH)
00489 AMPIZ = 0.134964
00490 AMPI = 0.139568
00491 AMRO = 0.7714
00492 GAMRO = 0.153
00493
00494
00495 AMA1 = 1.251
00496 GAMA1 = 0.599
00497 print *,'INIMAS a1 mass= ',ama1,gama1
00498 AMK = 0.493667
00499 AMKZ = 0.49772
00500 AMKST = 0.8921
00501 GAMKST = 0.0513
00502 #else
00503 #endif
00504 WRITE(iout,bxope)
00505 WRITE(iout,bxtxt) ' TAUOLA Initialization SUBROUTINE INIMAS: '
00506 WRITE(iout,bxtxt) ' Adopted to read from KK '
00507 WRITE(iout,bxINIT) amtau, 'AMTAU tau-mass ','****','***'
00508 WRITE(iout,bxINIT) amel , 'AMEL electron-mass ','****','***'
00509 WRITE(iout,bxINIT) ammu , 'AMMU muon-mass ','****','***'
00510 WRITE(iout,bxclo)
00511
00512 END
00513
00514 SUBROUTINE CHOICE(MNUM,RR,ICHAN,PROB1,PROB2,PROB3,
00515 $ AMRX,GAMRX,AMRA,GAMRA,AMRB,GAMRB)
00516 COMMON / PARMAS / AMTAU,AMNUTA,AMEL,AMNUE,AMMU,AMNUMU
00517 * ,AMPIZ,AMPI,AMRO,GAMRO,AMA1,GAMA1
00518 * ,AMK,AMKZ,AMKST,GAMKST
00519
00520 REAL*4 AMTAU,AMNUTA,AMEL,AMNUE,AMMU,AMNUMU
00521 * ,AMPIZ,AMPI,AMRO,GAMRO,AMA1,GAMA1
00522 * ,AMK,AMKZ,AMKST,GAMKST
00523
00524 AMROP=1.1
00525 GAMROP=0.36
00526 AMOM=.782
00527 GAMOM=0.0084
00528
00529 IF(MNUM.EQ.0) THEN
00530 PROB1=0.5
00531 PROB2=0.5
00532 AMRX =AMA1
00533 GAMRX=GAMA1
00534 AMRA =AMRO
00535 GAMRA=GAMRO
00536 AMRB =AMRO
00537 GAMRB=GAMRO
00538 ELSEIF(MNUM.EQ.1) THEN
00539 PROB1=0.5
00540 PROB2=0.5
00541 AMRX =1.57
00542 GAMRX=0.9
00543 AMRB =AMKST
00544 GAMRB=GAMKST
00545 AMRA =AMRO
00546 GAMRA=GAMRO
00547 ELSEIF(MNUM.EQ.2) THEN
00548 PROB1=0.5
00549 PROB2=0.5
00550 AMRX =1.57
00551 GAMRX=0.9
00552 AMRB =AMKST
00553 GAMRB=GAMKST
00554 AMRA =AMRO
00555 GAMRA=GAMRO
00556 ELSEIF(MNUM.EQ.3) THEN
00557 PROB1=0.5
00558 PROB2=0.5
00559 AMRX =1.27
00560 GAMRX=0.3
00561 AMRA =AMKST
00562 GAMRA=GAMKST
00563 AMRB =AMKST
00564 GAMRB=GAMKST
00565 ELSEIF(MNUM.EQ.4) THEN
00566 PROB1=0.5
00567 PROB2=0.5
00568 AMRX =1.27
00569 GAMRX=0.3
00570 AMRA =AMKST
00571 GAMRA=GAMKST
00572 AMRB =AMKST
00573 GAMRB=GAMKST
00574 ELSEIF(MNUM.EQ.5) THEN
00575 PROB1=0.5
00576 PROB2=0.5
00577 AMRX =1.27
00578 GAMRX=0.3
00579 AMRA =AMKST
00580 GAMRA=GAMKST
00581 AMRB =AMRO
00582 GAMRB=GAMRO
00583 ELSEIF(MNUM.EQ.6) THEN
00584 PROB1=0.4
00585 PROB2=0.4
00586 AMRX =1.27
00587 GAMRX=0.3
00588 AMRA =AMRO
00589 GAMRA=GAMRO
00590 AMRB =AMKST
00591 GAMRB=GAMKST
00592 ELSEIF(MNUM.EQ.7) THEN
00593 PROB1=0.0
00594 PROB2=1.0
00595 AMRX =1.27
00596 GAMRX=0.9
00597 AMRA =AMRO
00598 GAMRA=GAMRO
00599 AMRB =AMRO
00600 GAMRB=GAMRO
00601 ELSEIF(MNUM.EQ.8) THEN
00602 PROB1=0.0
00603 PROB2=1.0
00604 AMRX =AMROP
00605 GAMRX=GAMROP
00606 AMRB =AMOM
00607 GAMRB=GAMOM
00608 AMRA =AMRO
00609 GAMRA=GAMRO
00610 ELSEIF(MNUM.EQ.101) THEN
00611 PROB1=.35
00612 PROB2=.35
00613 AMRX =1.2
00614 GAMRX=.46
00615 AMRB =AMOM
00616 GAMRB=GAMOM
00617 AMRA =AMOM
00618 GAMRA=GAMOM
00619 ELSEIF(MNUM.EQ.102) THEN
00620 PROB1=0.0
00621 PROB2=0.0
00622 AMRX =1.4
00623 GAMRX=.6
00624 AMRB =AMOM
00625 GAMRB=GAMOM
00626 AMRA =AMOM
00627 GAMRA=GAMOM
00628 ELSE
00629 PROB1=0.0
00630 PROB2=0.0
00631 AMRX =AMA1
00632 GAMRX=GAMA1
00633 AMRA =AMRO
00634 GAMRA=GAMRO
00635 AMRB =AMRO
00636 GAMRB=GAMRO
00637 ENDIF
00638
00639 IF (RR.LE.PROB1) THEN
00640 ICHAN=1
00641 ELSEIF(RR.LE.(PROB1+PROB2)) THEN
00642 ICHAN=2
00643 AX =AMRA
00644 GX =GAMRA
00645 AMRA =AMRB
00646 GAMRA=GAMRB
00647 AMRB =AX
00648 GAMRB=GX
00649 PX =PROB1
00650 PROB1=PROB2
00651 PROB2=PX
00652 ELSE
00653 ICHAN=3
00654 ENDIF
00655
00656 PROB3=1.0-PROB1-PROB2
00657 END
00658
00659 FUNCTION DCDMAS(IDENT)
00660 COMMON / PARMAS / AMTAU,AMNUTA,AMEL,AMNUE,AMMU,AMNUMU
00661 * ,AMPIZ,AMPI,AMRO,GAMRO,AMA1,GAMA1
00662 * ,AMK,AMKZ,AMKST,GAMKST
00663
00664 REAL*4 AMTAU,AMNUTA,AMEL,AMNUE,AMMU,AMNUMU
00665 * ,AMPIZ,AMPI,AMRO,GAMRO,AMA1,GAMA1
00666 * ,AMK,AMKZ,AMKST,GAMKST
00667 IF (IDENT.EQ. 1) THEN
00668 APKMAS=AMPI
00669 ELSEIF (IDENT.EQ.-1) THEN
00670 APKMAS=AMPI
00671 ELSEIF (IDENT.EQ. 2) THEN
00672 APKMAS=AMPIZ
00673 ELSEIF (IDENT.EQ.-2) THEN
00674 APKMAS=AMPIZ
00675 ELSEIF (IDENT.EQ. 3) THEN
00676 APKMAS=AMK
00677 ELSEIF (IDENT.EQ.-3) THEN
00678 APKMAS=AMK
00679 ELSEIF (IDENT.EQ. 4) THEN
00680 APKMAS=AMKZ
00681 ELSEIF (IDENT.EQ.-4) THEN
00682 APKMAS=AMKZ
00683 ELSEIF (IDENT.EQ. 8) THEN
00684 APKMAS=0.0001
00685 ELSEIF (IDENT.EQ.-8) THEN
00686 APKMAS=0.0001
00687 ELSEIF (IDENT.EQ. 9) THEN
00688 APKMAS=0.5488
00689 ELSEIF (IDENT.EQ.-9) THEN
00690 APKMAS=0.5488
00691 ELSE
00692 PRINT *, 'STOP IN APKMAS, WRONG IDENT=',IDENT
00693 STOP
00694 ENDIF
00695 DCDMAS=APKMAS
00696 END
00697 FUNCTION LUNPIK(ID,ISGN)
00698 COMMON / TAUKLE / BRA1,BRK0,BRK0B,BRKS
00699 REAL*4 BRA1,BRK0,BRK0B,BRKS
00700 REAL*4 XIO(1)
00701 IDENT=ID*ISGN
00702 #if defined (ALEPH)
00703 IF (IDENT.EQ. 1) THEN
00704 IPKDEF= 211
00705 ELSEIF (IDENT.EQ.-1) THEN
00706 IPKDEF=-211
00707 ELSEIF (IDENT.EQ. 2) THEN
00708 IPKDEF= 111
00709 ELSEIF (IDENT.EQ.-2) THEN
00710 IPKDEF= 111
00711 ELSEIF (IDENT.EQ. 3) THEN
00712 IPKDEF= 321
00713 ELSEIF (IDENT.EQ.-3) THEN
00714 IPKDEF=-321
00715 #else
00716 IF (IDENT.EQ. 1) THEN
00717 IPKDEF=-211
00718 ELSEIF (IDENT.EQ.-1) THEN
00719 IPKDEF= 211
00720 ELSEIF (IDENT.EQ. 2) THEN
00721 IPKDEF=111
00722 ELSEIF (IDENT.EQ.-2) THEN
00723 IPKDEF=111
00724 ELSEIF (IDENT.EQ. 3) THEN
00725 IPKDEF=-321
00726 ELSEIF (IDENT.EQ.-3) THEN
00727 IPKDEF= 321
00728 #endif
00729 ELSEIF (IDENT.EQ. 4) THEN
00730
00731
00732 CALL RANMAR(XIO,1)
00733 IF (XIO(1).GT.BRK0) THEN
00734 IPKDEF= 130
00735 ELSE
00736 IPKDEF= 310
00737 ENDIF
00738 ELSEIF (IDENT.EQ.-4) THEN
00739
00740
00741 CALL RANMAR(XIO,1)
00742 IF (XIO(1).GT.BRK0B) THEN
00743 IPKDEF= 130
00744 ELSE
00745 IPKDEF= 310
00746 ENDIF
00747 ELSEIF (IDENT.EQ. 8) THEN
00748 IPKDEF= 22
00749 ELSEIF (IDENT.EQ.-8) THEN
00750 IPKDEF= 22
00751 ELSEIF (IDENT.EQ. 9) THEN
00752 IPKDEF= 221
00753 ELSEIF (IDENT.EQ.-9) THEN
00754 IPKDEF= 221
00755 ELSE
00756 PRINT *, 'STOP IN IPKDEF, WRONG IDENT=',IDENT
00757 STOP
00758 ENDIF
00759 LUNPIK=IPKDEF
00760 END
00761
00762
00763 #if defined (CLEO)
00764
00765 SUBROUTINE TAURDF(KTO)
00766
00767
00768
00769 COMMON / TAUKLE / BRA1,BRK0,BRK0B,BRKS
00770 REAL*4 BRA1,BRK0,BRK0B,BRKS
00771 COMMON / TAUBRA / GAMPRT(30),JLIST(30),NCHAN
00772 IF (KTO.EQ.1) THEN
00773
00774
00775 BRA1 = PKORB(4,1)
00776 BRKS = PKORB(4,3)
00777 BRK0 = PKORB(4,5)
00778 BRK0B = PKORB(4,6)
00779 ELSE
00780
00781
00782 BRA1 = PKORB(4,2)
00783 BRKS = PKORB(4,4)
00784 BRK0 = PKORB(4,5)
00785 BRK0B = PKORB(4,6)
00786 ENDIF
00787
00788 END
00789 #else
00790
00791 SUBROUTINE TAURDF(KTO)
00792
00793
00794
00795 COMMON / TAUKLE / BRA1,BRK0,BRK0B,BRKS
00796 REAL*4 BRA1,BRK0,BRK0B,BRKS
00797 COMMON / TAUBRA / GAMPRT(30),JLIST(30),NCHAN
00798 IF (KTO.EQ.1) THEN
00799
00800
00801 NCHAN = 19
00802 DO 1 I = 1,30
00803 IF (I.LE.NCHAN) THEN
00804 JLIST(I) = I
00805 IF(I.EQ. 1) GAMPRT(I) = .0000
00806 IF(I.EQ. 2) GAMPRT(I) = .0000
00807 IF(I.EQ. 3) GAMPRT(I) = .0000
00808 IF(I.EQ. 4) GAMPRT(I) = .0000
00809 IF(I.EQ. 5) GAMPRT(I) = .0000
00810 IF(I.EQ. 6) GAMPRT(I) = .0000
00811 IF(I.EQ. 7) GAMPRT(I) = .0000
00812 IF(I.EQ. 8) GAMPRT(I) = 1.0000
00813 IF(I.EQ. 9) GAMPRT(I) = 1.0000
00814 IF(I.EQ.10) GAMPRT(I) = 1.0000
00815 IF(I.EQ.11) GAMPRT(I) = 1.0000
00816 IF(I.EQ.12) GAMPRT(I) = 1.0000
00817 IF(I.EQ.13) GAMPRT(I) = 1.0000
00818 IF(I.EQ.14) GAMPRT(I) = 1.0000
00819 IF(I.EQ.15) GAMPRT(I) = 1.0000
00820 IF(I.EQ.16) GAMPRT(I) = 1.0000
00821 IF(I.EQ.17) GAMPRT(I) = 1.0000
00822 IF(I.EQ.18) GAMPRT(I) = 1.0000
00823 IF(I.EQ.19) GAMPRT(I) = 1.0000
00824 ELSE
00825 JLIST(I) = 0
00826 GAMPRT(I) = 0.
00827 ENDIF
00828 1 CONTINUE
00829
00830
00831
00832
00833
00834
00835
00836
00837 BRA1=0.5
00838 BRK0=0.5
00839 BRK0B=0.5
00840 BRKS=0.6667
00841 ELSE
00842
00843
00844 NCHAN = 19
00845 DO 2 I = 1,30
00846 IF (I.LE.NCHAN) THEN
00847 JLIST(I) = I
00848 IF(I.EQ. 1) GAMPRT(I) = .0000
00849 IF(I.EQ. 2) GAMPRT(I) = .0000
00850 IF(I.EQ. 3) GAMPRT(I) = .0000
00851 IF(I.EQ. 4) GAMPRT(I) = .0000
00852 IF(I.EQ. 5) GAMPRT(I) = .0000
00853 IF(I.EQ. 6) GAMPRT(I) = .0000
00854 IF(I.EQ. 7) GAMPRT(I) = .0000
00855 IF(I.EQ. 8) GAMPRT(I) = 1.0000
00856 IF(I.EQ. 9) GAMPRT(I) = 1.0000
00857 IF(I.EQ.10) GAMPRT(I) = 1.0000
00858 IF(I.EQ.11) GAMPRT(I) = 1.0000
00859 IF(I.EQ.12) GAMPRT(I) = 1.0000
00860 IF(I.EQ.13) GAMPRT(I) = 1.0000
00861 IF(I.EQ.14) GAMPRT(I) = 1.0000
00862 IF(I.EQ.15) GAMPRT(I) = 1.0000
00863 IF(I.EQ.16) GAMPRT(I) = 1.0000
00864 IF(I.EQ.17) GAMPRT(I) = 1.0000
00865 IF(I.EQ.18) GAMPRT(I) = 1.0000
00866 IF(I.EQ.19) GAMPRT(I) = 1.0000
00867 ELSE
00868 JLIST(I) = 0
00869 GAMPRT(I) = 0.
00870 ENDIF
00871 2 CONTINUE
00872
00873
00874
00875
00876
00877
00878
00879
00880 BRA1=0.5
00881 BRK0=0.5
00882 BRK0B=0.5
00883 BRKS=0.6667
00884 ENDIF
00885
00886 END
00887
00888
00889
00890
00891
00892
00893
00894 #endif
00895
00896
00897