我试图通过使用规定的 BC 和 IC 求解下面的二阶 PDE 来模拟沿反应器的不稳定污染物浓度。哪种方法适合使用 MATLAB 求解对流-扩散-反应方程(非稳态)。我使用函数 pdepe 解决了稳态。注意:我不知道解决 PDE 的有限体积/元素方法。我似乎无法理解为什么逆风方案和二阶中心差分别用于离散对流和扩散项。但是,我对有限差分方法有一些了解。我可以阅读任何资料以帮助我更好地理解以处理问题
% solve Ct=DCzz-vxCx
clear all
% parameters
D=9.1e-10; % Diffusion Coefficient for phenol in wastewater
vx=(0.05/10/3600)/(0.01*30*0.01)
% Domain and step
Lx=60
Lz=0.01
Nx=100
Nz=100
Nt=1000
dx=Lx/(Nx-1)
dz=Lz/(Nz-1)
% Satisfy Courant Number
C=0.05
ux=1
uz=1
dt=C/((ux/dx)+(uz/dx))
% Field Variables
Cn=ones(Nz,Nx)
x=linspace(0,Lx,Nx)
z=linspace(0,Lz,Nz)
[X,Z]=meshgrid(x,z)
% Initial conditions
Cn(:,:)=1
t=0
% loop
for n=1:Nt
Cc=Cn
for i=2:Nx-1
for j=2:Nz-1
Cn(j,i)=Cc(j,i)+(D*dt/(dz*dz))(Cc(j+1,i)-2*Cc(j,i)+Cc(j-1,i))-(vx*dt/dx)(Cc(j,i)-Cc(j,i-1))
end
end
% Boundary conditions
Cn(1,:)=1
Cn(end,:)=1
Cn(:,1)=1
Cn(:, end)=Cn(:, end-1)
% Visualize
mesh(x,z,Cn); axis[0 Lx 0 Lz 0 Lz 0 1]
pause(0.01)
end