QuantLib
A free/open-source library for quantitative finance
Reference manual - version 1.20
Public Types | Public Member Functions | List of all members
MoroInverseCumulativeNormal Class Reference

Moro Inverse cumulative normal distribution class. More...

#include <ql/math/distributions/normaldistribution.hpp>

Public Types

typedef Real argument_type
 
typedef Real result_type
 

Public Member Functions

 MoroInverseCumulativeNormal (Real average=0.0, Real sigma=1.0)
 
Real operator() (Real x) const
 

Detailed Description

Moro Inverse cumulative normal distribution class.

Given x between zero and one as the integral value of a gaussian normal distribution this class provides the value y such that formula here ...

It uses Beasly and Springer approximation, with an improved approximation for the tails. See Boris Moro, "The Full Monte", 1995, Risk Magazine.

This class can also be used to generate a gaussian normal distribution from a uniform distribution. This is especially useful when a gaussian normal distribution is generated from a low discrepancy uniform distribution: in this case the traditional Box-Muller approach and its variants would not preserve the sequence's low-discrepancy.

Peter J. Acklam's approximation is better and is available as QuantLib::InverseCumulativeNormal