* * $Id: rnorthib.F,v 1.1.1.1 1996/04/01 15:03:05 mclareni Exp $ * * $Log: rnorthib.F,v $ * Revision 1.1.1.1 1996/04/01 15:03:05 mclareni * Mathlib gen * * #include "gen/pilot.h" #if defined(CERNLIB_IBM) FUNCTION RNORTH(K) C RNOR TOOTH FUNCTION DIMENSION C(45) DATA C/Z40FD2B5F,Z40FD2B5F,Z40FAA9AD,Z40F5A648,Z40F32496, $ Z40EE2131,Z40E69C1A,Z40E198B5,Z40DA139E,Z40D28E87,Z40C887BE, $ Z40C102A6,Z40B6FBDD,Z40ACF513,Z40A2EE4A,Z4098E780,Z40916269, $ Z40875BA0,Z407D54D6,Z40734E0D,Z406BC8F6,Z4061C22C,Z405A3D15, $ Z4052B7FE,Z404B32E7,Z4043ADD0,Z403C28B9,Z40372554,Z402FA03D, $ Z402A9CD8,Z40259973,Z4020960E,Z401E145C,Z401910F7,Z40168F45, $ Z40140D93,Z40118BE0,Z3FF0A2E4,Z3FC887BE,Z3FA06C98,Z3F785172, $ Z3F785172,Z3F50364C,Z3F50364C,Z3F50364C/ DATA I1/ZFBC35400/,I2/ZFE79702E/ IF(K.GT.I1)GOTO 3 S=UNI(0) T=UNI(0) B=AINT(7.*(S+T)+37.*ABS(S-T)) X=UNI(0)-UNI(0) RNORTH=.0625*(X+SIGN(B,X)) RETURN 3 IF(K.GT.I2)GOTO 5 4 RNORTH=2.75*VNI(0) J=16.*ABS(RNORTH)+1. IF(J-14) 6,6,7 6 P=(J+J-1)*.1497466E-2 GOTO 8 7 P=(89-J-J)*.698817E-3 8 IF(UNI(0).GT.79.78846*(EXP(-.5*RNORTH*RNORTH) $ -C(J)-P*(J-16.*ABS(RNORTH)))) GOTO4 RETURN 5 V=VNI(0) IF(V.EQ.0) GOTO 5 X=SQRT(7.5625-2.*LOG(ABS(V))) IF(UNI(0)*X.GT.2.75)GOTO 5 RNORTH=SIGN(X,V) RETURN END #endif