Hi! Can someone please help?(adsbygoogle = window.adsbygoogle || []).push({});

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?

Please help! I would really appreciate it!

Thanks,

Hop

**Physics Forums | Science Articles, Homework Help, Discussion**

Join Physics Forums Today!

The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

# Heat Equation in Polar coordinates in Mathematica

Can you offer guidance or do you also need help?

**Physics Forums | Science Articles, Homework Help, Discussion**