MathGroup Archive 2012

[Date Index] [Thread Index] [Author Index]

Search the Archive

Heat Equation on a surface sphere using NDSolve?

Hello Folks,

I am new to Mathematica, but it seems to be the most suitable tool for my issue.

I have to solve a equation which is similar to heat equation on a sphere surface. The exact expression in a spherical coordinates system is (in LaTeX):

\frac{\partial{h}}{\partial t} = \frac{1}{n} \left[ \frac{1}{r^2 \sin^2{\phi}} \frac{\partial}{\partial \theta} \left( K \frac{\partial h}{\partial \theta} \right) + \frac{1}{r^2 \sin \phi} \frac{\partial}{\partial \phi} \left( K \sin \phi \frac{\partial h}{\partial \phi}\right) + s(\theta,\phi,t)\right]

K is kind of a diffusion coeff.
s a source term (varying in time and space)
and n a constant (although it might depends on \phi and \theta).
\theta and \phi are defined here in a mathematical way.
r the radius (constant as we deal with a perfect sphere).
(no variation regarding the radius, we only look at the surface of the sphere).

I found that in Mathematica, and in a Cartesian frame, such equation (somewhat not exactly the same but similar) would be:

N = 1
K = 34
myfunc = NDSolve[{D[h[x, y, t], t] ==
 1/N*(D[h[x, y, t], x, x] + D[h[x, y, t], y, y]), h[x, y, 0] == 0,
 h[0, y, t] == K*t, h[9, y, t] == K*t, h[x, 0, t] == K*t,
 h[x, 9, t] == K*t}, h, {x, 0, 9}, {y, 0, 9}, {t, 0, 6}];

I'm kind of stuck right now, because I do not know how can I switch to the spherical frame. I would appreciate any ideas/suggestions.

Thanks a lot and sorry for bothering you guys with this.


  • Prev by Date: Re: Putting a Test or Condition on the Right-Hand Side of a Function
  • Next by Date: Re: Mathematica as a New Approach to Teaching Maths
  • Previous by thread: Re: How to relate two functions
  • Next by thread: Re: Heat Equation on a surface sphere using NDSolve?