Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何检索';不可行性.txt';来自壁虎_Python_Debugging_Gekko - Fatal编程技术网

Python 如何检索';不可行性.txt';来自壁虎

Python 如何检索';不可行性.txt';来自壁虎,python,debugging,gekko,Python,Debugging,Gekko,我收到了来自GEKKO模拟的不可行错误消息。我想检索'infiasibilities.txt'文件以调试算法 请告诉我在哪里可以找到文件 R1=m.Intermediate(3/r0/W*((A3*(A2+B2+B3+F)+(A2+B2)*(B3+F))*(cg0[0]-ceq1)\ -(A3*(B2+B3+F)+B2*(B3+F))*(cg0[0]-ceq2)\ -A2*(B3+F)*(cg0[0]-ceq3))) R2=m.Intermediate(3/r0/W*((B2*(A3+B3+F)

我收到了来自GEKKO模拟的不可行错误消息。我想检索'infiasibilities.txt'文件以调试算法

请告诉我在哪里可以找到文件

R1=m.Intermediate(3/r0/W*((A3*(A2+B2+B3+F)+(A2+B2)*(B3+F))*(cg0[0]-ceq1)\
-(A3*(B2+B3+F)+B2*(B3+F))*(cg0[0]-ceq2)\
-A2*(B3+F)*(cg0[0]-ceq3)))
R2=m.Intermediate(3/r0/W*((B2*(A3+B3+F)+A3*(B3+F))*(cg0[0]-ceq1)\
+((A1+B1+B2)*(A3+B3+F)+A3*(B3+F))*(cg0[0]-ceq2)\
-(A1+B1)*(B3+F)*(cg0[0]-ceq3)))
R3=中间产物(3/r0/W*(-A2*(B3+F)*(cg0[0]-ceq1)\
-(A1+B1)*(B3+F)*(cg0[0]-ceq2)\
+((A1+B1)*(A2+B2+B3+F)+A2*(B2+B1+F))*(cg0[0]-ceq3)))
m、 方程(cH.dt()==nus[0]。点([R1,R2,R3]))
m、 方程(cM.dt()==nus[1]。点([R1,R2,R3]))
m、 方程(cW.dt()==nus[2]。点([R1,R2,R3]))
m、 方程(cF.dt()==nus[3]。点([R1,R2,R3]))
m、 options.IMODE=4
m、 options.SOLVER=3
m、 options.nodes=2
正在创建文件:infiasibilities.txt

使用命令apm_get(server,app,'infiabilities.txt')检索文件


错误:找不到解决方案有两种方法可以访问文件。第一种方法是切换到
remote=False
进行本地求解,并在计算机上生成infiabilities.txt文件。第二种方法是从远程目录检索文件。第一种方法是编码方面最简单的解决方案(只需更改一个选项并打开run文件夹)。第二种方法最方便,因为它使文件在运行目录中可用。我在下面包含的示例对于方程
x+y=1
x+y=0
是故意不可行的

方法1-远程=False时打开运行文件夹

从gekko导入gekko
m=GEKKO(remote=False)#remote=False生成带有结果的本地文件夹
x=m.Var()
y=m.Var()
m、 方程([x+y==1,x+y==0])#无解
m、 open_folder()#如果remote=False,则打开文件夹以查看infacibilities.txt
m、 求解(disp=True)#求解
方法2-当remote=True时检索infiabilities.txt文件

从gekko导入gekko
m=GEKKO(远程=True)
x=m.Var()
y=m.Var()
m、 方程([x+y==1,x+y==0])#无解
尝试:
m、 求解(disp=True)#求解
除:
打印('未成功')
从gekko.apm导入get_文件
打印(m._服务器)
打印(m.\U型号\U名称)
f=get_文件(m._服务器,m._模型名称,'infiasibilities.txt')
f=f.decode().replace('\r','')
以open('infiabilities.txt','w')作为fl:
外语写作(str(f))
txt文件有点难以读取,但它确实试图识别导致解决方案失败的方程式。下面是这个问题的例子

************************************************
***** POSSIBLE INFEASBILE EQUATIONS ************
************************************************
____________________________________________________________________________
EQ Number   Lower        Residual     Upper        Infeas.     Name
         1   0.0000E+00  -9.4140E-01   0.0000E+00   9.4140E-01  ss.Eqn(1): 0 = (v1+v2)-(1)
 Variable   Lower        Value        Upper        $Value      Name
         1  -1.2346E+20   2.9300E-02   1.2346E+20   0.0000E+00  ss.v1
         2  -1.2346E+20   2.9300E-02   1.2346E+20   0.0000E+00  ss.v2
____________________________________________________________________________
EQ Number   Lower        Residual     Upper        Infeas.     Name
         2   0.0000E+00   5.8600E-02   0.0000E+00  -5.8600E-02  ss.Eqn(2): 0 = (v1+v2)-(0)
 Variable   Lower        Value        Upper        $Value      Name
         1  -1.2346E+20   2.9300E-02   1.2346E+20   0.0000E+00  ss.v1
         2  -1.2346E+20   2.9300E-02   1.2346E+20   0.0000E+00  ss.v2
************************************************
****** ACTIVE OBJECTIVE EQUATIONS **************
************************************************
Number           ID  Node    Horizon  Unscaled Res  Scaled Res   Scaling     Name
************************************************
************* ACTIVE EQUATIONS *****************
************************************************
Number           ID  Node    Horizon  Unscaled Res  Scaled Res   Scaling     Name
         1          1    1          1  -9.4140E-01  -9.4140E-01   1.0000E+00  ss.Eqn(1): 0 = (v1+v2)-(1)
         2          2    1          1   5.8600E-02   5.8600E-02   1.0000E+00  ss.Eqn(2): 0 = (v1+v2)-(0)
************************************************
************ INACTIVE EQUATIONS ****************
************************************************
Number     Unscaled Res    Scaled Res   Scaling      Name
如果使用
x=m.Var(name='x')
来命名变量,那么该文件将更具描述性。这两个方程都被认为是潜在不可行的