problem in calculating flux in pde toolbox

1 view (last 30 days)
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 Comment
Mohammad Monfared
Mohammad Monfared on 31 Jan 2014
The problem was simply because of a '-' in a function evaluating dK/dh !

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!