Мне нужно решить эти три ODEВот код, который я использую.
Когда я компилирую, я получаю следующее сообщение об ошибке:
TypeError: model () отсутствует 2 обязательных позиционных аргумента: 'T' и 't'
Я не знаю, что происходит, поскольку T и T упоминаются в функции модели.
Кто-нибудь может мне помочь с этим?
import numpy as np
from scipy.integrate import odeint
import matplotlib.pyplot as plt
v0 = 10.0 #L/min, vazão volumétrica de entrada (CSTR)
V = 100.0 #L, volume do reator (CSTR)
k = 0.14*10**(-5) #L/mol.min, constante de velocidade da reação (aprox: independente da temperatura)
Na0 = 500.0 #mol, concentração de A na entrada do reator (CSTR)
DeltaH_r = -5.9*10**(-5) #cal/mol
CpA = 40.0 #cal/mol.K
CpB = 18.0 #cal/mol.K
Tent = 50.0+273.15 #K, temperatura na entrada no reator
def model(Na, Nb, T, t):
dNadt = (Na0 / V) * v0 - (Na / V) * v0 + (- k * (Na / V)**2) * V
dNbdt = -(Nb / V) * v0 + 0.5 * (k * (Na / V)**2) * V
dTempdt = ((-DeltaH_r) * (- k * (Na / V) * V) - Cp_A * V * v0 * (T - Tent)) / (Na * CpA + Nb *CpB)
return [dNadt, dNbdt, dTempdt]
t = np.linspace(0,20)
Chutes = [500.0, 0.1, 300.0] #Chute inicial
Y = odeint(model, Chutes, t)