-
-
Notifications
You must be signed in to change notification settings - Fork 37
Closed
Description
I want to run an example in the docs:
julia> using LinearAlgebra
julia> A = SymTridiagonal(fill([1 2; 3 4], 3), fill([1 2; 3 4], 2))
3×3 SymTridiagonal{Matrix{Int64}, Vector{Matrix{Int64}}}:
Error showing value of type SymTridiagonal{Matrix{Int64}, Vector{Matrix{Int64}}}:
ERROR: MethodError: no method matching zero(::Type{Matrix{Int64}})
The function `zero` exists, but no method is defined for this combination of argument types.
Closest candidates are:
zero(::Type{Union{}}, Any...)
@ Base number.jl:310
zero(::Type{Missing})
@ Base missing.jl:104
zero(::Missing)
@ Base missing.jl:101
...
Stacktrace:
[1] getindex(A::SymTridiagonal{Matrix{Int64}, Vector{Matrix{Int64}}}, i::Int64, j::Int64)
@ LinearAlgebra ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/LinearAlgebra/src/tridiag.jl:457
[2] alignment(io::IOContext{…}, X::AbstractVecOrMat, rows::Vector{…}, cols::Vector{…}, cols_if_complete::Int64, cols_otherwise::Int64, sep::Int64, ncols::Int64)
@ Base ./arrayshow.jl:69
[3] _print_matrix(io::IOContext{…}, X::AbstractVecOrMat, pre::String, sep::String, post::String, hdots::String, vdots::String, ddots::String, hmod::Int64, vmod::Int64, rowsA::UnitRange{…}, colsA::UnitRange{…})
@ Base ./arrayshow.jl:207
[4] print_matrix(io::IOContext{…}, X::SymTridiagonal{…}, pre::String, sep::String, post::String, hdots::String, vdots::String, ddots::String, hmod::Int64, vmod::Int64)
@ Base ./arrayshow.jl:171
[5] print_matrix
@ ./arrayshow.jl:171 [inlined]
[6] print_array
@ ./arrayshow.jl:358 [inlined]
[7] show(io::IOContext{Base.TTY}, ::MIME{Symbol("text/plain")}, X::SymTridiagonal{Matrix{Int64}, Vector{Matrix{Int64}}})
@ Base ./arrayshow.jl:399
[8] (::REPL.var"#68#69"{REPL.REPLDisplay{REPL.LineEditREPL}, MIME{Symbol("text/plain")}, Base.RefValue{Any}})(io::Any)
@ REPL ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/REPL.jl:348
[9] with_repl_linfo(f::Any, repl::REPL.LineEditREPL)
@ REPL ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/REPL.jl:646
[10] display(d::REPL.REPLDisplay, mime::MIME{Symbol("text/plain")}, x::Any)
@ REPL ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/REPL.jl:334
[11] display
@ ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/REPL.jl:353 [inlined]
[12] display(x::Any)
@ Base.Multimedia ./multimedia.jl:340
[13] print_response(errio::IO, response::Any, show_value::Bool, have_color::Bool, specialdisplay::Union{…})
@ REPL ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/REPL.jl:0
[14] (::REPL.var"#70#71"{REPL.LineEditREPL, Pair{Any, Bool}, Bool, Bool})(io::Any)
@ REPL ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/REPL.jl:359
[15] with_repl_linfo(f::Any, repl::REPL.LineEditREPL)
@ REPL ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/REPL.jl:646
[16] print_response(repl::REPL.AbstractREPL, response::Any, show_value::Bool, have_color::Bool)
@ REPL ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/REPL.jl:357
[17] (::REPL.var"#do_respond#96"{…})(s::REPL.LineEdit.MIState, buf::Any, ok::Bool)
@ REPL ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/REPL.jl:988
[18] #invokelatest#2
@ ./essentials.jl:1054 [inlined]
[19] invokelatest
@ ./essentials.jl:1051 [inlined]
[20] run_interface(terminal::REPL.Terminals.TextTerminal, m::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
@ REPL.LineEdit ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/LineEdit.jl:2749
[21] run_frontend(repl::REPL.LineEditREPL, backend::REPL.REPLBackendRef)
@ REPL ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/REPL.jl:1456
[22] (::REPL.var"#75#81"{REPL.LineEditREPL, REPL.REPLBackendRef})()
@ REPL ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/REPL/src/REPL.jl:461
Some type information was truncated. Use `show(err)` to see complete types.
julia> A |> collect
ERROR: MethodError: no method matching zero(::Type{Matrix{Int64}})
The function `zero` exists, but no method is defined for this combination of argument types.
Closest candidates are:
zero(::Type{Union{}}, Any...)
@ Base number.jl:310
zero(::Type{Missing})
@ Base missing.jl:104
zero(::Missing)
@ Base missing.jl:101
...
Stacktrace:
[1] getindex
@ ~/.asdf/installs/julia/1.11.0/share/julia/stdlib/v1.11/LinearAlgebra/src/tridiag.jl:457 [inlined]
[2] _getindex
@ ./abstractarray.jl:1358 [inlined]
[3] getindex
@ ./abstractarray.jl:1312 [inlined]
[4] iterate
@ ./abstractarray.jl:1209 [inlined]
[5] copyto_unaliased!(deststyle::IndexLinear, dest::Matrix{Matrix{Int64}}, srcstyle::IndexCartesian, src::SymTridiagonal{Matrix{Int64}, Vector{Matrix{Int64}}})
@ Base ./abstractarray.jl:1088
[6] copyto!
@ ./abstractarray.jl:1061 [inlined]
[7] _collect_indices(indsA::Tuple{Base.OneTo{Int64}, Base.OneTo{Int64}}, A::SymTridiagonal{Matrix{Int64}, Vector{Matrix{Int64}}})
@ Base ./array.jl:723
[8] collect
@ ./array.jl:707 [inlined]
[9] |>(x::SymTridiagonal{Matrix{Int64}, Vector{Matrix{Int64}}}, f::typeof(collect))
@ Base ./operators.jl:926
[10] top-level scope
@ REPL[3]:1As you can see, I can neither show it nor collect it. Is this a bug or desired behavior?
System info:
julia> versioninfo()
Julia Version 1.11.0
Commit 501a4f25c2b (2024-10-07 11:40 UTC)
Build Info:
Official https://julialang.org/ release
Platform Info:
OS: macOS (arm64-apple-darwin22.4.0)
CPU: 16 × Apple M3 Max
WORD_SIZE: 64
LLVM: libLLVM-16.0.6 (ORCJIT, apple-m3)Metadata
Metadata
Assignees
Labels
No labels