{"action":"created","issue":{"url":"https://api.github.com/repos/JuliaDSP/Wavelets.jl/issues/43","repository_url":"https://api.github.com/repos/JuliaDSP/Wavelets.jl","labels_url":"https://api.github.com/repos/JuliaDSP/Wavelets.jl/issues/43/labels{/name}","comments_url":"https://api.github.com/repos/JuliaDSP/Wavelets.jl/issues/43/comments","events_url":"https://api.github.com/repos/JuliaDSP/Wavelets.jl/issues/43/events","html_url":"https://github.com/JuliaDSP/Wavelets.jl/issues/43","id":344127086,"node_id":"MDU6SXNzdWUzNDQxMjcwODY=","number":43,"title":"Wavelet filter definitions","user":{"login":"ElOceanografo","id":1072448,"node_id":"MDQ6VXNlcjEwNzI0NDg=","avatar_url":"https://avatars3.githubusercontent.com/u/1072448?v=4","gravatar_id":"","url":"https://api.github.com/users/ElOceanografo","html_url":"https://github.com/ElOceanografo","followers_url":"https://api.github.com/users/ElOceanografo/followers","following_url":"https://api.github.com/users/ElOceanografo/following{/other_user}","gists_url":"https://api.github.com/users/ElOceanografo/gists{/gist_id}","starred_url":"https://api.github.com/users/ElOceanografo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ElOceanografo/subscriptions","organizations_url":"https://api.github.com/users/ElOceanografo/orgs","repos_url":"https://api.github.com/users/ElOceanografo/repos","events_url":"https://api.github.com/users/ElOceanografo/events{/privacy}","received_events_url":"https://api.github.com/users/ElOceanografo/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2018-07-24T17:11:34Z","updated_at":"2018-08-08T22:51:43Z","closed_at":null,"author_association":"NONE","body":"Implementing https://github.com/JuliaDSP/Wavelets.jl/pull/42, I noticed filter definitions are different in this package than in at least one other wavelet package I've used (`wmtsa` in R).  The code below plots the equivalently-named wavelets from these two packages.\r\n\r\n```julia\r\nusing Wavelets\r\nusing Plots\r\nusing RCall; R\"library(wmtsa)\"\r\n\r\njulia_wavelets = [:coif6, :db2, :db4, :db6, :db8, :db10, :haar, :sym4, :sym6, :sym8]\r\nr_wavelets = [\"c6\", \"d2\", \"d4\", \"d6\", \"d8\", \"d10\", \"haar\", \"s4\", \"s6\", \"s8\"]\r\n\r\nsubplots = []\r\nfor (wj, wr) in zip(julia_wavelets, r_wavelets)\r\n    hr = Array(reval(\"wavDaubechies('$wr')\")[:wavelet])\r\n    gr = Array(reval(\"wavDaubechies('$wr')\")[:scaling])\r\n    p = plot(hr, color=:pink, label=\"Wavelet (R)\", \r\n        title=\"Julia: $(String(wj)), R: $wr\", \r\n        background_color_legend=:transparent, size=(600, 1000))\r\n    plot!(p, gr, color=:red, label=\"Scaling (R)\")\r\n\r\n    g, h = @eval WT.makeqmfpair(wavelet(WT.$wj))\r\n    plot!(p, h, color=:lightblue, label=\"Wavelet (Julia)\")\r\n    plot!(p, g, color=:blue, label=\"Scaling (Julia)\")\r\n    push!(subplots, p)\r\nend\r\nplot(subplots..., layout=(5,2))\r\n```\r\n![wavelet_filters](https://user-images.githubusercontent.com/1072448/43154626-d584bb88-8f29-11e8-89b9-f2d1fd905a9f.png)\r\n\r\nThis may just be a Pepsi/Coke problem with slightly different definitions, but it seemed worth double-checking."},"comment":{"url":"https://api.github.com/repos/JuliaDSP/Wavelets.jl/issues/comments/411578674","html_url":"https://github.com/JuliaDSP/Wavelets.jl/issues/43#issuecomment-411578674","issue_url":"https://api.github.com/repos/JuliaDSP/Wavelets.jl/issues/43","id":411578674,"node_id":"MDEyOklzc3VlQ29tbWVudDQxMTU3ODY3NA==","user":{"login":"gummif","id":7014479,"node_id":"MDQ6VXNlcjcwMTQ0Nzk=","avatar_url":"https://avatars3.githubusercontent.com/u/7014479?v=4","gravatar_id":"","url":"https://api.github.com/users/gummif","html_url":"https://github.com/gummif","followers_url":"https://api.github.com/users/gummif/followers","following_url":"https://api.github.com/users/gummif/following{/other_user}","gists_url":"https://api.github.com/users/gummif/gists{/gist_id}","starred_url":"https://api.github.com/users/gummif/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gummif/subscriptions","organizations_url":"https://api.github.com/users/gummif/orgs","repos_url":"https://api.github.com/users/gummif/repos","events_url":"https://api.github.com/users/gummif/events{/privacy}","received_events_url":"https://api.github.com/users/gummif/received_events","type":"User","site_admin":false},"created_at":"2018-08-08T22:51:43Z","updated_at":"2018-08-08T22:51:43Z","author_association":"CONTRIBUTOR","body":"I have begun writing down the mathematics (based on Mallat). I then need to verify that it corresponds to the actual implementation. \r\n\r\nSomething to think about is whether it makes sense to allow the user to specify the filter convention to use, for possible consistency and interoperability with other packages."}}
{"actor":{"display_login":"gummif"}}