# Mathematica Heat Equation in Polar coordinates in Mathematica

#### Hop

I'm trying to solve the heat equation in polar coordinates. Forgive my way of typing it in, I'm battling to make it look right. The d for derivative should be partial, alpha is the Greek alpha symbol and theta is the Greek theta symbol.
du/dt = (alpha.alpha)[(d/dr)(du/dr)+(1/r)du/dr+(1/(r.r))(d/theta)(du/dtheta)]
This is the heat equation for a disk with radius a.
u(r,theta,0) = (a-r)cos(theta)
u(a,theta,t) = 0

In Mathematica, I used:
NDSolve[{Derivative[0,0,1][r,theta,t]==alpha Derivative[2,0,0][r,theta,t]+alpha Derivative[1,0,0][r,theta,t]+alpha Derivative[0,2,0][r,theta,t], u[r,theta,0] == (a-r)Cos[theta], u[a,theta,t]==0},u,{r,0,a},{theta,0,1},{t,0,1}]

I got an error: NDSolve: bcart
I tried replacing alpha with 2 and a with 4. Still got a problem. Is there a way of keeping the alpha's and a's? And can the radius start from 0, without problems?

Then I need to plot it in 3 dimensions. I tried: (radius starting from 1 since I had problems)
Plot3D[Evaluate[u[r,theta,t] /. First[%]],{r,1,4}, {theta,0,pi}, {t,0,1},PlotPoints -> 50]

I got an error: Plot3D: plnc (repeatedly)
General :: stop
Plot3D[InterpolatingFunction[{{1.,4.},{0.,3.14159},{0.,1.}},<>][r,theta,t],{r,1,4},{theta,0,pi},{t,0,1}, PlotPoints -> 50]

I still need to add a different boundary condition where du/dr(a,theta,t) = 0 and need to solve u(r,theta,t). Would it work the same way?

Thanks,
Hop

Related Math Software Workshop News on Phys.org

"Heat Equation in Polar coordinates in Mathematica"

### Physics Forums Values

We Value Quality
• Topics based on mainstream science
• Proper English grammar and spelling
We Value Civility
• Positive and compassionate attitudes
• Patience while debating
We Value Productivity
• Disciplined to remain on-topic
• Recognition of own weaknesses
• Solo and co-op problem solving