@polyvar 未定义,使用 MultivariatePolynomials 时
@polyvar not defined, when using MultivariatePolynomials
当尝试编译下面的代码(来自 here)时,我被告知“@polyvar 未定义”。我正在使用 Julia v.0.6
using MultivariatePolynomials
@polyvar(x[1:2])
p = 2x[1] + 3x[1]x[2]^2 + x[2] + 3
differentiate(p, x[1])
p([1,2], x)
消息:UndefVarError:@polyvar 未定义。
请问有什么问题吗?
包中可能最近发生了变化,现在看来 @polyvar
定义在 TypedPolynomials 包中,而 MultivariatePolynomials 定义了一个公共接口,TypedPolynomials 是它的一个实现。所以,
# install TypedPolynomials
Pkg.clone("https://github.com/rdeits/TypedPolynomials.jl")
using MultivariatePolynomials
using TypedPolynomials
应该解决的问题:
julia> @polyvar(x[1:2])
(x1, x2)
julia> p = 2x[1] + 3x[1]x[2]^2 + x[2] + 3
3x1x2^2 + 2x1 + x2 + 3
并且您想将最后一行更改为:
julia> p(x=>[1,2])
19
当尝试编译下面的代码(来自 here)时,我被告知“@polyvar 未定义”。我正在使用 Julia v.0.6
using MultivariatePolynomials
@polyvar(x[1:2])
p = 2x[1] + 3x[1]x[2]^2 + x[2] + 3
differentiate(p, x[1])
p([1,2], x)
消息:UndefVarError:@polyvar 未定义。
请问有什么问题吗?
包中可能最近发生了变化,现在看来 @polyvar
定义在 TypedPolynomials 包中,而 MultivariatePolynomials 定义了一个公共接口,TypedPolynomials 是它的一个实现。所以,
# install TypedPolynomials
Pkg.clone("https://github.com/rdeits/TypedPolynomials.jl")
using MultivariatePolynomials
using TypedPolynomials
应该解决的问题:
julia> @polyvar(x[1:2])
(x1, x2)
julia> p = 2x[1] + 3x[1]x[2]^2 + x[2] + 3
3x1x2^2 + 2x1 + x2 + 3
并且您想将最后一行更改为:
julia> p(x=>[1,2])
19