I'd like to find the solution of an ODE of order 2 :

sol = NDSolve[{2 phi[x] (1 - 3 phi[x] + 2 phi[x]^2) == 
    Laplacian[phi[x], {x, y, z}, "Spherical"], 
   phi[0.00001] == 0.999999, phi[900] == 0.00000000001}, 
  phi[x], {x, 0.0000001, 1000}]
Plot[Evaluate[phi[x] /. sol], {x, 0, 1000}, PlotRange -> Full]

enter image description here

As you can see it doesn't really work.

I'd like to have a solution where $\phi(0)\approx 1$ and $\phi(\pm\infty)\approx 0$. I wrote approximate values in order not to get singularities.

I think there are theorem that this solution should exist. Actually it corresponds to the radial Cahn-Hilliard equation.

Could you help me please ?

  • 4
    $\begingroup$ NDSolve[...phi[0.001]==0.999, phi[9]==0.001}, phi[x], {x,0.001,9}] finishes without errors, but if I just push the boundaries without thinking about WorkingPrecision and number of steps and all the other things I need to consider to get a numeric DE solver to work on a hard problem then I get a variety of error messages. Can you very gently push those boundaries a little at a time and study the error messages and see if you can find a way to get it to complete without errors and with a reasonably correct solution as you get closer to what you want? $\endgroup$ – Bill Mar 26 '20 at 18:25
  • 2
    $\begingroup$ Note that you are currently setting the boundary conditions to not be at the same place as the range of integration, which is going to add unnecessary complications. $\endgroup$ – SPPearce Mar 27 '20 at 6:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.