I have the following problem:

\begin{align} \frac{\partial w}{\partial t} = \frac{1}{r^2} \frac{\partial}{\partial r}\left( r^2 D_1 \frac{\partial w}{\partial r} \right) \\ \\ \frac{dr_d}{dt} = C_1\frac{\left(C_2 + C_3 \left( \frac{r_d}{r_{d,0}}\right)^{0.5} \right) D_1}{2r_d} \end{align}

Where \begin{align} D_1 &= A e^{B w} \\ A &=\operatorname{const} \\ B &=\operatorname{const} \\ C_1 &=\operatorname{const} \\ C_2 &=\operatorname{const} \\ C_3 &=\operatorname{const} \\ r_{d, 0} &=\operatorname{const} \\ t &\ge 0 \\ r &\in [0, r_d] \end{align}

Initial and boundary conditions are:

\begin{align} w(0, r) &= w_0 \\ \frac{\partial w(t, 0)}{\partial r} &= 0 \\ D_1\frac{\partial w(t, r_d)}{\partial r} &= (1-w)_{r_d} \frac{dr_d}{dt} \end{align}

The question is what numerical method is suitable to solve this equations?

What I tried is to solve this equation using Finite difference method but there is non-linear boundary condition, that does not allow to use that method.

  • $\begingroup$ It might help to provide an expression and initial condition for $dr_{d}/dt$, just to get a more concrete understanding of your problem. $\endgroup$ Nov 4, 2014 at 15:16
  • $\begingroup$ @GeoffOxberry I have updated the question, please take a look. $\endgroup$
    – maximus
    Nov 4, 2014 at 16:01

1 Answer 1


All right, so $dr_{d}/dt$ is coupled to $w$ because your diffusion coefficient is a function of $w$. The boundary condition being nonlinear in $w$ isn't a big deal, because after discretization in space, you'll have a collection of differential and algebraic equations in space, and you can use an implicit method to handle it. The trickier thing is that $r_{d}$ changes with time, because that affects how you handle the spatial discretization.

As a first attempt, I'd rescale the spatial coordinate $r$, and re-express your PDE for $w$ in terms of $\xi = r/r_{d}$. In $\xi$, your BCs are now at $0$ and $1$, and it shouldn't really impact the radial symmetry BC or the Dirichlet initial condition. It will affect the flux BC at $r = r_{d}$ (now $\xi = 1$). Rescaling the radial coordinate makes it possible to discretize $\xi$ on $[0,1]$ with fixed node locations (in $r$, the node locations will change with time, except for the node at 0). You should be able to use a finite-difference discretization, and it will be fine.

Other approaches are possible, like FEM with cut cells, but I wouldn't investigate that sort of approach right away unless you're familiar with it.

  • $\begingroup$ Could you please tell more about how would the boundary conditions look like after discretization? The problem for me is that given the boundary condition I can't get solution from it after discretization (due to having exponent in it). $\endgroup$
    – maximus
    Nov 5, 2014 at 6:52
  • $\begingroup$ What about the exponent is problematic? You should get a nonlinear algebraic equation for your flux BC at $r = r_{d}$. $\endgroup$ Nov 5, 2014 at 19:40
  • $\begingroup$ I think I got it. So I will get another equation, which will be solved numerically too. $\endgroup$
    – maximus
    Nov 6, 2014 at 6:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.