C #PNORA V1A 17-APR-72 C LAST UPDATE: 29-JUN-73 C FUNCTION PNORA(X) C C *PURPOSE. C TO CALCULATE THE NORMAL PROBABILITY FUNCTION. "PNORA" C RETURNS THE PROBABILITY THAT A RANDOM VARIABLE WITH ZERO MEAN C AND UNIT STANDARD DEVIATION LIES BELOW X. EXPLICITLY THE VALUE IS THE C INTEGRAL OF: C (2*PI)**(-0.5) * EXP(-T**2/2.) C C BETWEEN MINUS INFINITY AND X. THE CORRESPONDING PROBABILITY FOR C MEAN "A" AND STANDARD DEVIATION "V" WOULD BE OBTAINED FROM: C C V*PNORA( (X-A)/V ) C C *PARAMETERS: C X - THE DIMENSIONLESS LIMIT FOR THE PROBABILITY INTEGRAL. C C INPUT PARAMETERS: C X C OUTPUT PARAMETERS: C (THE FUNCTION VALUE) C C *METHOD. C AN APPROXIMATION DUE ORIGINALLY TO C.HASTINGS AND GIVEN C BY M.ABRAMOWITZ AND I.STEGUN, "HANDBOOK OF MATHEMATICAL C FUNCTIONS", FORMULA 26.2.17, IS USED. C C *ACCURACY. C THE MAXIMUM ERROR GIVEN FOR THIS APPROXIMATION IN THE C ENTIRE RANGE -INFINITY TO +INFINITY IS 7.5E-8. C THIS ERROR MAY BE INCREASED BY MACHINE ROUNDING HOWEVER! C C *RESTRICTIONS. C C *ERROR CONDITIONS. C C *NON STANDARD ROUTINES CALLED. C C *TYPICAL TIMES. C C *ORIGIN. M.R.MANNING FROM ABRAMOWITZ AND STEGUN. C C *COMMENTS. C C C #END. C C "C0" IS (2*PI)**(-1/2), OTHER CONSTANTS FROM A&S. DATA C0/ 0.398942280/ DATA B1/ 0.319381530/ DATA B2/ -0.356563782/ DATA B3/ 1.781477937/ DATA B4/ -1.821255978/ DATA B5/ 1.330274429/ DATA P / 0.2316419/ C T=1./(1.+P*ABS(X) ) Z=C0*EXP(-0.5*X*X) Z=Z*T*(B1+T*(B2+T*(B3+T*(B4+T*B5)))) IF ( X .GT. 0.) Z= 1. - Z PNORA= Z RETURN END