Azzera filtri
Azzera filtri

problem in calculating flux in pde toolbox

1 visualizzazione (ultimi 30 giorni)
Mohammad Monfared
Mohammad Monfared il 30 Gen 2014
Hi everybody,
I'm trying to calculate and plot the flux terms in the following equation in the pde toolbox:
fluxes are the inside square bracket terms. According to pde toolbox syntax, pde coefficients become:
c = K
a = 0
f = d(K)/dz = d(K)/dh * dh/dz
when I try to plot the fluxes by these lines the result is incorrect (violence of mass conservation law):
uintrp = pdeintrp(p,t,u) ;
[ux,uz] = pdegrad(p,t,u) ;
qx = -K(uintrp) .* ux ;
qz = -K(uintrp) .* (uz + 1) ;
pdeplot(p,e,t,'flowdata',[qx; qz])
But surprisingly when I change the 'qz' as follows everything seems OK!:
qz = -K(uintrp) .* (uz - 1) ;
so I'm a bit confused since the flux in the main equation has '+' in it not '-'. What am I missing here?
thanks,
  1 Commento
Mohammad Monfared
Mohammad Monfared il 31 Gen 2014
The problem was simply because of a '-' in a function evaluating dK/dh !

Accedi per commentare.

Risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by