double N(double x) const { double a1 = 0.31938153, a2 = -0.356563782, a3 = 1.781477937, a4 = -1.821255978, a5 = 1.330274429; double l=abs(x); double k=1/(1 + 0.2316419*l); double n= 1 - 1 / sqrt(2 * math::Pi) * exp(-l*l/2) * (a1 * k + a2 * k*k + a3 * k*k*k + a4 * k*k*k*k + a5*k*k*k*k*k); if(x<0) n=1-n; return n; }