我正在尝试将Julia用于某些线性代数.该文档列出了许多适合处理矩阵的函数.其中一些直接用于运行Julia,例如
julia> ones(2,2)
2×2 Array{Float64,2}:
1.0 1.0
1.0 1.0
Run Code Online (Sandbox Code Playgroud)
而其他人给出一个UndefVarError例子
julia> eye(2,2)
ERROR: UndefVarError: eye not defined
Stacktrace:
[1] top-level scope at none:0
Run Code Online (Sandbox Code Playgroud)
为什么我只能访问线性代数部分列出的一些函数?https://michaelhatherly.github.io/julia-docs/en/latest/stdlib/linalg.html#Base.LinAlg.expm
我也试过导入LinearAlgebra包但这没有什么区别:
julia> using LinearAlgebra
julia> eye(2,2)
ERROR: UndefVarError: eye not defined
Stacktrace:
[1] top-level scope at none:0
Run Code Online (Sandbox Code Playgroud)
事实上,现在有些功能可用,例如dot,根据文档的其他功能也是线性代数库的一部分继续发出错误:
julia> dot
ERROR: UndefVarError: dot not defined
julia> using LinearAlgebra
julia> dot
dot (generic function with 12 methods)
julia> vecdot
ERROR: UndefVarError: vecdot not defined
Run Code Online (Sandbox Code Playgroud)
上述两个功能都Base.LinAlg.dot在文档中列出.
我目前安装的软件包是:
(v1.0) pkg> status
Status `~/.julia/environments/v1.0/Project.toml`
[0c46a032] DifferentialEquations v5.3.1
[7073ff75] IJulia v1.13.0
[91a5bcdd] Plots v0.21.0
[37e2e46d] LinearAlgebra
[2f01184e] SparseArrays
Run Code Online (Sandbox Code Playgroud)
线性代数页面上讨论的许多其他函数会出现此问题:
julia> repmat([1, 2, 3], 2)
ERROR: UndefVarError: repmat not defined
Stacktrace:
[1] top-level scope at none:0
Run Code Online (Sandbox Code Playgroud)
我安装了Julia vs1.01