
Re: Numerical ODEs
Posted:
May 13, 2013 11:54 PM


Am 13.05.2013 17:28, schrieb José Carlos Santos: > On 12/05/2013 21:32, Peter Percival wrote: > >>> This question is perhaps too vague to have a meaningful answer, but >>> here it goes. >>> >>> In what follows, I am only interested in functions defined in some >>> interval of the type [0,a], with a > 0. >>> >>> Suppose that I want to solve numerically the ODE f'(x) = 2*sqrt(f(x)), >>> under the condition f(0) = 0. Of course, the null function is a >>> solution of this ODE. The problem is that I am not interested in that >>> solution; the solution that I am after is f(x) = x^2. >>> >>> For my purposes, numerical solutions are enough, but if I try to solve >>> numerically >> >> What method are you using? I'm just being curious, I don't know a >> solution to your problem. > > I use Mathematica and, more specifically, the NDSolve command. I suppose > that the default method that it uses is the Euler method.
Mathematica methods can be discussed in the moderated group
comp.softsys.math.mathematica
Mathematica yields general solutions of
DSolve[ f'[x]==2 Sqrt[f[x]], f[x], x]
You can use general solutions (of an approximation to the original equation ) at branch points or nonLipschitz points of ( x0, f(x0) ) to get a first guess of a nonsingular start value (x0+h, f(x0+h) ) as data for NDSolve. The final numerical solution should always be checked by a Plot of {f'[x] 2 Sqrt[f[x]]}.
Mathematica is able to DSolve or NDSolve using the substitution method I suggested to remove the branch point
NDSolve[{ D[g[x]^2],x]==2 Sqrt[g[x]^2], g[x]==0},g,{x,0,1}]

Roland Franzius

