1 SUBROUTINE imf(BODY10,BODYN)
16 1 y0 = (1.0 - xm)**0.75 + 0.032*(1.0 - xm)**0.25
17 y2 = (0.75 + 0.008/sqrt(1.0 - xm))/
18 & ((1.0 - xm) + 0.032*sqrt(1.0 - xm))
19 y1 = bodym - 0.19*xm/y0
20 ypr = -0.19*(1.0 + xm*y2)/y0
24 IF (xm.GT.1.0) xm = 0.99999
25 IF (xm.LT.0.0) xm = 0.001
28 IF (abs(bodys - bodym).GT.1.0d-06*bodym) go to 1
40 dx = (x1 - xm)/float(n - 1)
43 xi = x1 - dx*float(i-1)
44 zm0 = (1.0 - xi)**0.75 + 0.032*(1.0 - xi)**0.25
46 zmass = zmass + body(i)
49 WRITE (6,20) body(1), body(n), zmass/float(n)
50 20
FORMAT (/,12x,
'REALISTIC MASS FUNCTION:',
' BODY(1) =',1pe9.2,
51 &
' BODY(N) =',e9.2,
' <M> =',e9.2)
54 zmbar = zmass/float(n)