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

Feature Request: Symlet16 #1

Open
M-Colley opened this issue Dec 16, 2024 · 8 comments
Open

Feature Request: Symlet16 #1

M-Colley opened this issue Dec 16, 2024 · 8 comments
Assignees
Labels
enhancement New feature or request

Comments

@M-Colley
Copy link

Hey there, thank you for your nice package!

I was wondering whether you could also implement the symlet16 version?

That would be really helpful for me.

Kind regards

@graetz23
Copy link
Owner

Hi there,

many thanks, you are welcome.

Sure, do you have the coefficients or a function / formula to great those?

best
Chris

@M-Colley
Copy link
Author

This is the most challenging part - I have failed to find that. Where did you find the coefficients for the previous ones?

Maybe I can renew my search from there.

Kind regards

@M-Colley
Copy link
Author

I did find these: https://www.continuummechanics.org/wavedaubcoefs.html

However, I am not sure whether they are adequate.

@M-Colley
Copy link
Author

Maybe these are actually correct?

https://github.com/PyWavelets/pywt/blob/cf622996f3f0dedde214ab696afcd024660826dc/pywt/_extensions/c/wavelets_coeffs.template.h#L1677

static const TYPE CAT(sym16_, TYPE)[32] = {
-1.0797982104319795e-005, -5.3964831793152419e-006, 0.00016545679579108483, 3.656592483348223e-005, -0.0013387206066921965, -0.00022211647621176323, 0.0069377611308027096, 0.001359844742484172, -0.024952758046290123, -0.0035102750683740089, 0.078037852903419913, 0.03072113906330156, -0.15959219218520598, -0.054040601387606135, 0.47534280601152273, 0.75652498787569711, 0.39712293362064416, -0.034574228416972504, -0.066983049070217779, 0.032333091610663785, 0.0048692744049046071, -0.031051202843553064, -0.0031265171722710075, 0.012666731659857348, 0.00071821197883178923, -0.0038809122526038786, -0.0001084456223089688, 0.00085235471080470952, 2.8078582128442894e-005, -0.00010943147929529757, -3.1135564076219692e-006, 6.2300067012207606e-006
};

If so, it might be great to add the additional symlets that are currently missing as well?

Kind regards

@graetz23
Copy link
Owner

Hi,

sorry for the delay, the holidays are busy :-)

I can give those a try, let me check, hope it's ok by some days?

best
Christian

@M-Colley
Copy link
Author

Hi, no worries at all - I am very grateful for that - happy holidays :)

Kind regards
Mark

@graetz23
Copy link
Owner

@M-Colley I have added it by copying your supported coefficients from pywavelets ..

I quickly make an executable project in a sub folder and have that in an extra branch for teting the precision. However, you can give it already a try :-)

Merry Christmas
Christian

@graetz23
Copy link
Owner

Hi Mark,

the rounding error is smaller than: 1e-14, so the Symlet16 works fine by the methods of Main.

Let me know if it works for you too.

best & a merry Christmas
Christian

@graetz23 graetz23 self-assigned this Dec 29, 2024
@graetz23 graetz23 added the enhancement New feature or request label Dec 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants