 18 Nov, 2013 4 commits


Morten Welinder authored

Morten Welinder authored

Morten Welinder authored
The file mathfunc.c is getting too fat. This starts a split.

Мирослав Николић authored

 16 Nov, 2013 2 commits


Morten Welinder authored
Microsoft's library isn't accurate. This helps by reducing the argument to [Pi/4,+Pi/4].

Morten Welinder authored
We don't want our HAVE_this or HAVE_that to make it into our API.

 15 Nov, 2013 3 commits


Morten Welinder authored

Morten Welinder authored

Morten Welinder authored
These functions are quite handy and don't suffer argument reduction losses. They are recommended in the 2008 version of IEEE 754.

 14 Nov, 2013 5 commits


Morten Welinder authored

Morten Welinder authored

Morten Welinder authored
It's unstable because it unloads some module that takes offense to that. Well, don't unload any modules then.

Morten Welinder authored

Morten Welinder authored

 13 Nov, 2013 3 commits


Morten Welinder authored

Jean Bréfort authored

Morten Welinder authored
This is current intraworkbook only.

 12 Nov, 2013 3 commits


Morten Welinder authored

Morten Welinder authored
Using both sin and cos causes sincos to be used and it stinks.

Morten Welinder authored

 08 Nov, 2013 1 commit


Morten Welinder authored
1e26 isn't representable and reference values assume it is.

 07 Nov, 2013 4 commits


Morten Welinder authored

Morten Welinder authored
This fixes a number of problems pointed out by the amath tests. The core change is the introduction of qfactf which is able to compute very large factorials accurately. The magnitude of the result is returned seperately as a number of power2magnitudes that the given (quad precision) result should be scaled. It's loglike without the error magnification that goes with lgamma.

Morten Welinder authored

Morten Welinder authored

 06 Nov, 2013 1 commit


Jean Bréfort authored

 05 Nov, 2013 1 commit


Morten Welinder authored

 03 Nov, 2013 1 commit


Morten Welinder authored
Basically replace sin(x*Pi) with sin(fmod(x,2)*Pi) because the argument reduction in the latter case can be done with no loss of accuracy.

 02 Nov, 2013 6 commits


Morten Welinder authored

Morten Welinder authored
When we saw an assignment we could not handler, such as "f := PosInf_d;", we used to just keep the previous value of f. That's no good.

Morten Welinder authored

Morten Welinder authored
Gamma(171.5) is fine, but computation would overflow.

Morten Welinder authored

Morten Welinder authored

 31 Oct, 2013 6 commits


Morten Welinder authored
This goes slightly insane by tabulating 0! through 50000! in the form of a quad precision mantissa [0.5;1[ and a power of 2. That, in turn, makes things like combin fairly easy and spot on.

Morten Welinder authored

Morten Welinder authored
Perl mistakes 0.1530e305 for zero. Work around that.

Morten Welinder authored
This also fixes R.QCHISQ which is defined in terms of R.QGAMMA. As one goes far into the tail of any cdf, it will become constant (in terms of distinct floating point values) for larger and larger stretches. Anything based on inverting the cdf therefore will get accuracy problems.

Morten Welinder authored

Morten Welinder authored
