FindRoot in Version 5
- To: mathgroup at smc.vnet.net
- Subject: [mg46179] FindRoot in Version 5
- From: bghiggins at ucdavis.edu (Brian Higgins)
- Date: Tue, 10 Feb 2004 00:05:48 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
Hi, In version 4 I used the following code to solve nonlinear BVP using NDSolve system[?_] := {y1'[x] == y2[ x], y2'[x] == -Sin[y2[x]] + Cos[5x], y1[-1] == 0, y2[-1] == ?}; myODEsoln[?_] := NDSolve[system[?], {y1[x], y2[x]}, {x, -1, 1}] yend[?_] := (y1[x] /. myODEsoln[?]) /. x -> 1 bc = FindRoot[First[yend[?]] == 0, {?, -2, 2}]; Plot[Evaluate[y1[x] /. myODEsoln[? /. bc]], { x, -1, 1}, AxesLabel -> {"x", "y1(x)"}]; In Version 5 is does not work. I have read on this group that FindRoot was modified so that it now requires that in the above code I replace yend[Q_] with yend[Q_?NumericQ]. But now the problem is that FindRoot fails to converge. So my question: Does anyone know what other modifications have been made to FindRoot so that I can get this code and many others like it to work again? Thanks much Brian