In some code I'm writing I have inner loops which, amongst other things, translate spherical coordinates into Cartesian.
I notice that the inner loop is a *lot* faster if I change the code to use tuples. This makes sense, but when I use tuples I can't use the maths operators and functions that I can with vectors. Is there some package which provides these functions for tuples or, alternatively, which offers alternative implementations of efficient fixed-length vectors? The code is rll2xyz(r, θ, ϕ) = let cosθ = cos(θ) [r * cosθ * cos(ϕ), r * cosθ * sin(ϕ), r * sin(θ)] # slower version end vs rll2xyz(r, θ, ϕ) = let cosθ = cos(θ) (r * cosθ * cos(ϕ), r * cosθ * sin(ϕ), r * sin(θ)) # faster version end
