在spyder IDE中以时间相关值显示gekko变量值

2024-09-26 22:50:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我用GEKKO做了一个依赖时间的DEs模型。我使用GEKKO变量跟踪混合良好的隔间模型中的物种浓度;然而,我无法在spyder IDE中查看浓度随时间变化的数组。我可以绘制浓度并以图形形式查看值,或者使用“结果”excel文件中报告的值,但在spyder中查看随时间变化的值会很有用。现在,在spyder的变量浏览器中,变量显示为gk_variable.GKVariable类型

这是我使用的代码示例

from gekko import GEKKO
import numpy as np
import pandas as pd

myFile = pd.read_csv('Time_Array.csv', sep = ',')
myFile.index
myFile.columns
time = np.array(myFile)

m.time = time

FCG = m.Var(value = 6.934045, lb = 0) 
CMG = m.Var(value = 7.01148, lb = 0)

m.Equations([FCG.dt() == Qdiet/Vintestines + Qsynintestine + Kfclg*FCL*(Vliver/Vintestines) - Kfcex*FCG - Kfccm*FCG, CMG.dt() == Kfccm*FCG - Kcmgb * CMG])

m.options.IMODE = 4
m.solve(disp = True)

上面的代码是模型的一个片段。在实际模型中,常数和方程较多;但是,我基本上希望在不离开spyder IDE的情况下查看FCG和CMG等浓度随时间变化的值。我知道您可以通过在代码中插入print语句来实现这一点,我想知道是否有人知道其他更干净的修复程序

非常感谢


Tags: 代码模型importtimeasnp时间ide
1条回答
网友
1楼 · 发布于 2024-09-26 22:50:06

.value属性可用于查看Gekko参数或变量的数值。这不会在变量资源管理器中显示,因此解决方法之一是创建一个新的Python变量

fcg_values = FCG.value

您还可以看到第一个值:

fcg_init = FCG.value[0]

最后一个值:

fcg_last = FCG.value[-1]

或介于以下两者之间的一系列值:

fcg_inner = FCG.value[2:5]

相关问题 更多 >

    热门问题