我正在尝试创建分段线性函数,以使柴油发电机的效率在不同负载下有所不同。我在python 3.6中使用pyomo 5.6。 我找到了此文档https://pyomo.readthedocs.io/en/latest/library_reference/kernel/piecewise/piecewise.html 我从中得到的是我应该使用pyomo.core.kernel.piecewise_library.transforms.piecewise函数。
我使用该函数在pyomo模型中创建约束,如下所示:
piecewise_elec_efficiency_constraint.append(piecewise(breakpoints=[0,6,30],
values=[0,1.8,15]
input=diesel_import_kWh'),
output=elec_export_energy_kWh, bound='eq',
require_bounded_input_variable=False))
但这会导致elec_export_energy_kWh=15
和diesel_import_kWh=0
。显然这是错误的,因为没有柴油来发电。
我在这里做错了什么?据我了解,我正在按照文档建议指定断点和值。
任何帮助表示赞赏。