 
 
 
 
 
 
Re: FindRoot/NDSolve problem in VS5
- To: mathgroup at smc.vnet.net
- Subject: [mg54851] Re: FindRoot/NDSolve problem in VS5
- From: bghiggins at ucdavis.edu
- Date: Fri, 4 Mar 2005 05:07:47 -0500 (EST)
- References: <d060tf$kpt$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Tony, Due to changes in FindRoot in version 5 you need  to add the
following line to your code
BC[s_?NumericQ] := ((y[x] /. eqsol[s][[1]] ) /. x -> 1)
Then the algorithm for the shooting method is
deq = y''[x] - x^2 y[x] == x + x^3;
eqsol[s_] := NDSolve[{deq, y[-1] == 0, y'[-1] == s}, y[x], {x, -1, 1}]
y[x] /. eqsol[1][[1]] /. x -> 1;
BC[s_?NumericQ] := ((y[x] /. eqsol[s][[1]] ) /. x -> 1)
ss = FindRoot[BC[s] == 0, {s, 0, 10}]
ysol[x_] = y[x] /. eqsol[s /. ss][[1]]
Out[5]=
{s -> 0.5197957482122294}
Out[6]=
InterpolatingFunction[][x]
Cheers,
Brian

