error_function.zip (5 kB)

The error function erf and its complementary erfc, the
version which can be found in Sun's library (Cody's solution and thus

only for Reals), but ready to use. For its cousin - the
cumulative normal distribution - see the main page (and the VBA code)

or use `cdfN(x) = ( 1 + erf(x/sqrt(2)) ) / 2`, but be aware that this always will introduce some relative errors.

MillsRatio.zip (3 kB)

Mills' ratio (or the inverse of the hazard function) and defined as `(1 - cdfN(x))/pdfN(x)`and thus also can by used to

compute the cumulative normal distribution. The absolute and relative errors are `~ 2 * DBL_EPSILON` and the test report

regards the IEEE representation for doubles, Mills_IEEE.pdf (459 kB).

LambertW.cpp (1 kB)

Lambert's W function solves the equation `x = y * exp(y) = y + y^2 + y^3/2 + y^4/6 + y^5/24 + ...`

y = LambertW(x) is a kind of log for that. Over the positive Reals it can be computed by Newton's method, which converges

quickly (~ 3 steps) with relative error below `2 * DBL_EPSILON` (absolute error below `DBL_EPSILON` for `x= 0 .. 1).
`

gamma_lanzos.zip (4 kB)

Gamma function for complex inputs, which also works very close the the poles in negative integers. Basically it uses Godfrey's

method (which however seems to have problems in those regions). The tests for accuracy are done with Maple (using high

precision and regarding IEEE representation for doubles), here are some test results: gamma_lanczos_NP_test.pdf (20 kB).

hypergeometric
function 2F1 function (internal link)

For Gauss' function, complex case for parameters and variable, has its own URL. Note it is the function, not merely the series

in the unit disk.

feedback is welcome & if you want to drop me any
comment
...

07 Jun 2010: uploaded

This software is provided "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the author be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.