Comments (3)
Moreover, the partial interface change was bad because now similar functions don't behave similarly:
julia> jac2jac(X, 0, 0, -0.5, -0.5)[:,2] == jac2jac(X[:,2], 0, 0, -0.5, -0.5)
true
julia> leg2cheb(X)[:,2] == leg2cheb(X[:,2])
false
from fasttransforms.jl.
We could change it to use lib_leg2cheb
if the dimensions are very small. But when the dimensions are large the plan_leg2cheb
is so slow its unusable:
julia> n = 100_000; x = randn(n); @time cheb2leg(x);
1.184869 seconds (50.38 k allocations: 74.845 GiB, 22.38% gc time, 5.08% compilation time)
julia> n = 100_000; x = randn(n); @time (p = plan_cheb2leg(x); p*x)
44.783364 seconds (53.23 k allocations: 3.302 MiB, 0.06% compilation time)
from fasttransforms.jl.
Maybe for now with matrices we default to libfasttransforms since we aren't going to make it to n = 100k
and leave the 1D transforms as Toeplitz dot Hankel?
from fasttransforms.jl.
Related Issues (20)
- Remove DSP dependency HOT 4
- Should multiplication of `FTPlan` take `StridedArray`s as arguments instead of `Array`s? HOT 1
- Move Chebyshev functionality to Chebyshevtransforms.jl
- What algorithm does cheb2leg() use? HOT 2
- Potentially suboptimal performance in r2r transforms? HOT 1
- sph methods slow? HOT 4
- Chebyshev transforms do not work with the FFTW v1.6. HOT 2
- Add a slow path in ultra2ultra transforms?
- Reduction in accuracy in `cheb2leg ∘ leg2cheb` on v0.15 HOT 4
- Regression in `ultra2ultra` with identical orders HOT 1
- Write test for Normalization in `cheb2leg` and `leg2cheb` HOT 4
- `cheb2ultra` seems unreasonably slow HOT 2
- Julia rewrite of libFastTransforms HOT 2
- Use Toeplitz-dot-Hankel for very large dimensional transforms HOT 4
- Add multidimensional interface for lib transforms HOT 3
- Avoid reexporting dependencies?
- Move out forwardrecurrence and clenshaw
- Segmentation fault for spherical harmonic transform HOT 5
- cheb2leg gives negatives for odd polynomials HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fasttransforms.jl.