We want to solve
. To do so, try instead
solving
, and adjust the initial `velocity' t
until we discover that at
.
OK, so how do we do that? Lets call the solution of the IVP y(x;t), highlighting
the role of the parameter t. Well, the error at the right is
.
So we need to solve g=0.
This suggests an iterative process where we make an initial
guess for t, and then update according to a secant method:
Actually, Newton's method can be applied, and offers faster convergence.
To do so, we would use
.
Observe that if we differentiate the ODE,
We also have
. Set
.
We have
It follows that
and
the Newton iteration
That is, two ODEs must be solved simultaneously - for y and z.
Indeed, the two
second order equations should be transformed
into a first order system with
four equations.
We can use any of the initial value methods to solve - e.g., midpoint
or Runge-Kutta.
For linear 2nd order equations, this procedure simplifies.
One solves two equations, the original equation for, say, u(x), with
, and a second equation, a homogeneous equation,
for, say z, with
. The solution of the
original problem is then y = u + A z, where A is yet to be determined.
By examining the solutions at x=b, you find
.
There is a technique called multiple shooting, in which a number of ``shots'' are launched from several points in the interval [a,b]. The reasoning is that each of the several shots may yield only a small error, and be easier to correct, whereas the singe shot described above, even if relatively accurate, may lead to a large error at the x=b. Keller's book describes the technique.