JuliaApproximation / JuliaApproximation/FastTransforms.jl
fast hermite transform?
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 281
- Forks
- 27
- PR merge metrics
- No merged PRs in 30d
Description
I was talking to @dlfivefifty over at ApproxFun.jl where they have an implementation of the hermite transform using gausshermite quadrature. While this is clearly a reliable choice, is there any scope for implementing an O(N*logN) (i.e. faster than O(N^2)) method as described in
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2630232/#!po=88.5000
?
For band limited functions there is a factorization using recursion the relation, akin to FFT vs basic FT. I don't know it well enough to know how practical it is to implement. On the surface it appears an O(N*logN) method may be possible for any orthogonal polynomials with two-term recursion...
EDIT: it seems that the exact two-term recursion factorisation is numerically unstable, and in practice the transform is implemented as an approximate Hermite-Newton-Cotes transform on a linear grid. Probably my question should be closed here.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no repository files or tests. Start by reviewing the existing Gauss-Hermite implementation and the linked paper, then compare the proposed O(N*logN) approach with the numerical-stability concerns in the edit. Done would require a decided, practical implementation scope, but the author suggests closing the question.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100