/[PAMELA software]/gpamela/gpcalor/recoil.guhadr
ViewVC logotype

Annotation of /gpamela/gpcalor/recoil.guhadr

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download)
Wed Dec 14 03:14:20 2005 UTC (18 years, 11 months ago) by cafagna
Branch: MAIN
CVS Tags: v4r4, v4r5, v4r6, v4r7, v4r8, v4r9, v4r14, v4r12, v4r13, v4r10, v4r11, HEAD
Neutron detector added. Geometry and GPCALOR package

1 cafagna 1.1 SUBROUTINE GUHADR
2     C=========== This will work only with GCALOR V1.01/15 and up ======
3     C***************************************************************
4     C
5     C CALOR-GEANT Interface common
6     C
7     C parameters of incident particle :
8     C IPinc = particle type a la CALOR
9     C Einc = kinetic energy
10     C Uinc(3) = direction cosines
11     C material parameters:
12     C NCEL = number of elements in mixture (NMTC)
13     C GEANT material no. for MICAP
14     C Amed(I) = mass number
15     C Zmed(I) = charge number
16     C Dmed(I) = Atoms/cm**3 * 1E-24
17     C Hden = Atoms/cm**3 * 1E-24
18     C of H-Atoms in mixture
19     C
20     C particle stack:
21     C NPHETC = number of particles
22     C Ekinet(1:NPHETC) = kinetic energy of part.
23     C IPCAL(1:NPHETC) = particle type a la CALOR (extended)
24     C UCAL(1:NPHETC,3) = direction cosines
25     C CALTIM(1:NPHETC) = age of particle (nsec)
26     C
27     C ATARGT = A no. of target nucleus
28     C ZTARGT = Z no of target nucleus
29     C
30     C return of residual nucleus information
31     C NRECOL = no. of heavy recoil products
32     C Amed(I) = mass number of residual nucleus
33     C Zmed(I) = charge number " "
34     C EXmed = exitation energy of nucleus
35     C ERmed(I)= recoil energy of nucleus
36     C IntCal = type of interaction (GEANT NAMEC index)
37     C return of cross section of hadronic interaction (CALSIG called)
38     C SIG = x-section
39     C
40     C set by CALSIG:
41     C ICPROC = -1 undefined
42     C = 0 NMTC called for cross-section
43     C = 1 MICAP called for cross-section
44     C = 2 SKALE(NMTC at 3 GeV) called for cross-section
45     C = 3 FLUKA called for cross-section
46     C KCALL : same coding as ICPROC, but is only valid after a
47     C call to GCALOR
48     C 19/5/92 C.Zeitnitz University of Arizona
49     C****************************************************************
50     C
51     PARAMETER(EMAXP = 3.495)
52     PARAMETER(EMAXPI = 2.495)
53     C transition upper limit (GeV) NMTC-FLUKA
54     PARAMETER(ESKALE = 10.0)
55     PARAMETER(MXCP = 300)
56     C
57     COMMON/ CALGEA / IPINC , EINC , UINC(3) ,NCEL ,
58     + HDEN , AMED(100) , ZMED(100) ,DMED(100) ,
59     + NPHETC ,EKINET(MXCP),IPCAL(MXCP),UCAL(MXCP,3),
60     + INTCAL , EXMED , ERMED(100),SIG ,
61     + CALTIM(MXCP), ICPROC, NRECOL ,KCALL ,
62     + ATARGT , ZTARGT
63     C
64     C
65     Real*8 AMNTAR, AMMTAR, AMNZM1, AMMZM1, AMNNM1, AMMNM1,
66     & ANOW, ZNOW, ANCOLL, ZNCOLL, ERES, EKRES,
67     & AMNRES, AMMRES, PTRES, PXRES, PYRES, PZRES,
68     & PTRES2
69    
70     COMMON /FKRESN/ AMNTAR, AMMTAR, AMNZM1, AMMZM1, AMNNM1, AMMNM1,
71     & ANOW, ZNOW, ANCOLL, ZNCOLL, ERES, EKRES,
72     & AMNRES, AMMRES, PTRES, PXRES, PYRES, PZRES,
73     & PTRES2, KTARP, KTARN, IGREYP, IGREYN, ICRES,
74     & IBRES, IEVAPL, IEVAPH, IEVNEU, IEVPRO, IEVDEU,
75     & IEVTRI, IEV3HE, IEV4HE, IDEEXG, IBTAR, ICHTAR,
76     & IOTHER
77     C
78     *KEEP,GCKING.
79     INTEGER MXGKIN
80     PARAMETER (MXGKIN=100)
81     COMMON/GCKING/KCASE,NGKINE,GKIN(5,MXGKIN),
82     + TOFD(MXGKIN),IFLGK(MXGKIN)
83     INTEGER KCASE,NGKINE ,IFLGK
84     REAL GKIN,TOFD
85     C
86     C
87     Logical FFLUKA,FMICAP,FNMTC,FSKALE
88     SAVE
89     C
90     C now call GEANT-CALOR interface
91     CALL GCALOR
92     C which program has been called ?
93     FFLUKA = KCALL .EQ. 3 .and. ngkine .gt. 0
94     FMICAP = KCALL .EQ. 1 .and. ngkine .gt. 0
95     FNMTC = KCALL .EQ. 0 .and. ngkine .gt. 0
96     FSKALE = KCALL .EQ. 2 .and. ngkine .gt. 0
97     IF(FFLUKA) THEN
98     C Fluka calculated the interaction
99     C Recoil nucleus information in:
100     C EKRES : kinetic energy (GeV)
101     C ANOW : A of recoil nucleus
102     C ZNOW : Z of recoil nucleus
103     Call Hfill(100+kcall,sngl(ekres),1.,1.)
104     Call Hfill(200+kcall,sngl(anow),1.,1.)
105     Call Hfill(300+kcall,sngl(znow),1.,1.)
106     ELSE IF(FMICAP.or.FNMTC.or.FSKALE) THEN
107     C HETC or MICAP calculated the interaction
108     C Recoil nucleus information in:
109     C ERMED(I) : kinetic energy (MeV)
110     C AMED(I) : A of recoil nucleus
111     C ZMED(I) : Z of recoil nucleus
112     C NRECOL : number of heavy recoil products
113     C ATARGT : A of target nucleus
114     C ZTARGT : Z of target nucleus
115     do i=1,nrecol
116     Call Hfill(100+kcall,ermed(i)/1000.,1.,1.)
117     Call Hfill(200+kcall,amed(i),1.,1.)
118     Call Hfill(300+kcall,zmed(i),1.,1.)
119     enddo
120     ENDIF
121     RETURN
122     END

  ViewVC Help
Powered by ViewVC 1.1.23