Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

long double in arguments and return value #3

Open
yanovich opened this issue Apr 28, 2020 · 2 comments
Open

long double in arguments and return value #3

yanovich opened this issue Apr 28, 2020 · 2 comments

Comments

@yanovich
Copy link

Great job done, first of all!

I would like to suggest an improvement. If k is close to 1.0, elliptic functions become difficult to calculate. It seems that K(k) is limited to ~70 in practice. Having 128bit floating point values will allow far greater values of K(k).

@Dsplib
Copy link
Owner

Dsplib commented May 1, 2020

Thanks!
Need to research 64 and 128 bits influence to the elliptic functions calculation accuracy. I have compared elliptic IIR filters which was calculated in "double" and I have close accuracy corrssponds to Matlab, Python and Octave realization.

@rat-and-catcher
Copy link

rat-and-catcher commented Jul 23, 2023

Its an issue. The Hi-Q (extremely low transition width) IIR elliptic coefficients (filter order 19-20) looks inexactly. The gcc __float128 looks good for the case; but GNU MPFR looks just more good (is 500+dB real? :). Btw, it seems, that Matlab, Python and Octave uses double 64-bit float by default, so the result looks same.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants