]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | * |
2 | * $Id$ | |
3 | * | |
4 | * $Log$ | |
5 | * Revision 1.1.1.1 1995/10/24 10:20:58 cernlib | |
6 | * Geant | |
7 | * | |
8 | * | |
9 | #include "geant321/pilot.h" | |
10 | *CMZ : 3.21/02 29/03/94 15.41.38 by S.Giani | |
11 | *-- Author : | |
12 | FUNCTION FISSIO(EK1) | |
13 | C | |
14 | C *** GENERATION OF PHOTONS AND NEUTRONS BY FISSION *** | |
15 | C *** NVE 04-MAR-1988 CERN GENEVA *** | |
16 | C | |
17 | C ORIGIN : H.FESEFELDT (21-MAR-1987) | |
18 | C | |
19 | C THE PHYSICS IS BASED ON U(238) | |
20 | C FOR OTHER MATERIALS EXTRAPOLATIONS ARE USED | |
21 | C | |
22 | #include "geant321/s_defcom.inc" | |
23 | #include "geant321/s_kginit.inc" | |
24 | C | |
25 | DIMENSION SPNEUT(10) | |
26 | DIMENSION RNDM(2) | |
27 | SAVE SPNEUT | |
28 | DATA SPNEUT/10*0./ | |
29 | C | |
30 | C --- INITIALIZATION INDICATED BY KGINIT(15) --- | |
31 | IF (KGINIT(15) .NE. 0) GO TO 10 | |
32 | KGINIT(15)=1 | |
33 | C | |
34 | XX=1.-0.5 | |
35 | XXX=SQRT(2.29*XX) | |
36 | SPNEUT(1)=EXP(-XX/0.965)*(EXP(XXX)-EXP(-XXX))/2. | |
37 | DO 1 I=2,10 | |
38 | XX=I*1.-0.5 | |
39 | XXX=SQRT(2.29*XX) | |
40 | 1 SPNEUT(I)=SPNEUT(I-1)+EXP(-XX/0.965)*(EXP(XXX)-EXP(-XXX))/2. | |
41 | DO 2 I=1,10 | |
42 | 2 SPNEUT(I)=SPNEUT(I)/SPNEUT(10) | |
43 | C** IN THIS ROUTINE WE USE MEV AS UNIT FOR ENERGY AND MOMENTUM | |
44 | 10 NT=0 | |
45 | IER(82)=IER(82)+1 | |
46 | ND=IND+1 | |
47 | PV( 1,MXGKPV)=PX*P | |
48 | PV( 2,MXGKPV)=PY*P | |
49 | PV( 3,MXGKPV)=PZ*P | |
50 | PV( 4,MXGKPV)=EN | |
51 | PV( 5,MXGKPV)=ABS(AMAS) | |
52 | PV( 6,MXGKPV)=NCH | |
53 | PV( 7,MXGKPV)=TOF | |
54 | PV( 8,MXGKPV)=IPART | |
55 | PV( 9,MXGKPV)=0. | |
56 | PV(10,MXGKPV)=USERW | |
57 | PV( 1,MXGKPV-1)=0. | |
58 | PV( 2,MXGKPV-1)=0. | |
59 | PV( 3,MXGKPV-1)=0. | |
60 | PV( 4,MXGKPV-1)=ATOMAS(ATNO(ND),ZNO(ND)) | |
61 | PV( 5,MXGKPV-1)=PV(4,MXGKPV-1) | |
62 | PV( 6,MXGKPV-1)=ZNO(ND) | |
63 | PV( 7,MXGKPV-1)=TOF | |
64 | PV( 8,MXGKPV-1)=0. | |
65 | PV( 9,MXGKPV-1)=0. | |
66 | PV(10,MXGKPV-1)=0. | |
67 | CALL ADD(MXGKPV,MXGKPV-1,MXGKPV-2) | |
68 | PV(1,MXGKPV-2)=-PV(1,MXGKPV-2) | |
69 | PV(2,MXGKPV-2)=-PV(2,MXGKPV-2) | |
70 | PV(3,MXGKPV-2)=-PV(3,MXGKPV-2) | |
71 | C** NUMBER OF NEUTRONS AND PHOTONS | |
72 | FISSIO=0. | |
73 | E1=EK1*1000. | |
74 | IF(E1.LT.1.0) E1=1.0 | |
75 | AVERN=2.569+0.559*LOG(E1) | |
76 | C** TAKE THE FOLLOWING VALUE IF PHOTOFISSION IS NOT INCLUDED | |
77 | IF(IFIX(PARMAT(IND+1,8)).EQ.0) | |
78 | *AVERN=2.569+0.900*LOG(E1) | |
79 | AVERG=9.500+0.600*LOG(E1) | |
80 | CALL NORMAL(RAN) | |
81 | NN=IFIX(AVERN+RAN*1.23+0.5) | |
82 | CALL NORMAL(RAN) | |
83 | NG=IFIX(AVERG+RAN*3.+0.5) | |
84 | IF(NN.LT.1) NN=1 | |
85 | IF(NG.LT.1) NG=1 | |
86 | EXN=0. | |
87 | EXG=0. | |
88 | C** DISTRIBUTE KINETIC ENERGY | |
89 | DO 15 I=1,NN | |
90 | CALL GRNDM(RNDM,1) | |
91 | RAN=RNDM(1) | |
92 | DO 11 J=1,10 | |
93 | IF(RAN.LT.SPNEUT(J)) GOTO 12 | |
94 | 11 CONTINUE | |
95 | J=10 | |
96 | 12 CALL GRNDM(RNDM,1) | |
97 | EKIN=(J-1)*1.+RNDM(1) | |
98 | EXN=EXN+EKIN | |
99 | PV(4,I)=EKIN+RMASS(16)*1000. | |
100 | PV(5,I)=RMASS(16)*1000. | |
101 | PV(6,I)=0. | |
102 | C** EMISSION TIME FOR NEUTRONS =0. | |
103 | PV(7,I)=TOF | |
104 | PV(8,I)=16. | |
105 | PV(9,I)=0. | |
106 | PV(10,I)=0. | |
107 | 15 CONTINUE | |
108 | NT=NN | |
109 | DO 20 I=1,NG | |
110 | CALL GRNDM(RNDM,1) | |
111 | RAN=RNDM(1) | |
112 | NT=NT+1 | |
113 | PV(4,NT)=-0.87*LOG(RAN) | |
114 | EXG=EXG+PV(4,NT) | |
115 | PV(5,NT)=0. | |
116 | PV(6,NT)=0. | |
117 | C RAN=RNDM(1) | |
118 | C** EMISSION TIME FOR PHOTONS= 2.5 E-8 SEC | |
119 | C PV(7,NT)=TOF-500.*LOG(RAN) | |
120 | C** CHANGED 30.7.85 | |
121 | PV(7,NT)=TOF | |
122 | PV(8,NT)=1. | |
123 | PV(9,NT)=0. | |
124 | PV(10,NT)=0. | |
125 | 20 CONTINUE | |
126 | IF(NT.EQ.0) GO TO 9999 | |
127 | EX=EXN+EXG | |
128 | IF(NPRT(4)) | |
129 | *WRITE(NEWBCD,2000) ATNO(IND+1),NN,NG,EX | |
130 | FISSIO=EX/1000. | |
131 | DO 49 I=1,NT | |
132 | PV(5,I)=PV(5,I)/1000. | |
133 | PV(4,I)=PV(4,I)/1000. | |
134 | CALL GRNDM(RNDM,2) | |
135 | COST=-1.+2.*RNDM(1) | |
136 | SINT=SQRT(ABS(1.-COST*COST)) | |
137 | PHI=RNDM(2)*TWPI | |
138 | PP=SQRT(ABS(PV(4,I)**2-PV(5,I)**2)) | |
139 | PV(1,I)=PP*SINT*SIN(PHI) | |
140 | PV(2,I)=PP*SINT*COS(PHI) | |
141 | PV(3,I)=PP*COST | |
142 | CALL LOR(I,MXGKPV-2,I) | |
143 | 49 CONTINUE | |
144 | INTCT=INTCT+1. | |
145 | DO 50 I=1,NT | |
146 | IF(NTOT.LT.NSIZE/12) GOTO 43 | |
147 | IER(39)=IER(39)+1 | |
148 | GO TO 9999 | |
149 | 43 CALL SETTRK(I) | |
150 | 50 CONTINUE | |
151 | C | |
152 | 2000 FORMAT(1H ,'NUCLEAR FISSION ON MATERIAL ',F6.1, | |
153 | *', NEUTRONS, PHOTONS PRODUCED= ',2I3,' WITH ',F8.4,' MEV TOTAL ENE | |
154 | *RGY') | |
155 | C | |
156 | 9999 CONTINUE | |
157 | END |