55 real*8 psi,
x, xc0coef(8)
59 real*8 psi3_3(11), psi_3(11), psi3_4(11), psi_4(11)
60 real*8 psi3_5(11), psi_5(11), psi3_6(11), psi_6(11)
61 equivalence(psi3_3(1),
tbl(1,1))
62 equivalence(psi_3(1),
tbl(1,2))
63 equivalence(psi3_4(1),
tbl(1,3))
64 equivalence(psi_4(1),
tbl(1,4))
65 equivalence(psi3_5(1),
tbl(1,5))
66 equivalence(psi_5(1),
tbl(1,6))
67 equivalence(psi3_6(1),
tbl(1,7))
68 equivalence(psi_6(1),
tbl(1,8))
73 data (psi3_3(
i),
i= 1, 11)/
74 1 -0.36519777 , -0.16437488 , -0.42191193
e-01,
75 2 0.45068651
e-02, 0.37406044
e-03, -0.11694408
e-03,
76 3 -0.21981366
e-04, 0.50330259
e-05, 0.56416748
e-06,
77 4 -0.59483304
e-07, -0.10075934
e-07
79 data (psi_3(
i),
i= 1, 11)/
80 1 -0.27621962 , -0.17806948 , -0.36641237
e-01,
81 2 0.34820468
e-02, 0.23404694
e-03, -0.11645243
e-03,
82 3 -0.11166093
e-05, 0.51644288
e-05, 0.66054175
e-07,
83 4 -0.94357089
e-07, -0.73799132
e-08
85 data (psi3_4(
i),
i= 1, 11)/
86 1 -0.21981296 , -0.18463515 , -0.33139695
e-01,
87 2 0.22214970
e-02, 0.96012771
e-04, -0.47834498
e-04,
88 3 0.15951965
e-04, 0.32866129
e-05, -0.42901554
e-06,
89 4 -0.10473240
e-06, -0.53301833
e-08
91 data (psi_4(
i),
i= 1, 11)/
92 1 -0.18243710 , -0.18712415 , -0.31745835
e-01,
93 2 0.90498800
e-03, 0.12296262
e-03, 0.46807678
e-04,
94 3 0.22577025
e-04, 0.42917421
e-06, -0.75768289
e-06,
95 4 -0.97835715
e-07, -0.37327138
e-08
98 data (psi3_5(
i),
i= 1, 11)/
99 1 -0.15645188 , -0.18758306 , -0.32142658
e-01,
100 2 -0.27076403
e-03, 0.30784765
e-03, 0.14090033
e-03,
101 3 0.21276677
e-04, -0.25452860
e-05, -0.96816286
e-06,
102 4 -0.87676147
e-07, -0.26691205
e-08
104 data (psi_5(
i),
i= 1, 11)/
105 1 -0.13939747 , -0.19218187 , -0.32177166
e-01,
106 2 0.43072437
e-03, 0.50884199
e-03, 0.78017665
e-04,
107 3 0.33119508
e-05, -0.20977899
e-05, -0.47432646
e-06,
108 4 -0.37755362
e-07, -0.10680872
e-08
110 data (psi3_6(
i),
i= 1, 11)/
111 1 -0.12864838 , -0.19609994 , -0.31528914
e-01,
112 2 0.11811036
e-02, 0.56385559
e-03, 0.84414004
e-05,
113 3 -0.73982020
e-05, -0.91893847
e-06, -0.85709610
e-07,
114 4 -0.61186589
e-08, -0.19199417
e-09
116 data (psi_6(
i),
i= 1, 11)/
117 1 -0.12129256 , -0.19786006 , -0.31152534
e-01,
118 2 0.13900376
e-02, 0.58057791
e-03, -0.13423486
e-04,
119 3 -0.10636349
e-04, -0.54026892
e-06, 0.34550944
e-07,
120 4 0.35276755
e-08, 0.72269160
e-10
123 data ( xc0coef(
i),
i= 1, 8)/
124 1 -0.10535316 , -0.20019514 , -0.30586898
e-01,
125 2 0.13258432
e-02, 0.58454445
e-03, -0.13505923
e-04,
126 3 -0.97296726
e-05, -0.53504562
e-06
136 psi =
x * psi + xc0coef(
i)
141 ixc = log10(3.1627
e-3/ xc)*2 + 1.1
142 if(abs(10.**(-2 - ixc/2.0) / xc -1.) .gt. 0.05)
then 143 call cerrormsg(
'input xc is invalid: cmBremI1', 0)
145 if(ixc .lt. 1 .or. ixc .gt. 8)
then 147 * (
'input xc is too large or too small: cmBremI1', 0)
154 psi =
x * psi +
tbl(
i, ixc)
subroutine cerrormsg(msg, needrtn)
real *8 function cmbremi1(upsilon, xc)
dE dx *! Nuc Int sampling table e
! Parameters used for hadronic cascade shower is generated newline ! For you may give as as or em quick generation of AS for heavy primaries is tried See chookASbyH f character *Generate2 don t touch this for skeleton flesh use integer MagBrem no magnetic bremsstrahlung is considered newline ! if and Ee energy loss due to magnetic brems is considered newline ! if and Ee real sampling of gamma is performed WaitRatio ! must be made small so that WaitRatio *E0 sim MagBremEmin integer MagPair no magnetic pair creation is considered newline ! if and Eg real sampling is the LPM effect is considered when Ee LpmBremEmin for electrons and ! Eg LpmPairEmin for gamma rays real *MagBremEmin E magnetic bremsstrahlung by electrons may be considered if not considered at all newline total energy loss due to brems is considered newline gamma energy is sampled actually newline ! If upsilon(Ee/m *B/Bcr) is small
integer Charge2heavyG charge of heavy rightarrow heavy group index conversion array integer HeavyG2massN heavy group index rightarrow mass number conversion array integer HeavyG2charge heavy group index rightarrow charge of heavy conversion array integer HeavyG2code heavy group index rightarrow particle code conversion array integer Code2massN particle code rightarrow mass number conversion array integer Code2heavyG particle code rightarrow heavy group index conversion array real *FragmentTbl tbl(i, j)
! structure defining a particle at production ! Basic idea of what is to be contained in ! the particle structue is that dynamical ones should be included those derivable from the particle code ! is not included ******************************************************type fmom momentum sequence union map real e endmap map real * x