5 * Revision 1.1.1.1 1995/10/24 10:21:59 cernlib
9 #include "geant321/pilot.h"
10 *CMZ : 3.21/04 23/02/95 14.46.01 by S.Giani
12 SUBROUTINE SECLF5(FSE,IFSE,EX,U,E)
13 C THIS ROUTINE SAMPLES AN EXIT ENERGY FROM
14 C A GENERAL EVAPORATION SPECTRUM
15 #include "geant321/minput.inc"
16 DIMENSION FSE(*),IFSE(*)
27 IF(E.LE.FSE(IP))GO TO 20
31 C DETERMINE THE INTERPOLATING SCHEME
32 CALL INTSCH(IFSE,I,IS,NR)
35 CALL INTERP(E,THETA,E1,FSE(IP-1),E2,FSE(IP+1),IS)
46 CALL INTSCH(IFSE(IPR),I,IS,NR)
50 PROB=PROB+(FSE(N)+FSE(N-2))*(FSE(N-1)-FSE(N-3))/2.
52 40 PROB=PROB+FSE(N-2)*(FSE(N-1)-FSE(N-3))
56 70 X=FSE(N-3)+(R-PROB1)*(FSE(N-1)-FSE(N-3))/(PROB-PROB1)
57 C SELECT THE EXIT ENERGY FROM THE GENERAL EVAPORATION SPECTRUM
60 #if defined(CERNLIB_MDEBUG)
61 WRITE(IOUT,10000)EX,EMAX
62 10000 FORMAT(' MICAP: WARNING-EX,EMAX=',1P2E13.5,' IN SECLF5')
66 C INCIDENT ENERGY IS ABOVE THE LAST INCIDENT ENERGY GIVEN
67 C USE THE LAST DISTRIBUTION
71 C INCIDENT ENERGY IS BELOW THE FIRST INCIDENT ENERGY GIVEN
72 C USE THE FIRST DISTRIBUTION
76 100 WRITE(IOUT,10100)IS
77 10100 FORMAT(' MICAP: INTERPOLATION SCHEME=',I3,' IN SECLF5')
78 WRITE(6,*) ' CALOR: ERROR in SECLF5 =====> STOP '