Message Boards Message Boards

Solve a porous media problem (The Henry problem)?

Good morning wolfram community. I'm interested in solving a typical problem of porous media known as Henry's problem. It has utility to validate numerical media in the field of hydrology. It seems that I am making a mistake in the contour conditions. Could someone suggest me where the error is? Thank you

Needs["DifferentialEquations`InterpolatingFunctionAnatomy`"]
Ra = 4;
pde = {D[s[x, y, t], x, x] + D[s[x, y, t], y, y] == 
    Ra*D[c[x, y, t], x], 
   D[c[x, y, t], x, x] + D[c[x, y, t], y, y] - 
     D[s[x, y, t], y]*D[c[x, y, t], x] + 
     D[s[x, y, t], x]*D[c[x, y, t], y] == D[c[x, y, t], t]};
ICs = {s[x, y, 0] == 0, c[x, y, 0] == 0};
BCs = {s[x, 0, t] == 0, 
   s[x, 1, t] == 0, (D[s[x, y, t], y] /. x -> 0) == 
    0, (D[s[x, y, t], y] /. x -> 2) == 
    0 , (D[c[x, y, t], y] /. y -> 0) == 
    0, (D[c[x, y, t], y] /. y -> 1) == 0, c[0, y, t] == 0, 
   c[1, y, t] == 0 };
sol = NDSolveValue[{pde, ICs, BCs}, {s[x, y, t], c[x, y, t]}, {x, 0, 
   2}, {y, 0, 1}, {t, 0, 1}]

Plot2D[c[x, y, t] /. sol, {x, 0, 2}, {y, 0, 1}, {t, 0, 1}]
POSTED BY: Antonio Soto
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract