我有一个数学模型,我希望使用随机生成的不同数据集自动运行10次(当第一个模型停止时,自动启动另一个模型)。为此,我在循环中编写了solve语句。我想在excel文件的不同表中看到这10个模型的结果。我该怎么做?有可能纠正我的代码吗?
设置k / sheet1 * sheet10 /;
环(K,
数据生成....
解决声明......
execute_unload'RESULT.gdx'
执行'gdxxrw.exe RESULT.gdx o = RESULT.xlsx var = x.l rng ='k.t1:0'!a1'
);
我非常感谢您的帮助
答案 0 :(得分:1)
实际上,你已经非常接近,你只需要使用'put_utility'而不是'execute'来使用'k.tl'语法(注意:它是.t l ,而不是.t 1 ):
*dummy put file
file fx; put fx;
set k/sheet1*sheet10/;
loop(k,
solve statement....
execute_unload 'RESULT.gdx'
put_utility 'exec' / 'gdxxrw.exe RESULT.gdx o=RESULT.xlsx var=x.l rng='k.tl:0'!a1';
);
我希望有所帮助! 最好的祝福, 鲁兹