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

IO error when elements in CSR mat come more than 50

Open deltaeecs opened this issue 4 years ago • 1 comments

code:

using SparseArrays, SparseMatricesCSR
aa = sprand(ComplexF64, 10, 10, 0.5)
bb = SparseMatrixCSR(transpose(aa))

output

10×10 SparseMatrixCSR{1, ComplexF64, Int64} with 53 stored entries:Error showing value of type SparseMatrixCSR{1, ComplexF64, Int64}: ERROR: MethodError: no method matching (::SparseMatricesCSR.var"#_format_line#4"{SparseMatrixCSR{1, ComplexF64, Int64}, IOContext{Base.TTY}})(::Int64, ::Int64, ::Int64, ::Int64) Closest candidates are: (::SparseMatricesCSR.var"#_format_line#4")(::Any, ::Any, ::Any, ::Any, ::Any) at C:\Users\12253.julia\packages\SparseMatricesCSR\kMj2e\src\SparseMatrixCSR.jl:278 Stacktrace: [1] _broadcast_getindex_evalf @ .\broadcast.jl:648 [inlined] [2] _broadcast_getindex @ .\broadcast.jl:621 [inlined] [3] getindex @ .\broadcast.jl:575 [inlined] [4] copy @ .\broadcast.jl:922 [inlined] [5] materialize @ .\broadcast.jl:883 [inlined] [6] show(io::IOContext{Base.TTY}, S::SparseMatrixCSR{1, ComplexF64, Int64}) @ SparseMatricesCSR ~.julia\packages\SparseMatricesCSR\kMj2e\src\SparseMatrixCSR.jl:314 [7] show(io::IOContext{Base.TTY}, #unused#::MIME{Symbol("text/plain")}, S::SparseMatrixCSR{1, ComplexF64, Int64}) @ SparseMatricesCSR ~.julia\packages\SparseMatricesCSR\kMj2e\src\SparseMatrixCSR.jl:269 [8] display(d::REPL.REPLDisplay{REPL.LineEditREPL}, mime::MIME{Symbol("text/plain")}, x::SparseMatrixCSR{1, ComplexF64, Int64}) @ OhMyREPL ~.julia\packages\OhMyREPL\07uNa\src\output_prompt_overwrite.jl:8 [9] display(d::REPL.REPLDisplay, x::Any) @ REPL C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\REPL\src\REPL.jl:225 [10] display(x::Any) @ Base.Multimedia .\multimedia.jl:328 [11] #invokelatest#2 @ .\essentials.jl:708 [inlined] [12] invokelatest @ .\essentials.jl:706 [inlined] [13] print_response(errio::IO, response::Any, show_value::Bool, have_color::Bool, specialdisplay::Union{Nothing, AbstractDisplay}) @ REPL C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\REPL\src\REPL.jl:247 [14] (::REPL.var"#40#41"{REPL.LineEditREPL, Pair{Any, Bool}, Bool, Bool})(io::Any) @ REPL C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\REPL\src\REPL.jl:231 [15] with_repl_linfo(f::Any, repl::REPL.LineEditREPL) @ REPL C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\REPL\src\REPL.jl:462 [16] print_response(repl::REPL.AbstractREPL, response::Any, show_value::Bool, have_color::Bool) @ REPL C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\REPL\src\REPL.jl:229 [17] (::REPL.var"#do_respond#61"{Bool, Bool, REPL.var"#72#82"{REPL.LineEditREPL, REPL.REPLHistoryProvider}, REPL.LineEditREPL, REPL.LineEdit.Prompt})(s::REPL.LineEdit.MIState, buf::Any, ok::Bool) @ REPL C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\REPL\src\REPL.jl:798 [18] #invokelatest#2 @ .\essentials.jl:708 [inlined] [19] invokelatest @ .\essentials.jl:706 [inlined] [20] run_interface(terminal::REPL.Terminals.TextTerminal, m::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState) @ REPL.LineEdit C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\REPL\src\LineEdit.jl:2441 [21] run_frontend(repl::REPL.LineEditREPL, backend::REPL.REPLBackendRef) @ REPL C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\REPL\src\REPL.jl:1126 [22] (::REPL.var"#44#49"{REPL.LineEditREPL, REPL.REPLBackendRef})()
@ REPL .\task.jl:406

At the same time the CSR array could be successfully indexed. bb[1, 1] 0.6073110473804666 + 0.38473666513320603im

status

      Status `C:\Users\delta\.julia\environments\v1.6\Project.toml`
  [6e4b80f9] BenchmarkTools v0.7.0
  [052768ef] CUDA v2.6.3
  [150eb455] CoordinateTransformations v0.6.1
  [442a2c76] FastGaussQuadrature v0.4.7
  [42fd0dbc] IterativeSolvers v0.9.0
  [5fb14364] OhMyREPL v0.5.10
  [14b8a8f1] PkgTemplates v0.7.16
  [f0f68f2c] PlotlyJS v0.14.1
  [91a5bcdd] Plots v1.11.2
  [92933f4c] ProgressMeter v1.5.0
  [6038ab10] Rotations v1.0.2
  [90137ffa] StaticArrays v1.1.0
  [b189fb0b] ThreadPools v1.2.1
Julia Version 1.6.0
Commit f9720dc2eb (2021-03-24 12:55 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-11.0.1 (ORCJIT, skylake)
Environment:
  JULIA_PKG_SERVER = https://mirrors.bfsu.edu.cn/julia

deltaeecs avatar Apr 14 '21 15:04 deltaeecs

julia> using SparseMatricesCSR
[ Info: Precompiling SparseMatricesCSR [a0a7dd2c-ebf4-11e9-1f05-cf50bc540ca1]

julia> using SparseArrays

julia> SparseMatrixCSR(transpose(spdiagm(1=>ones(10))))
11×11 SparseMatrixCSR{1, Float64, Int64} with 10 stored entries:Error showing value of type SparseMatrixCSR{1, Float64, Int64}:
ERROR: MethodError: no method matching (::SparseMatricesCSR.var"#_format_line#4"{SparseMatrixCSR{1, Float64, Int64}, IOContext{Base.TTY}})(::Int64, ::Int64, ::Int64, ::Int64)
Closest candidates are:
  (::SparseMatricesCSR.var"#_format_line#4")(::Any, ::Any, ::Any, ::Any, ::Any) at ~/src/SparseMatricesCSR/src/SparseMatrixCSR.jl:342
Stacktrace:
  [1] _broadcast_getindex_evalf
    @ ./broadcast.jl:670 [inlined]
  [2] _broadcast_getindex
    @ ./broadcast.jl:643 [inlined]
  [3] getindex
    @ ./broadcast.jl:597 [inlined]
  [4] copy
    @ ./broadcast.jl:899 [inlined]
  [5] materialize
    @ ./broadcast.jl:860 [inlined]
  [6] show(io::IOContext{Base.TTY}, S::SparseMatrixCSR{1, Float64, Int64})
    @ SparseMatricesCSR ~/src/SparseMatricesCSR/src/SparseMatrixCSR.jl:378
  [7] show(io::IOContext{Base.TTY}, #unused#::MIME{Symbol("text/plain")}, S::SparseMatrixCSR{1, Float64, Int64})
    @ SparseMatricesCSR ~/src/SparseMatricesCSR/src/SparseMatrixCSR.jl:333
  [8] (::REPL.var"#43#44"{REPL.REPLDisplay{REPL.LineEditREPL}, MIME{Symbol("text/plain")}, Base.RefValue{Any}})(io::Any)
    @ REPL ~/.julia/juliaup/julia-1.8.5+0.x64.linux.gnu/share/julia/stdlib/v1.8/REPL/src/REPL.jl:267
  [9] with_repl_linfo(f::Any, repl::REPL.LineEditREPL)
    @ REPL ~/.julia/juliaup/julia-1.8.5+0.x64.linux.gnu/share/julia/stdlib/v1.8/REPL/src/REPL.jl:521
 [10] display(d::REPL.REPLDisplay, mime::MIME{Symbol("text/plain")}, x::Any)
    @ REPL ~/.julia/juliaup/julia-1.8.5+0.x64.linux.gnu/share/julia/stdlib/v1.8/REPL/src/REPL.jl:260
 [11] display(d::REPL.REPLDisplay, x::Any)
    @ REPL ~/.julia/juliaup/julia-1.8.5+0.x64.linux.gnu/share/julia/stdlib/v1.8/REPL/src/REPL.jl:272
 [12] display(x::Any)
    @ Base.Multimedia ./multimedia.jl:328
 [13] #invokelatest#2
    @ ./essentials.jl:729 [inlined]
 [14] invokelatest
    @ ./essentials.jl:726 [inlined]
 [15] print_response(errio::IO, response::Any, show_value::Bool, have_color::Bool, specialdisplay::Union{Nothing, AbstractDisplay})
    @ REPL ~/.julia/juliaup/julia-1.8.5+0.x64.linux.gnu/share/julia/stdlib/v1.8/REPL/src/REPL.jl:296
 [16] (::REPL.var"#45#46"{REPL.LineEditREPL, Pair{Any, Bool}, Bool, Bool})(io::Any)
    @ REPL ~/.julia/juliaup/julia-1.8.5+0.x64.linux.gnu/share/julia/stdlib/v1.8/REPL/src/REPL.jl:278
 [17] with_repl_linfo(f::Any, repl::REPL.LineEditREPL)
    @ REPL ~/.julia/juliaup/julia-1.8.5+0.x64.linux.gnu/share/julia/stdlib/v1.8/REPL/src/REPL.jl:521
 [18] print_response(repl::REPL.AbstractREPL, response::Any, show_value::Bool, have_color::Bool)
    @ REPL ~/.julia/juliaup/julia-1.8.5+0.x64.linux.gnu/share/julia/stdlib/v1.8/REPL/src/REPL.jl:276
 [19] (::REPL.var"#do_respond#66"{Bool, Bool, REPL.var"#77#87"{REPL.LineEditREPL, REPL.REPLHistoryProvider}, REPL.LineEditREPL, REPL.LineEdit.Prompt})(s::REPL.LineEdit.MIState, buf::Any, ok::Bool)
    @ REPL ~/.julia/juliaup/julia-1.8.5+0.x64.linux.gnu/share/julia/stdlib/v1.8/REPL/src/REPL.jl:857
 [20] #invokelatest#2
    @ ./essentials.jl:729 [inlined]
 [21] invokelatest
    @ ./essentials.jl:726 [inlined]
 [22] run_interface(terminal::REPL.Terminals.TextTerminal, m::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
    @ REPL.LineEdit ~/.julia/juliaup/julia-1.8.5+0.x64.linux.gnu/share/julia/stdlib/v1.8/REPL/src/LineEdit.jl:2510
 [23] run_frontend(repl::REPL.LineEditREPL, backend::REPL.REPLBackendRef)
    @ REPL ~/.julia/juliaup/julia-1.8.5+0.x64.linux.gnu/share/julia/stdlib/v1.8/REPL/src/REPL.jl:1248
 [24] (::REPL.var"#49#54"{REPL.LineEditREPL, REPL.REPLBackendRef})()
    @ REPL ./task.jl:484

vchuravy avatar Feb 28 '23 06:02 vchuravy