<< Click to Display Table of Contents >> ## diffusion |

{ DIFFUSION.PDE

This problem considers the thermally driven diffusion of a dopant into

a solid from a constant source. Parameters have been chosen to be those

typically encountered in semiconductor diffusion.

surface concentration = 1.8e20 atoms/cm^2

diffusion coefficient = 3.0e-15 cm^2/sec

The natural tendency in this type of problem is to start with zero

concentration in the material, and a fixed value on the boundary. This

implies an infinite curvature at the boundary, and an infinite transport

velocity of the diffusing particles. It also generates over-shoot

in the solution, because the Finite-Element Method tries to fit a step

function with quadratics.

A better formulation is to program a large input flux, representative of

the rate at which dopant can actually cross the boundary, (or approximately

the molecular velocity times the concentration deficiency at the boundary).

Here we use a masked source, in order to generate a 2-dimensional pattern.

This causes the result to lag a bit behind the analytical Plane-diffusion

result at late times.

}

title

'Masked Diffusion'

variables

u(threshold=0.1) { fraction of external concentration }

definitions

concs = 1.8e8 { surface concentration atom/micron^3}

D = 1.1e-2 { diffusivity micron^2/hr}

conc = concs*u

uexact1d = erfc(x/(2*sqrt(D*t))) { analytic solution to corresponding 1D problem }

cexact1d = concs*uexact1d

M = upulse(y-0.3,y-0.7) { masked surface flux multiplier }

initial values

u = 0

equations

u : div(D*grad(u)) = dt(u)

boundaries

region 1

start(0,0)

natural(u) = 0

line to (1,0) to (1,1) to (0,1)

natural(u) = 10*M*(1-u)

line to close

feature { a "gridding feature" to help localize the activity }

start (0.02,0.3) line to (0.02,0.7)

time 0 to 1 by 0.001

plots

for t=1e-5 1e-4 1e-3 1e-2 0.05 by 0.05 to 0.2 by 0.1 to endtime

contour(u)

surface(u)

elevation(u,uexact1d) from (0,0.5) to (1,0.5)

elevation(u-uexact1d) from (0,0.5) to (1,0.5)

histories

history(u) at (0.05,0.5) (0.1,0.5) (0.15,0.5) (0.2,0.5)

end