{ RCSid $Id: norm.cal,v 1.4 2021/09/12 17:04:41 greg Exp $ } { Normal Distribution Functions 10/20/87 Z(u) - normal probability density function Q(u) - Z(u) integrated from u to infinity u(p) - u for known value p = Q(u) } NORMF : 1/sqrt(2*PI) ; Z(u) : NORMF * exp(-u*u/2) ; { ### Old approximation: Q2(t) : t*(.31938153+t*(-.356563782+t*(1.781477937+ t*(-1.821255978+t*1.330274429)))) ; Q1(u) : Z(u) * Q2(1/(1+.2316419*u)) ; Q(u) : if( u, Q1(u), 1-Q1(-u) ) ; ### erf() gives us exact value: } Q(u) : .5 - .5*erf(u/sqrt(2)) ; u2(t) : t - (2.515517+t*(.802853+t*.010328))/ (1+t*(1.432788+t*(.189269+t*.001308))) ; u1(p) : u2(sqrt(-2*log(p))) ; u(p) : if( .5-p, u1(p), -u1(1-p) ) ;