1D time dependent mass transfer and reaction in a very small slab

조회 수: 2 (최근 30일)
Moji
Moji 2018년 3월 29일
다시 열림: Moji 2018년 4월 12일
I am trying to model a pde including advection-diffusion and reaction terms. i want to see the concentration profil after a long time(2*60*60 sec) in a very tiny slab(5 micrometer). i used method of line(ode15s) to solve this pde but my result is not match with the experimental result. because the outlet concentration gets maximum concetration right away(as can be seen in myplot).does anybody know where is my mistake?
  댓글 수: 3
John D'Errico
John D'Errico 2018년 3월 29일
How can someone know where your mistake might be, if you don't show the code you wrote?
Bill Greene
Bill Greene 2018년 3월 31일
I don't see anything wrong with your pdepe code. So I suspect there is something wrong with your constants (values or units). For example, if I make the total time 1e-7 instead of 120, the solution looks more reasonable.

댓글을 달려면 로그인하십시오.

채택된 답변

Abraham Boayue
Abraham Boayue 2018년 3월 30일
By carefully defining the parameters of your function in matlab using the pdepe solver, I was able to obtain the image below. Does this look like what you want to see?
function PDEPE_diff
m = 0;
x = linspace(0,1,200);
t = linspace(0,2,100);
sol = pdepe(m,@pdepfun,@icfun,@bcfun,x,t);
u = sol(:,:,1);
plot(x,u(1:100,:,1),'linewidth',1.5)
title('Numerical solution computed with 200 mesh points.')
xlabel('Distance x')
ylabel('Time t')
grid
function [g,f,s] = pdepfun(x,t,c,DcDx)
D = 8.6e-6;
k = 1;
K = 0.24;
ux = 0.5;
g = 1;
f = D*DcDx;
s = -(ux*DcDx + k*K*c);
function c0 = icfun(x)
c0 = 0*x;
function [pl,ql,pr,qr] = bcfun(xl,cl,xr,cr,t)
pl = cl-20;
ql = 0;
pr = cr;
qr = 1;
%
  댓글 수: 1
Abraham Boayue
Abraham Boayue 2018년 3월 31일
I understand what you mean. I strongly believe that it depends on the method of coding, you could try other numerical schemes like the finite difference method. Was it mentioned how the results were obtained in the paper that you are reading?

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by