5 * Revision 1.1.1.1 1995/10/24 10:21:25 cernlib
9 #include "geant321/pilot.h"
10 *CMZ : 3.21/02 29/03/94 15.41.21 by S.Giani
12 SUBROUTINE GFSHDC(IELEM,Z)
14 C. ******************************************************************
16 C. * Fetch Shell Decay Constants *
18 C. * ==>CALLED BY : GPHXSI *
19 C. * AUTHOR : J. Chwastowski *
21 C. ******************************************************************
23 #include "geant321/gcbank.inc"
24 #include "geant321/gcjloc.inc"
25 #include "geant321/gconsp.inc"
26 #include "geant321/gcunit.inc"
28 PARAMETER (ONEEV = 1.E-9)
29 DIMENSION PRB(4),PRBR(92),ER(92),PRBNR(92),ENR(92)
30 DIMENSION ESHL(24),NRAD(24),NONRAD(24)
31 PARAMETER (NFNBIN = 17, NSHELL = 4)
33 C Push NZ JPFN banks which will contain constants for each Z
37 C Get Z, the shell potentials and the decay modes
53 CALL GFSHLS(Z,ESHL,NSHLL)
54 CALL GFRDT(Z,ESHL,NSHELL,NWR,NRAD,PRBR,ER)
55 CALL GFNRDT(Z,ESHL,NSHELL,NWNR,NONRAD,PRBNR,ENR)
56 C Calculate how many words are needed for the final state bank JPHFN
59 IF(NRAD(J).GT.0) NWORD = NWORD+2*NRAD(J)+1
60 IF(NONRAD(J).GT.0) NWORD = NWORD+2*NONRAD(J)+1
63 JPHFN = LQ(JPHXS-IELEM)
64 C Push bank to store final state parameters
65 CALL MZPUSH(IXCONS,JPHFN,0,NBOOK,'R')
66 NUSED = 5*Q(JPHFN+1)+1
69 C Get probability of the shell radiative decay
70 CALL GFSDPR(Z,NSHELL,PRB)
72 C Copy potentials and radiative decay probabilities
75 IF(ESHL(J).GT.0.0) THEN
76 Q(JPHFN+1+J) = ESHL(J)*ONEEV
77 Q(JPHFN+1+J+NSHELL) = PRB(J)
79 C if the shell potential is zero set it to -1
81 Q(JPHFN+1+J+NSHELL) = -1.
85 C Now configurations of the final state
91 Q(JPHFN+10) = 18+NUSED
93 IF(ESHL(J).GT.0.0) THEN
95 IF(J.GT.1) Q(JPHFN+9+J) = K+NUSED
109 IF(NONRAD(J).GT.0) THEN
110 Q(JPHFN+13+J) = K+NUSED
111 Q(JPHFN+K) = NONRAD(J)
113 KNER = KNR+NONRAD(J)-1
115 Q(JPHFN+K) = PRBNR(L)
127 C You should never land here unless Z < 6
129 C CALL MZDROP(IXCONS,JPHFN,'L')
130 WRITE(CHMAIL,'(A25,I3)') ' GFSHDC. JPHFN Z > 5. Z = ',Z