LinearAlgebra.jl icon indicating copy to clipboard operation
LinearAlgebra.jl copied to clipboard

Results 100 LinearAlgebra.jl issues
Sort by recently updated
recently updated
newest added

I've added an implementation of syrk/herk for generic types, in order to avoid falling back to `_generic_matmatmul!`, as it's rather slow. I didn't do anything fancy, no multithreading or anything,...

Looking at the recent runs, the docs job (e.g. https://github.com/JuliaLang/LinearAlgebra.jl/actions/runs/13954106194/job/39060797306?pr=1245) fails with a `ProcessSignaled(11)`, as do the buildkite jobs (https://buildkite.com/julialang/linearalgebra-dot-jl/builds/367#0195afad-9bf0-4e14-8043-b5d765b9ca8d) which fail with a `ProcessExitedException`.

Currently, we implement `eigvecs(A, eigvals)` only for real `SymTridiagonal` matrices, but it would be easy to extend this to Hermitian matrices via a Hessenberg factorization as explained in [this discourse...

enhancement
good first issue

The herk wrapper was testing whether `C` was symmetric instead of Hermitian, thus preventing the dispatch from occurring for essentially all nonzero `β`.

The fallback methods for `AbstractArray`s already handle these cases.

The current implementation `diag(::Diagonal, k=0)`, for the sake of type stability, returns a `Vector` even when `D.diag` is lazy. ```julia julia> diag(Diagonal(1:5)) 5-element Vector{Int64}: 1 2 3 4 5 ```...

Currently, copying `Symmetric`/`Hermitian` matrices with mismatched `uplo`s might access unset indices. In this PR, we fix this by ensuring that we always use `copytrito!`, and only access the triangular half...

This should make each branch in `applytri` return the same type, as the `UpperTriangular` or `LowerTriangular` wrapper will be removed.

Currently, `mul!(c::AbstractVector, A::AbstractMatrix, b::AbstractVector)` is computed (schematically) as ```julia c .= 0 # zero of the correct type for y in eachcol(A .* permutedims(b)) c .+= y end ``` Filling...

This fixes issues like ```julia julia> A = fill(@SMatrix(zeros(2,2)), 4, 0) 4×0 Matrix{SMatrix{2, 2, Float64, 4}} julia> v = fill(@SMatrix(zeros(2,2)), size(A,2)) SMatrix{2, 2, Float64, 4}[] julia> A * v ERROR:...