#!/usr/bin/env python # coding: utf-8 # ## Spherically symmetric waves # # Spherically symmetric three-dimensional # waves propagate in the radial direction $r$ only so that # $u = u(r,t)$. The fully three-dimensional wave equation # $$ # \frac{\partial^2u}{\partial t^2}=\nabla\cdot (c^2\nabla u) + f # $$ # then reduces to the spherically symmetric wave equation # #
# # $$ # \begin{equation} # \frac{\partial^2u}{\partial t^2}=\frac{1}{r^2}\frac{\partial}{\partial r} # \left(c^2(r)r^2\frac{\partial u}{\partial t}\right) # + f(r),\quad r\in (0,R),\ t>0 # \thinspace . # \label{_auto1} \tag{1} # \end{equation} # $$ # Assume that the wave velocity $c$ is constant. One can easily show # that the function $v(r,t) = ru(r,t)$ fulfills a standard wave equation # in Cartesian coordinates. To this end, insert $u=v/r$ in # $$ # \frac{1}{r^2}\frac{\partial}{\partial r} # \left(c^2(r)r^2\frac{\partial u}{\partial t}\right) # $$ # to obtain # $$ # r\left(\frac{d c^2}{dr}\frac{\partial v}{\partial r} + # c^2\frac{\partial^2 v}{\partial r^2}\right) - \frac{d c^2}{dr}v # \thinspace . # $$ # The two terms in the parenthesis can be combined to # $$ # r\frac{\partial}{\partial r}\left( c^2\frac{\partial v}{\partial r}\right), # $$ # which is recognized as the variable-coefficient Laplace operator in # one Cartesian coordinate. The spherically symmetric wave equation in # terms of $v(r,t)$ now becomes # #
# # $$ # \begin{equation} # \frac{\partial^2u}{\partial t^2}= # \frac{\partial}{\partial r} # \left(c^2(r)\frac{\partial v}{\partial t} # -\frac{1}{r}\frac{d c^2}{dr}v\right) + rf(r),\quad r\in (0,R),\ t>0 # \thinspace . # \label{_auto2} \tag{2} # \end{equation} # $$ # In the case of constant wave velocity $c$, this equation reduces to # the wave equation in a single Cartesian coordinate: # #
# # $$ # \begin{equation} # \frac{\partial^2u}{\partial t^2}= # \frac{\partial}{\partial r} # \left(c^2(r)\frac{\partial v}{\partial t}\right) # + rf(r),\quad r\in (0,R),\ t>0 # \thinspace . # \label{wave:app:rsymm:Cart} \tag{3} # \end{equation} # $$ # That is, any program for solving the one-dimensional wave equation # in a Cartesian coordinate system can be used to # solve ([3](#wave:app:rsymm:Cart)), provided the source term is # multiplied by the coordinate. Moreover, if $r=0$ is included in the # domain, spherical symmetry demands that $\partial u/\partial r=0$ at # $r=0$, which means that # $$ # \frac{\partial u}{\partial r} = \frac{1}{r^2}\left( # r\frac{\partial v}{\partial r} - v\right) = 0,\quad r=0, # $$ # implying $v(0,t)=0$ as a necessary condition. For practical applications, # we exclude $r=0$ from the domain and assume that some boundary # condition is assigned at $r=\epsilon$, for some $\epsilon >0$.