Date: Nov 19, 2012 7:18 PM
Author: yehuda ben-shimol
Subject: Re: System of second-order nonlinear ordinary differential equations

Hi
your code is erroneous, cannot believe you evaluated it
Anyway The following code tun for almost 20 minutes and give results.
Notice that you need to increase the working precision, since the range for
eta is large, and round-off errors accumulate

s = NDSolve[{2*f[eta] + h'[eta] == 0,
f[eta]^2 + f'[eta]*h[eta] - g[eta]^2 - f''[eta] == 0,
2*f[eta]*g[eta] + h[eta]*g'[eta] - g''[eta] == 0,
f[0] == 0,
g[0] == 1,
h[0] == 0,
f[10*^100] == 0,
g[10*^100] == 0},
{f, g, h}, {eta, 0, 500000}, WorkingPrecision -> 100]


Plot[Evaluate[{f[x], g[x], h[x]} /. s], {x, 0, 500000}]


There is a sharp change in behavior, you need to check if this is valid or
an artifact

HTH

yehuda

On Wed, Nov 14, 2012 at 8:29 AM, Anonymous wrote:

> Hello,
>
> I'm new to this forum and also to Mathematica, so please treat me gentle :)
>
> I would solve numerically the velocity profiles of a rotating disk.
> Thefore following system must be solved for the 3 (nondimensional) unknown
> velocity-functions F(eta), G(eta) and H(eta), with eta=nondimensional wall
> distance (see "Boundary Layer Theory" by H. Schlichting):
>
> 2F+H'=0
> F^2+F'*H-G^2-F''=0
> 2F*G+H*G'-G''=0
>
> with the follwing boundary conditions:
>
> F(x=0)=0
> G(x=0)=1
> H(x=0)=0
> F(x->\inf)=0
> G(x->\inf)=0
>
> I tried to implement the problem into Mathematica with the numerical
> solver :
>
> NDsolve[{2*F[eta] + H'[eta] == 0, (F[eta])^2 + F'[eta]*H[eta] - (G[eta]^2
> - F''[eta] == 0, 2*F[eta]*G[eta] + H[eta]*G'[eta] - G''[eta] == 0}, {F[0]
> == 0, G[0] == 1, H[0] == 0, F[1000000] == 0, G[1000000] == 0}, {eta,
> 1000000}]
>
> Plot[Evaluate[{F[eta], G[eta], H[eta]} /. s], {eta, 0, 5}, PlotStyle ->
> Automatic]
>
> I did not arrive to any solution but to many many errors. If you could
> give me any hint I would be really thankful!
>
> Best regards