[SciPy-user] Solving Two boundary value problems with Python/Scipy
A. M. Archibald
peridot.faceted at gmail.com
Fri Oct 6 10:12:55 CDT 2006
On 06/10/06, John Hassler <hasslerjc at adelphia.net> wrote:
> I don't think that there's a function specifically for boundary value
> ode problems in SciPy, but it is pretty simple to combine an ode solver
> with a zero finder to use the "shooting method." I'm not familiar with
> how rlab or Matlab does it, but the Scilab "bvode" uses a finite
> difference method. If the problem isn't too complex, the shooting
> method is easy to set up, and works as well as the finite difference
> method. (In my vast experience ... well, ok, two applications ... the
> shooting method was more forgiving and less brittle than the finite
> difference method.)
> What sort of bvp do you have?
It seems to me it would be useful for scipy to have an "odetools"
package, providing convenience features on top of our existing ODE
solvers (as well as a better fortran ODE solver, namely lsodar, but
that's beside the point).
Features could include:
* Implementation of the shooting method
* class ODESolution, which provides an interpolated function object
* An implementation (necessarily slow and limited) of the finite
* Tools for working with linear ODEs (generate a complete set of solutions, say)
* Tools for solving eigenvalue problems
Any other suggestions?
I've started thinking about how to do this, and written some prototype
code, but it would be a moderately big project. It should probably
mostly in python, because I imagine people will need to extend and
modify all the classes for their particular problems.
A. M. Archibald
More information about the SciPy-user