微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

球形催化剂中的反应扩散边界条件,奇异性和初始猜测

如何解决球形催化剂中的反应扩散边界条件,奇异性和初始猜测

在求解球形催化剂中的反应扩散方程时存在问题。 我在定义不列颠哥伦比亚省时遇到了麻烦,而且我不明白如何定义一个良好的初步猜测。 任何帮助,将不胜感激。该问题具有neu'条件,其中psi'(0)= 0且psi(1)= 1 这是到目前为止的代码
from scipy.integrate import odeint,solve_bvp
from scipy.interpolate import interp1d
import numpy as np
import matplotlib.pyplot as plt
#parameters values
k = 0.000533
De = 1.16E-8
#Ke = 3.6;
#KA = 0.0002;
#KB = 0.0004;
KC = 0.00001
#KD = 0.0000001;
rop = 863000
R = 0.002
CAO= 4.850
uL = 0.63e-2
tetb = 1.67

def pellet(x,y): 
    psi = y[0] #psi is the adimensional concentration and x is the adimensional radius
    dpsi = y[1]
    return [y[1],-(2/x)*y[1]+(fi**2)*y[0]*((((tetb-X[i])/(1-X[i])-1+y[0])/(1+KC*CAO*(1-X[i])* 
((X[i]/(1-X[i]))+1-y[0]))))]

def bc(ya,yb):
    psi0,dpsi0 = ya
    psi1,dpsi1 = yb
    return [ya[1],yb[0]-1]
Xmax=1
npontos=500 
dX=Xmax/npontos; #dx = infinitesimal conversion of reactant 
X = [0]
for i in range(npontos):
    if i == 250: 
        fi = R*(((roP*k*CAO*(1-X[i]))/De)**(0.5))
        x = np.linspace(0.01,1)
        psi_ini = np.zeros((2,x.size))
        sol = solve_bvp(pellet,bc,x,psi_ini)
        plt.plot(x,sol.sol(x)[0])
        plt.xlabel('raio adimensional')
        plt.ylabel('concentraçao adimensional')
        plt.show()
    X.append(X[i] + dX)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。