Jishnu Bhattacharya
Jishnu Bhattacharya
```julia julia> using LazyArrays, LinearAlgebra julia> Q = qr(rand(3,4)).Q; julia> cache(Q) ERROR: MethodError: no method matching similar(::LinearAlgebra.QRCompactWYQ{Float64, Matrix{Float64}, Matrix{Float64}}, ::Tuple{Int64, Int64}) Closest candidates are: similar(::JuliaInterpreter.Compiled, ::Any) @ JuliaInterpreter ~/.julia/packages/JuliaInterpreter/EsH1r/src/types.jl:7 similar(::Type{T},...
The equality need not hold, as floating-point results may change by a few ULP across Julia versions. Using `isapprox` is the more reasonable choice. This gets tests working on the...
With this, ```julia julia> v = OneElement(10, 3, 4) 4-element OneElement{Int64, 1, Tuple{Int64}, Tuple{Base.OneTo{Int64}}}: ⋅ ⋅ 10 ⋅ julia> zero(v) 4-element Zeros{Int64} julia> v + zero(v) isa typeof(v) true ```
This allows `O(1)` checks for the bandedness of a `OneElement`. ```julia julia> A = OneElement(3, (20,20), (20,20)); julia> @btime isdiag($A); 542.590 ns (0 allocations: 0 bytes) # master 3.382 ns...
Since an `AbstractFill` is by definition filled with values, we may short-circuit `isassigned`: ```julia julia> F = Fill(3, 100, 100); julia> @btime isassigned($(Ref(F))[], 1, 1) 24.297 ns (0 allocations: 0...
After this, ```julia julia> using FillArrays, StaticArrays, LinearAlgebra julia> A = [SMatrix{2,3}(1:6)*(i+j) for i in 1:3, j in 1:2] 3×2 Matrix{SMatrix{2, 3, Int64, 6}}: [2 6 10; 4 8 12]...
This adds a public function to query the index at which a `OneElement` contains a non-zero value. ```julia julia> O = OneElement(3, (1,2), (4,5)) 4×5 OneElement{Int64, 2, Tuple{Int64, Int64}, Tuple{Base.OneTo{Int64},...
In certain simple (yet frequently encountered) vector indexing operations, we may use the fact that a slice of a `OneElement` returns a `OneElement`: ```julia julia> A = OneElement(2, (2,3), (4,5))...
On master, ```julia julia> [1,2]' * Zeros(2,2) 1×2 Zeros{Float64} ``` After this PR, ```julia julia> [1,2]' * Zeros(2,2) 1×2 adjoint(::Zeros{Float64, 1, Tuple{Base.OneTo{Int64}}}) with eltype Float64: ⋅ ⋅ ``` This matches...
Following the suggestion in https://github.com/JuliaArrays/FillArrays.jl/pull/303#discussion_r1377218507 and following https://github.com/JuliaStats/LogExpFunctions.jl/pull/63