如何在gams中的单个方程式中设置单个变量的上下限

时间:2019-09-18 01:56:56

标签: gams-math

这可能吗?

def short_month_to_number (short_month_name):
    switcher = {
        "Jan": 1,
        "Feb": 2,
        "Mar": 3,
        "Apr": 4,
        "May": 5,
        "Jun": 6,
        "Jul": 7,
        "Aug": 8,
        "Sep": 9,
        "Oct": 10,
        "Nov": 11,
        "Dec": 12
    }
    return switcher.get(short_month_name)

dates_array = ['Jan 12', 'Feb 23', 'Mar 24', 'Apr 25', 'Nov 26']
dates_array = [x.replace(x[:4], str(short_month_to_number(x[:3])) + '/') for x in dates_array]
print (dates_array)

其中x是一个正变量,boundary_of_x是一个方程。还是我必须用两个方程式做到这一点?

1 个答案:

答案 0 :(得分:1)

您无法在一个方程式中执行此操作,您需要两个方程式,或者(更好)使用变量的.lo.up属性:

x.lo = 19.0; x.up = 22.1;