I'm pleased to announce the new package FastTransforms.jl available here:

https://github.com/MikaelSlevinsky/FastTransforms.jl

The aim of this package is to provide a new class of fast transforms based 
on the use of asymptotic formulae to relate the transforms to a small 
number of fast Fourier transforms. This new class of fast transforms does 
not require large pre-computation for fast execution, and they are designed 
to work on expansions of functions with any degree of regularity.

Version v0.0.1 implements the Chebyshev–Jacobi transform and its inverse. 
For details on the algorithm, see:

http://arxiv.org/abs/1602.02618.

The transform is based on the fast and accurate numerical evaluation of 
Jacobi expansions at the Chebyshev–Lobatto points. This allows the fast 
conversion of Chebyshev expansion coefficients to Jacobi expansion 
coefficients and back. Convert between as many as one million Jacobi 
coefficients with parameters (α,β) ∈ (-1/2,1/2]^2 to Jacobi coefficients 
with parameters (γ,δ) ∈ (-1/2,1/2]^2 with high absolute accuracy in a 
little over two minutes!
julia> using FastTransforms

julia> @time jjt(rand(1_000_001),0.1,0.2,0.3,0.4);
128.491023 seconds (534 allocations: 534.084 MB)

If the Jacobi parameters (α,β) are not significantly beyond the half-open 
square (-1/2,1/2]^2, then increment and decrement operators are used to 
pre- and post-process the fast transform with linear complexity (and linear 
conditioning) in the degree.

Reply via email to