Как выразить условие в GAMS? - PullRequest
       12

Как выразить условие в GAMS?

0 голосов
/ 28 февраля 2019

Я новый пользователь в GAMS и хочу написать условие, но не могу найти правильный способ его выразить.

Я хочу, чтобы b(l) было равно Pcost(pl), когда Loc(l,pl)не ноль.

Есть ли способ выразить это?

1 Ответ

0 голосов
/ 28 февраля 2019
b(l) = sum(pl$Loc(l,pl), Pcost(pl));

$ является знаком условия.pl нужно контролировать справа.Таким образом, sum используется.Предполагая, что есть только один pl для каждого l с Loc(l,pl)>0, вышеприведенное задание будет делать то, что вы просили.

Примечание: $Loc(l,pl) можно прочитать как "если Loc(l,pl) не равно нулю. Если вы хотите быть более явным, вы также можете написать следующее (что на самом деле совпадает с первой версией дляGAMS):

b(l) = sum(pl$(Loc(l,pl)<>0), Pcost(pl));
...