Solving ODEs with MATLAB

by L.F. Shampine, I. Gladwell, S. Thompson

This is an excellent textbook that is very easy to read and follow. The problems are enjoyable and interesting. I would recommend it highly.

Download Problem Solutions (Part 1 of 2).
Download Problem Solutions (Part 2 of 2).

Matlab Code For Various Problems:
    Chapter 1 (Getting Started): Chapter 2 (Initial Value Problems):
    • prob_2_8.m (numerically compare AB3 with a linear multistep method)
    • prob_2_10_pt1.m (solving the harmonic oscillator with Heun's method)
    • prob_2_10_pt2.m (solving the harmonic oscillator with the trapezoidal rule)
    • prob_2_10_pt3.m (solving the harmonic oscillator with AM2)
    • prob_2_13.m (an example of an unstable ODE)
    • prob_2_15.m (an comparison of stiff an non stiff solvers on an ODE that becomes stiff)
    • prob_2_16.m (plots of regions of stability for several linear multistep methods)
    • prob_2_17.m (a demonstration as to the ease at which one can solve ODE's in Matlab)
    • prob_2_18.m (graphical display of using a non-stiff solver on a stiff problem)
    • prob_2_19.m (a model of thermal depletion of ozone solved with ode45)
    • prob_2_20.m (the iteration matrix when using an implicit method on a stiff problem is ill-conditioned)
    • prob_2_21.m (odephase2 and odephase3 to display phase space trajectories)
    • prob_2_22.m (demonstration of solution differences as we vary a bifurcation parameter)
    • prob_2_23.m (event location for the cork problem of Dormand)
    • prob_2_24.m (event location for a cannon shot)
    • prob_2_25.m (event location for the pendulum equation)
    • prob_2_26.m (event location to determine a table of solution values)
    • prob_2_27.m (experiments with the coefficient of restitution for ball bouncing)
    • prob_2_28.m (ball bouncing with a terminal wall)
    • prob_2_29.m (modification to the ODE's outfcn to terminate integration at domain boundaries)
    • prob_2_30.m (the ozone model formulated with a mass matrix)
    • prob_2_31.m (numerically integrate the equations of motion for rigid baton)
    • prob_2_32.m (a continuous space, discrete time formulation of the "pump coast down" problem)
    • prob_2_33.m (integrating the double pendulum model)
    • prob_2_34.m (numerical verification that the ODE's resulting from the method of lines in example 2.3.9 are not stiff)
    • prob_2_35.m (solve example 2.3.9 with periodic boundary conditions)
    • prob_2_36.m (use the method of lines to solve the "quench front" problem of Laquer and Wendroff)
    • prob_2_37.m (numerical integration of Emden's equation)
    • prob_2_37.nb (mathematica code computing the Taylor series solution to Emden's equation)
    • prob_2_38.m (numerical solution of Kamke's cylindrical space charge current)
    • prob_2_38.nb (mathematical code computing the Taylor series solution to Kamke's IVP)
    Chapter 3 (Boundary Value Problems):
    • prob_3_1.m (Latzko's equation; a BVP with a well behaved singular point)
    • prob_3_2.m (solving a BVP by developing an asymptotic expansion for its solution at the end points)
    • prob_3_2.nb (mathematica code to derive the asymptotic expansion for problem 3_2)
    • prob_3_3.m (BVP solution to the steady concentration of a substrate obeying Michaelis-Menten kinetics)
    • prob_3_4.m (solving a nonlinear BVP using bvp4c)
    • prob_3_5.m (numerically investigate the conditioning of the linear system the results from having a BC at infinity)
    • prob_3_6.m (Murphy's extended BVP Falker-Skan similarity solution for laminar incompressible boundary layer flows)
    • prob_3_7.m (a BVP for traveling wave solutions to a transport, reaction, and diffusion system)
    • prob_3_8_pt1.m (solving the BVP resulting from the similarity solution for unsteady flow of a gas through a semi-infinite porous medium directly (no asymptotic expansion for large Z is used))
    • prob_3_8_pt2.m (solving the BVP resulting from the similarity solution for unsteady flow of a gas through a semi-infinite porous medium using an asymptotic expansion for large Z)
    • prob_3_9.m (solving the Thomas-Fermi BVP using the asymptotics of the solution as an initial guess)
    • prob_3_9.nb (deriving the asymptotics of the Thomas-Fermi BVP using mathematica)
    • prob_3_15.m (numerical conservation does not necessarily imply an accurate solution)
    • prob_3_16.m (solving the BVP from cannon shot ballistics numerically)
    • prob_3_17.m (Finlayson's axially dispersive turbulent reactor BVP)
    • prob_3_18.m (Bailey et al.'s long thin cantilever beam BVP)
    • prob_3_19.m (Caughy's large amplitude elastic string BVP)
    • prob_3_20.m (the concentration and temperature fields in a turbulent reactor)
    • prob_3_21.m (the axially symmetric shape that experiences the minimal resistance though a rarefied gas)
    • prob_3_22.m (putting a pendulum at the top of its arc)
    • prob_3_23.m (the Falkner-Skan BVP)
    • prob_3_24.m (viscous incompressible flow past a semi-infinite body)
    • prob_3_25.m (experiments with run time of bvp4c)
    • prob_3_26.m (Fisher's BVP)
    • prob_3_27.m (speed improvements due to Matlab vectorization)
    • prob_3_28.m (speed improvements due to providing an analytic Jacobian)
    • prob_3_29.m (efficient solutions BVPs when varying parameters)
    • prob_3_30_pt1.m (solving Ascher's measles ODE's with bvp4c)
    • prob_3_30_pt2.m (an example of using continuation to solve BVPs)
    Chapter 4 (Delay Differential Equations):

John Weatherwax
Last modified: Sat Jul 8 13:21:15 EDT 2006