I describe here a finite difference scheme for solving the boundary value
problem for the heat equation

"(&PartialD; u)/(&PartialD; t)= ((&PartialD;)^)/((&PartialD;)^( )x^)(c(x)(&PartialD; u)/(&PartialD; x)) + f(x,t)   a<x<b,   t>0"

for the unknown temperature u(x, t)subject to the boundary conditions

u(a, t) = alpha(t), u(b, t) = beta(t), t > 0

and the initial condition

"u(x,0)=`u__0`(x),    a < x < b."


This finite difference scheme is designed expressly with the goal of avoiding

differentiating the conductivity c(x), therefore c(x) is allowed to be

nonsmooth or even discontinuous. A discontinuous c(x) is particularly
important in applications where the heat conduction takes place through layers
of distinct types of materials.


The animation below, extracted from the worksheet, demonstrates a solution 

corresponding to a discontinuous c(x).  The limit of that solution as time goes to

infinity, which may be calculated independently and exactly, is shown as a gray

Download worksheet: heat-finite-difference.mw


Please Wait...