Go to the first, previous, next, last section, table of contents.


Mathematical basics

We begin with some standard definitions. A differential equation is an equation involving an unknown function and its derivatives. A differential equation is ordinary if the unknown function depends on only one independent variable, often denoted t. The order of the differential equation is the order of the highest-order derivative in the equation. One speaks of a family, or system of equations when more than one equation is involved. If the equations are dependent on one another, they are said to be coupled. A solution is any function satisfying the equations. An initial value problem is present when there exist subsidiary conditions on the unknown function and its derivatives, all of which are given at the same value of the independent variable. In principle, such an `initial condition' specifies a unique solution. Questions about the existence and uniqueness of a solution, along with further terminology, are discussed in any introductory text. (See Chapter 1 of Birkhoff and Rota's Ordinary Differential Equations. For this and other references relevant to ode, see section Bibliography on ode and solving differential equations.)

In practical problems, the solution of a differential equation is usually not expressible in terms of elementary functions. Hence the need for a numerical solution.

A numerical scheme for solving an initial value problem produces an approximate solution, using only functional evaluations and the operations of arithmetic. ode solves first-order initial value problems of the form:

@ifnottex

x' = f(t,x,y,...,z)
y' = g(t,x,y,...,z)
   .
   .
   .
z' = h(t,x,y,...,z)

given the initial values for each dependent variable at the initial value of the independent variable t, i.e.,

x(a) = b
y(a) = c
     .
     .
     .
z(a) = d
t = a

@ifnottex where a,b,c,...,d are constants.

@ifnottex For ode to be able to solve such a problem numerically, the functions f,g,...,h must be expressed, using the usual operators (+, -, *, /, and ^), in terms of certain basic functions that ode recognizes. These are the same functions that the plotting program gnuplot recognizes. Moreover, each of f,g,...,h must be given explicitly. ode cannot deal with a system in which one or more of the first derivatives is defined implicitly rather than explicitly.

All schemes for numerical solution involve the calculation of an approximate solution at discrete values of the independent variable t, where the `stepsize' (the difference between any two successive values of t, usually denoted h) may be constant or chosen adaptively. In general, as the stepsize decreases the solution becomes more accurate. In ode, the stepsize can be adjusted by the user.


Go to the first, previous, next, last section, table of contents.