StaticArrays.jl
StaticArrays.jl copied to clipboard
Statically sized arrays for Julia
As described in https://github.com/JuliaLang/julia/issues/49472, using StaticArrays.jl with Julia v1.9 and `--check-bounds=no` causes the `SVector` constructor to be type unstable even for the simplest invocations. To reproduce, start Julia v1.9 (RC1...
Allocations for MArray in an accumulation loop are inconsistent (depend on `@inbounds` and loop order) ```julia function accum1(L, ::Val{N}) where {N} acc = zero(MVector{N,Float64}) for i ∈ 1:L for n...
There are currently no in-place implementations for lu factorization and ldiv when using mutable matrices/vectors (MMatrix and MVector). This currently causes errors when using a stiff ODE solvers with the...
Calculating the eigenvectors of a 3x3 matrix analytically is simple and fast. It seems to be 7.5x faster than the current algorithm. The analytical approach also handles complex Hermitean cases....
Instead of unrolling the whole loop in the reduction, we can just keep the loop and let LLVM do its job with loop unrolling (since the number of loop iterations...
Hi, I noticed that mixed-type multiplication (e.g. `*(::SMatrix, ::Matrix)`) is slow. I searched the issues but didn't find one that mentions this. For example: ``` julia> SA = @SMatrix randn(3,3);...
MWE: ```Julia using LinearAlgebra using StaticArrays my_matrix = [ 23.839174539658693 243552.4933521217 1.8416855269559405e9 7262.007338486136 -0.15093214378094674 -0.08311979038696746; 243552.4933521217 2.962601669841655e9 1.565059094802e13 7.454589007612145e7 -1822.7229289215243 -703.6834309479851; 1.8416855269559405e9 1.565059094802e13 1.852842171814476e17 5.52741246224e11 -9.820212598493524e6 -8.437622282150278e6; 7262.007338486136 7.454589007612145e7 5.52741246224e11...
It seems that the macros `@SArray` and `@MArray` cannot handle `rand` with a specified random number generator, i.e. the following errors: ``` julia> rng = Xoshiro(1) Xoshiro(0xfff0241072ddab67, 0xc53bc12f4c3f0b4e, 0x56d451780b2dd4ba, 0x50a4aa153d208dd8)...
Most of these were invalid uses of `@pure` and almost all of the rest were unnecessary.
I'm probably missing a detail since I'm not super familiar with this code base, but whats the reasoning behind all the use of `arithmetic_closure` ? E.g. for determinant we have:...