Iode runs under either Matlab or Octave (their programming languages are mostly compatible). For instructions on downloading, installing and running all the needed software, see Appendix A. If your computer already has Matlab or Octave installed, then all you need to get is Iode. Experienced users can proceed directly to www.math.uiuc.edu/iode/ to download it.
The graphical user interface for Iode is supported only under Matlab, version 6.0 or later. This manual describes the text-based user interface, which runs under earlier versions of Matlab and also under Octave. The graphical user interface offers certain features and plotting options that are unavailable in the text-based interface.
A good way to learn Iode is simply to explore it. Choose various options and see what happens. Also, the built-in help features in Matlab and Octave are your friends. For example, typing help euler at the prompt will give information on the module euler.m.
Please let us know if you encounter problems with Iode, or if you have suggestions for improvement. To contact us, see www.math.uiuc.edu/iode/.
From a programming perspective, the main point of Iode is that it is modular and has well-defined interfaces. This has several useful consequences. For example, it is easy for the user to customize Iode, or to create and plug in new modules. Simple modules of this sort can be created even by users without much programming experience. In fact, Iode was born out of frustration with other educational packages that conceal their inner workings from the user.
The mathematical modules (such as df.m or euler.m) are usable in Matlab and Octave without the menus, and much of the code is easily extensible. Users are encouraged, and in some of our classes expected, to look at the code and modify it, take it apart, put it back together, and so on. For example, Appendix D discusses how to create your own solver module for numerically solving ODEs. On the other hand, Iode comes with a user interface that exposes most of the capabilities of the mathematical modules, and so you can use Iode even if you don't have any programming skills. This manual will mostly be concerned with explaining the user interface.