Mantis - ALGLIB
Viewing Issue Advanced Details
454 Spec.functions major always 2012-05-08 20:43 2012-06-29 10:33
exp_1  
SergeyB  
normal  
resolved  
fixed  
none    
none 3.6.0  
All
0000454: FIXED: big in the ErrorFunction() (about 1E-10 in magnitude)
Erf function returns incorrect results. Error is about 1e-10.
Sing is lost in constant 0.288805137207594084924010.
Must be -0.288805137207594084924010.

For example, in Delphi file normaldistr.pas

Wrong code:
P := 0.288805137207594084924010+XSq*P;

Correct code:
P := -0.288805137207594084924010+XSq*P;

Files affected:
cpp\src\specialfunctions.cpp
csharp\src\specialfunctions.cs
ipython\csharp-src\specialfunctions.cs
vbnet\csharp-src\specialfunctions.cs
cpython\core\src\normaldistr.c
vb6\src\normaldistr.bas
freepascal\src\normaldistr.pas
delphi\src\normaldistr.pas
Proof:
See:
http://www.wolframalpha.com/input/?i=erf%284%2F10%29

Now erf(0.4) =0.42839235536425169
Must be 0.4283923550466684551036038453201724441218629285225903...
Correcting =0.42839235504666845
Issue History
2012-05-08 20:43 exp_1 New Issue
2012-05-08 20:43 exp_1 Programming language => All
2012-05-15 10:03 SergeyB Status new => assigned
2012-05-15 10:03 SergeyB Assigned To => SergeyB
2012-05-15 10:04 SergeyB Target Version => 3.6.0
2012-06-29 10:33 SergeyB Status assigned => resolved
2012-06-29 10:33 SergeyB Fixed in Version => 3.6.0
2012-06-29 10:33 SergeyB Resolution open => fixed
2012-06-29 10:33 SergeyB Summary Erf function returns incorrect results. Error is about 1e-10. => FIXED: big in the ErrorFunction() (about 1E-10 in magnitude)
2012-06-29 10:33 SergeyB Description Updated

There are no notes attached to this issue.