Sparse matrix problem when trying to creating a `BasisMatrix` object

オープン
#65 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
35/100
issue の種類
バグ
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
julia
領域
backend

調査の方向性

jupyter-notebooks/BasisMatrices_demo.ipynb で失敗している BasisMatrix の構築から始め、スタックを src/util.jl の 625 行目と 643 行目まで追跡し、続いて src/basis_structure.jl の 149 行目と 246 行目まで追跡してください。Julia 1.8.5 で SparseMatrixCSC エラーを再現し、報告されたエラーなしでデモが BasisMatrix を構築できるようにするにはどの変更が必要かを特定してください。

索引モデルが issue の本文から書いたものです。

説明

Argument error:illegal buffers for sparsematrixcsc when creating a BasisMatrix object

julia> versioninfo() Julia Version 1.8.5 Commit 17cfb8e65e (2023-01-08 06:45 UTC) Platform Info: OS: Windows (x86_64-w64-mingw32) CPU: 8 × Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz WORD_SIZE: 64 LIBM: libopenlibm LLVM: libLLVM-13.0.1 (ORCJIT, skylake) Threads: 1 on 8 virtual cores Environment: JULIA_PKG_SERVER = https://mirrors.bfsu.edu.cn/julia JULIA_EDITOR = code JULIA_NUM_THREADS =

When trying to replicate the example in the demo example, I got

`ArgumentError: Illegal buffers for SparseMatrixCSC construction 270
Stacktrace:
[1] SparseMatrixCSC
@ C:\Users\lenovo\AppData\Local\Programs\Julia-1.8.5\share\julia\stdlib\v1.8\SparseArrays\src\sparsematrix.jl:29 [inlined]
[2] SparseArrays.SparseMatrixCSC(m::Int64, n::Int64, colptr::Vector{Int64}, rowval::Vector{Int64}, nzval::Vector{Float64})
@ SparseArrays C:\Users\lenovo\AppData\Local\Programs\Julia-1.8.5\share\julia\stdlib\v1.8\SparseArrays\src\sparsematrix.jl:44
[3] _allocate_row_kron_out(#unused#::Type{SparseArrays.SparseMatrixCSC}, A::Matrix{Float64}, B::SparseArrays.SparseMatrixCSC{Float64, Int64})
@ BasisMatrices C:\Users\lenovo.julia\packages\BasisMatrices\PZ1uM\src\util.jl:625
[4] _allocate_row_kron_out
@ C:\Users\lenovo.julia\packages\BasisMatrices\PZ1uM\src\util.jl:643 [inlined]
[5] row_kron(A::Matrix{Float64}, B::SparseArrays.SparseMatrixCSC{Float64, Int64})
@ BasisMatrices C:\Users\lenovo.julia\packages\BasisMatrices\PZ1uM\src\util.jl:33
[6] convert(::Type{Expanded}, bs::BasisMatrix{Direct, AbstractMatrix{Float64}}, order::Matrix{Int64})
@ BasisMatrices C:\Users\lenovo.julia\packages\BasisMatrices\PZ1uM\src\basis_structure.jl:149
[7] BasisMatrix
@ C:\Users\lenovo.julia\packages\BasisMatrices\PZ1uM\src\basis_structure.jl:246 [inlined]
[8] BasisMatrix(basis::Basis{2, Tuple{SplineParams{Vector{Float64}}, ChebParams{Float64}}}, tbm::Expanded, x::Matrix{Float64}, order::Int64)
@ BasisMatrices C:\Users\lenovo.julia\packages\BasisMatrices\PZ1uM\src\basis_structure.jl:304
[9] top-level scope
@ c:\Users\lenovo\Documents\Julia\NumericalMethods\jupyter-notebooks\BasisMatrices_demo.ipynb:1
UndefVarError: Φ not defined

Stacktrace:
[1] top-level scope
@ c:\Users\lenovo\Documents\Julia\NumericalMethods\jupyter-notebooks\BasisMatrices_demo.ipynb:6
UndefVarError: c not defined

Stacktrace:
[1] top-level scope
@ c:\Users\lenovo\Documents\Julia\NumericalMethods\jupyter-notebooks\BasisMatrices_demo.ipynb:7`

How could I fix this problem, Thank you.

主要言語
Julia
スター
33
フォーク
20
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

QuantEcon/BasisMatrices.jl のほかの issue

QuantEcon/BasisMatrices.jl の issue をすべて見る

似ている issue

Julia の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。