Julia中的线性代数

218*_*218 0 julia

我正在尝试将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

Chr*_*kas 8

您链接到的文档不是官方文档,可在docs.julialang.org上找到.您链接到的文档是某个开发人员网站上的旧版本.这就是为什么它不符合当前的朱莉娅的原因.