如何在Python Gekko中将变量值设置为x [3] = 6(不是初始条件)?

德州工程师

我可以在Gekko中使用设置初始条件y(0)= 5,y = m.Var(5)但如何设置不是初始条件的值,例如y(3)= 6,其中时间= 3的值为6,如红色所示点?

指定内部点

from gekko import GEKKO
import numpy as np
import matplotlib.pyplot as plt
m = GEKKO(remote=False)
m.time = np.linspace(0,10,11)
x = m.Var(np.ones(11)*6)
m.Equation(5*x.dt() == -x)
m.options.IMODE = 4
m.solve()
plt.plot(m.time, x.value)
plt.plot([3],[6],'ro',MarkerSize=5)
plt.show()

我有一个模拟问题,需要解决方案才能沿时间范围得出中间值m.time = [0,1,2,3,4,5,6,7,8,9,10]当我初始化时x=m.Var(np.ones(11)*6),值稍后会由求解器更改。我可以固定其中一个不在初始状态的值吗?这类似于边界值问题,其中起点或终点固定,但在这种情况下,指定值位于时间范围内。

约翰·海登格伦

首先,要在fixed_initial=False指定时使用option计算初始条件x=m.Var()模型构建功能m.fix()可以固定地平线上的任意点,例如,m.fix(x,pos=3,val=6)但也可以固定该点的导数。

一种替代方法是指定一个目标,以最大程度地减少与6时间= 3的值的偏差

pi = np.zeros(11); pi[3]=1
p = m.Param(pi)
m.Minimize(p*(x-6)**2)

这将在各处创建目标,但p在时间= 3时仅非零。

免费的初始条件

from gekko import GEKKO
import numpy as np
import matplotlib.pyplot as plt
m = GEKKO(remote=False)
m.time = np.linspace(0,10,11)
x = m.Var(np.zeros(11)*6,fixed_initial=False)
m.Equation(5*x.dt() == -x)
pi = np.zeros(11); pi[3]=1
p = m.Param(pi)
m.Minimize(p*(x-6)**2)
m.options.IMODE = 6
m.solve()
plt.plot(m.time, x.value)
plt.plot([3],[6],'ro',MarkerSize=5)
plt.show()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在bash脚本中将函数的输出设置为变量值?

来自分类Dev

如何在Firebase Cloud中将变量值设置为“字段名称”。网页/ HTML

来自分类Dev

如何在bash脚本中将函数的输出设置为变量值?

来自分类Dev

如何在c#中将变量值设置为DataTable名称

来自分类Dev

如何在 AWS EMR 中将 Jupyter notebook 设置为 Python3 而不是 Python2.7

来自分类Dev

如何设置条件以比较 if 语句中的变量值?

来自分类Dev

如何为依赖x的非线性Schrodinger方程编写初始条件子程序

来自分类Dev

如何对多组初始条件进行测试?

来自分类Dev

如何在asp.net中将变量值从aspx.cs文件设置为aspx文件?

来自分类Dev

如何在一行中有条件地设置变量值?

来自分类Dev

如何在一行中有条件地设置变量值?

来自分类Dev

如何在 If 中设置变量值

来自分类Dev

如何知道为联合设置了哪个变量值?

来自分类Dev

如何将变量值设置为每行零

来自分类Dev

如何根据 r 中的变量值为 3D 图着色

来自分类Dev

Python 3.x Tkinter-无法获取复选框的变量值

来自分类Dev

Python 3.x Tkinter-无法获取复选框的变量值

来自分类Dev

如何在IF条件下使用变量值

来自分类Dev

如何在python3中使用smtplib通过电子邮件发送变量值?

来自分类Dev

Python-微分方程,初始条件问题

来自分类Dev

如何使用if条件在python中更改变量值

来自分类Dev

如何使用if条件在python中更改变量值

来自分类Dev

如何使用if条件在python中更改变量值

来自分类Dev

如何使用if条件在python中更改变量值

来自分类Dev

如何在casperjs中将变量值传递给sendKeys

来自分类Dev

如何在C中将变量值传递给数组

来自分类Dev

如何在 JavaScript 中为新的变量值分配一个变量值

来自分类Dev

如何从列数据设置变量值?

来自分类Dev

如何从输入设置变量值?

Related 相关文章

  1. 1

    如何在bash脚本中将函数的输出设置为变量值?

  2. 2

    如何在Firebase Cloud中将变量值设置为“字段名称”。网页/ HTML

  3. 3

    如何在bash脚本中将函数的输出设置为变量值?

  4. 4

    如何在c#中将变量值设置为DataTable名称

  5. 5

    如何在 AWS EMR 中将 Jupyter notebook 设置为 Python3 而不是 Python2.7

  6. 6

    如何设置条件以比较 if 语句中的变量值?

  7. 7

    如何为依赖x的非线性Schrodinger方程编写初始条件子程序

  8. 8

    如何对多组初始条件进行测试?

  9. 9

    如何在asp.net中将变量值从aspx.cs文件设置为aspx文件?

  10. 10

    如何在一行中有条件地设置变量值?

  11. 11

    如何在一行中有条件地设置变量值?

  12. 12

    如何在 If 中设置变量值

  13. 13

    如何知道为联合设置了哪个变量值?

  14. 14

    如何将变量值设置为每行零

  15. 15

    如何根据 r 中的变量值为 3D 图着色

  16. 16

    Python 3.x Tkinter-无法获取复选框的变量值

  17. 17

    Python 3.x Tkinter-无法获取复选框的变量值

  18. 18

    如何在IF条件下使用变量值

  19. 19

    如何在python3中使用smtplib通过电子邮件发送变量值?

  20. 20

    Python-微分方程,初始条件问题

  21. 21

    如何使用if条件在python中更改变量值

  22. 22

    如何使用if条件在python中更改变量值

  23. 23

    如何使用if条件在python中更改变量值

  24. 24

    如何使用if条件在python中更改变量值

  25. 25

    如何在casperjs中将变量值传递给sendKeys

  26. 26

    如何在C中将变量值传递给数组

  27. 27

    如何在 JavaScript 中为新的变量值分配一个变量值

  28. 28

    如何从列数据设置变量值?

  29. 29

    如何从输入设置变量值?

热门标签

归档