我从pyomo开始,我有一些问题。
我创建了一个抽象模型和相应的数据文件。我想在脚本中解决它,以便以后使用变量的解决方案。 我试着用下一个代码来做:
<packagename.views.ArialMTBoldRegularTextView
android:layout_width="wrap_content"
android:layout_height="35dp"
android:gravity="center"
android:text="Pseudo"/>
它完美地解决了这个问题,但是我的数据存在一些问题。在我的模型中没有设置,所以数据是简单的常量定义为:
data = DataPortal()
data.load(filename="Datos\Datos_reactor2.dat")
instance = model.create_instance(data)
opt = SolverFactory("ipopt")
results = opt.solve(instance)
但是如果我使用这个数据文件python告诉我一个错误:
param qv := 2.832;
param ci := 14.46;
...
当我更改定义参数的数据文件时:
ValueError: Parameter 'qv' defined with '1' dimensions, but data has '1' values: [2.832]. Are you missing a value for a 1-dimensional index?
我收到了另一个错误:
param qv := 1 2.832;
param ci := 1 14.46;
...
最后,为了解决问题,我必须将常量定义为表格(参见beolw),但我不了解以前的错误。
RuntimeError: Failed to set value for param=qv, index=1, value=2.832. source error message="Error setting parameter value: Cannot treat the scalar Param 'qv' as an array"
要突出说明如果我尝试用以下方法解决问题:
table qv := 2.832;
table ci := 14.46;
...
根据第一种情况定义的数据(param qv:= 2.832; ...)我没有任何问题,我得到了相同的解决方案。
谁能告诉我差异并向我解释错误?
谢谢!
Maria