首页 > 解决方案 > ArrayFire.jl 和 chol

问题描述

我在 Windows 10 机器上安装了 Julia-1.0.0,然后安装了ArrayFire.jl. 它似乎可以工作(生成随机数,并且 LU 分解似乎可以正常工作)。但是,chol据称未定义:

julia> cholesky_fact= chol(a * a')
ERROR: UndefVarError: chol not defined

同样的错误会阻止 benchmark.jl 运行。另一个基准(非负矩阵分解)也失败了,但出现了不同的错误(不足为奇):

julia> include("nmf_benchmark.jl")
ERROR: LoadError: UndefVarError: T not defined

任何智慧之言将不胜感激。

标签: packagejuliaarrayfire

解决方案


chol在 julia 1.0.0 中没有定义。它现在在LinearAlgebra名下cholesky

至于cholArrayFire 中为AFArrays 定义的,由于不再能够扩展cholJulia 中不存在的函数,包应该改为扩展函数或其cholesky函数。您可能想在GitHub 存储库上创建一个问题。exportcholArrayFire.jl

其他矩阵分解函数的名称也已更改。

您应该查看文档中的相应部分

如果您在迁移到 1.0 之前使用 julia 0.7.0 也会有所帮助。Julia 0.7 的功能等同于 1.0,但已弃用。

对于您的另一个问题,如果您可以使用生成错误的相应代码发布一个单独的问题会更好。


推荐阅读