I want to solve the diffusion equation on a disk centered at (0,0) with a radius of 1. I also want the flux at a radius of 0.8 to be zero. I have this initial condition at time zero:
u[x, y, 0] ==
Exp[(-x^2 - y^2)/0.01] + 10*Exp[-(((x - 1)^2 + (y)^2)/0.01)]
The initial condition looks like this:
The solution after time 50 looks like this:
The problem is that I expected because the flux is zero at radius of 0.8 then at the distance more than 0.8 from the origin the value of variable u[x,y,t]
should be different from that of at distances shorter than 0.8. However, everything looks equilibrated.
Here is the whole code:
sol = NDSolveValue[{\!\(
\*SubsuperscriptBox[\(\[Del]\), \({x, y}\), \(2\)]\(u[x, y, t]\)\) ==
D[u[x, y, t], t] +
NeumannValue[
0., {x, y} \[Element]
RegionDifference[Disk[{0, 0}, 1], Disk[{0, 0}, 0.8]]],
u[x, y, 0] ==
Exp[(-x^2 - y^2)/0.01] + 10*Exp[-(((x - 1)^2 + (y)^2)/0.01)]},
u, {x, y} \[Element] Disk[{0, 0}, 1], {t, 0, 50}]
Plot3D[sol[x, y, 0], {x, y} \[Element] Disk[{0, 0}, 1],
PlotRange -> All]