**错误:函数调用的结果不是正确的浮点数组**

2024-05-14 04:02:47 发布

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

i = 1
                
        t_HS_1  = t_5 + del_t_pinch
        t_13    = t_2 + del_t_pinch

        for i in range(10000):   
    
            def f(z):
                m_w_HPx, t_z = z
                f1 = m_h*Cp_h*(t_12 - t_z) - m_w_HPx*(h_7 - h_6)
                f2 = m_h*Cp_h*(t_z - t_HS_1) - m_w_HPx*(h_6 - h_5)
                return [f1,f2]
    
            x = fsolve(f,[100.,10.])
    
            m_w_HPx = x[0]
            t_z     = x[1]
            del_t   = [t_12 - t_7, t_z - t_6, t_HS_1 - t_5]
            t_HS_1  = t_HS_1 + 0.1

            if t_z - t_6 >= del_t_pinch:
                break
        j = 1
        for j in range(10000):   
            def f(z):
                m_w_x, t_y = z
                f1 = m_h*Cp_h*(t_HS_1 - t_y) - (m_w_x - m_w_HPx)*(h_4 - h_3)
                f2 = m_h*Cp_h*(t_y - t_13) - m_w_x*(h_3 - h_2)
                return [f1,f2]
    
            x = fsolve(f,[100,10])
                            
            m_w_x = x[0]
            t_y   = x[1]
            del_t = [t_HS_1 - t_4, t_y - t_3, t_13 - t_2]
            t_13   = t_13 + 0.1
                                
            if min(del_t) >= del_t_pinch:
                break

上面提到的代码会导致如下错误--

文件F:/My Programming/Python/ORC/chineese_paper_dual_pressure.py,第584行,在pl_optima中 x=f溶剂(f[100,10])

文件C:\Users\Asus\Anaconda3\lib\site-packages\scipy\optimize\minpack.py,第147行,在fsolve中 res=\u root\u hybr(func,x0,args,jac=fprime,**选项)

文件C:\Users\Asus\Anaconda3\lib\site-packages\scipy\optimize\minpack.py,第225行,在_root_hybr中 ml,mu,epsfcn,因子,diag)

错误:函数调用的结果不是正确的浮点数组。

类似的代码在我以前使用过的其他地方也能很好地工作。错误的可能原因是什么?


Tags: 文件inpyfordef错误rangecp