Solving a system of PDE, not on the same control volume

Hello, i'm trying to solve a problem similar to the one in the attached photo(not the same one...but the same concept): a system of parabolic PDEs, like the heat transfer problem between different materials. how can i do it with MATLAB? from what i understood, PDEPE can solve a system, but only on the same control volume. any other ideas?
i'll thanks your help in implementing a solution of my problem
Thanks, in advance! Bar

2 comentarios

Do you have access to PDE toolbox?
Bar
Bar el 8 de Dic. de 2013
yes

Iniciar sesión para comentar.

 Respuesta aceptada

Your pdefun function should look something like this:
function [c,f,s] = pdefun(x,t,u,DuDx)
if(x < L)
k = alpha1;
else
k = alpha2;
end
c=1;
f = k*DuDx;
s=0;
end
I probably should also mention that you should experiment with different mesh densities because the mesh affects the accuracy of the pdepe solution. But that recommendation applies whether you have continuous or discontinuous coefficients.
Bill

2 comentarios

Bar
Bar el 10 de Dic. de 2013
it works! thanks man. i'll see if i don't get into some more obstacles while using the more complex equations i have.
Bar
Bar el 12 de Dic. de 2013
Editada: Bar el 12 de Dic. de 2013
Bill, one more question: what if i have a fixed value of u in one point (in the middle, not BC)?
i changed the draw - now it will explain the problem better.
i'm modeling mass transfer between liquid and gas. and in the interface between two part (x=L), i know that i have a fixed value of the concentration, due to liquid-vapor equilibrium. thus, from the left side of x=L (boundary of my left subdomain,the gas), i know the value of the concentration.
it also causes discontinuity in the value of C - as the concentration in the gas phase in much lower. it's like there is a jump in the water concentration right above a water cup bewteen the concetraion in the cup and the humidity abouve it - but there is a flux beteen those two (hope this example helped and did not confuse)
how can i solve this one?
Thanks, Bar

Iniciar sesión para comentar.

Más respuestas (1)

Bill Greene
Bill Greene el 7 de Dic. de 2013
Hi,
There is no difficulty using pdepe to solve your equation. You define xmesh over the full 2L length and, for best results, you want to define the number of elements in xmesh so that there is a node point at x=L. Beyond that, in your pdefun function, you just define the flux in terms of a1 if x<L and a2 if x>L.
Bill

3 comentarios

Bar
Bar el 8 de Dic. de 2013
what do you mean "define the flux term"?
and how do i deal the fact that there are BC's in x=L?
is there any chance you have a code to clarify it?
thanks
By flux term, I simply mean the f output from pdefun. This is the heat flux in your example-- either alpha_1*dT/dx or alpha_2*dT/dx. The only boundary conditions to be specified are at x=0 and x=2L.
Bill
Bar
Bar el 10 de Dic. de 2013
i understand, but how do i define the different alpha, that change at x=L?

Iniciar sesión para comentar.

Productos

Etiquetas

Preguntada:

Bar
el 7 de Dic. de 2013

Editada:

Bar
el 12 de Dic. de 2013

Community Treasure Hunt

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

Start Hunting!

Translated by