]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HERWIG/jimmy/jimmy/jmpn.F
Do not include from subdirectories
[u/mrichter/AliRoot.git] / HERWIG / jimmy / jimmy / jmpn.F
CommitLineData
ef94df36 1*CMZ : 17/07/95 11.08.55 by Jonathan Butterworth
2*-- Author : J. M. Butterworth
3 SUBROUTINE JMPN( PROBS, ZDUB, K )
4C --------------------------------------------------------------------------
5C Purpose: Returns the probabilities of N scatters at a given z, by
6C interpolating between the points stored during initialisation.
7C Returned arg. J is the lower edge of the s bin we are in.
8C --------------------------------------------------------------------------
9#include "herwig65.inc"
10#include "jimmy.inc"
11
12
13 DOUBLE PRECISION ZDUB
14 DOUBLE PRECISION Z, PROBS( MAXMS )
15 DOUBLE PRECISION JMSC1, JMSC2, Z1, Z2, SCSIG, M, C
16 INTEGER I, J, K
17
18 Z=ZDUB
19 DO I=1,MAXMS
20 PROBS(I)=0.D0
21 ENDDO
22
23 IF (IERROR.NE.0) RETURN
24
25 IF (ZDUB.LT.-0.5D0) THEN
26 DO J=1,MAXMS
27 PROBS(J)=JMARRY(4+J,1)
28 ENDDO
29 RETURN
30 ENDIF
31
32 DO 1, I=1, NPSIMP
33
34 IF (Z.LE.JMARRY( 1, I )) GOTO 2
35
36 1 CONTINUE
37
38 WRITE(JMOUT,*) 'JMPN: ILLEGAL Z INPUT! ',Z
39 IERROR=200
40 RETURN
41
42C We are interpolating between JMARRY(J,I-1) and JMARRY(J,I)
43C Linear interpolation.
44 2 CONTINUE
45
46 K=I
47
48 DO J=1, MAXMS
49
50 IF (JMARRY(4+J,I-1).GT.0.0) THEN
51 JMSC1 = JMARRY(4+J,I-1)
52 ENDIF
53
54 IF (JMARRY(4+J,I).GT.0.D0) THEN
55 JMSC2 = JMARRY(4+J,I)
56 ENDIF
57
58 Z1 = JMARRY(1,I-1)
59 Z2 = JMARRY(1,I)
60
61 M = (JMSC2-JMSC1)/(Z2-Z1)
62 C = JMSC1-M*Z1
63
64 SCSIG = M*Z + C
65
66 PROBS(J) = SCSIG
67
68 ENDDO
69
70 RETURN
71 END