Julia中@expression语句中的自引用

时间:2017-12-13 16:47:36

标签: mathematical-optimization julia-jump

我仍然是朱莉娅的新手,但我想知道是否有办法在JuMP中的@expression语句中进行自我引用。

例如,我希望能够发表这样的声明:

n = 3 @expression(model_opt, D[i=1:9], i>n ? D[i-n] : i)

将定义矢量D如下

D = [1 2 3 1 2 3 1 2 3]

但目前朱莉娅只是告诉我D不知道

UndefVarError: D not defined

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

欢迎来到朱莉娅,你可以去乘车。不,那是不受支持的。您可以改为编写for循环:

D = []
n = 3
for i in 1:9
    push!(D, @expression(model_opt, i>n ? D[i-n] : i))
end