我正在解决热交换器问题,必须找到最终温度。这是ode的系统,我编写了以下代码:它要求我定义T和t,但我是x的函数,我应该找到
NotificationCompat.Builder
但是它给了我以下错误信息:
import numpy as np
import matplotlib.pyplot as plt
from scipy.integrate import odeint
#propriedades trietileno glicol na entrada
T1 = 363 #K temperatura de entrada
Wt = 3.6 #kg/s vazão
#propriedades água na entrada
t1 = 298 #K
Ww = 1.0
Ww = [0.1, 0.5, 1] #kg/s vazões
Di = 0.07792 #m diâmetro interno
L = 3.048 #m comprimento do tubo
U = 283.72 #W/m²K
pi= 3.1415
cpt = 1901.09#, 2.7683*T + 896.2] #J/kg*K calor específico
cpw = 4018.04#, -0.00003*(t^3) + 0.0403*(t^2) - 16.277*t + 6083.7] #J/kg*K calor específico
cp = [cpt, cpw]
def funct(y, x):
y = T, t
dTdx = (U * Di * pi / (Wt * cpt)) * (T - t)
dtdx = (U * Di * pi / (Ww * cpw)) * (T - t)
x = np.linspace(0, L, 100)
return dTdx, dtdx
# Vetor espaço
# Initial condition
y0 = T1, t1
sol = odeint(funct, y0 , x)
# plot
plt.plot(x, sol[:, 0], label='Trietilenoglicol')
plt.plot(x, sol[:, 1], label='Água')
plt.legend()
plt.xlabel('posição')
我已经阅读了很多回答的问题,但仍然找不到错误。
答案 0 :(得分:0)
您想将y
中的列表解压缩为单个变量,这必须与打包y0
时相反地进行,
T,t = y
您要在与y0相同的位置定义时间数组x
您两次定义Ww
,第二次定义为元组。没有算术元组运算。如果第二个定义没有特殊用途,则将其删除。