Comments on Computers and Programming

     You will need to approach the study of chaos differently from other math and science courses you have had.  Although most of the phenomena we will be discussing are described by equations, the equations generally cannot be solved in the usual ways you have learned.  The computer becomes an indispensable tool for understanding chaos.  Fortunately, the equations are usually very simple, and the programming requirements are minimal.

     You have complete freedom to choose a computer and programming language.  The best computer is one to which you have easy access.  You will probably be happier using a personal computer at home rather than a fancier one that you have to access by telephone (modem) or by going to one of the computer labs on campus, unless for some reason you prefer to work away from home.  Most personal computers are either IBM PC compatibles or Apple Macintoshes.  The PCs are more common and tend to be easier to program, although many people prefer the Macintosh's graphical user interface (GUI) to the Windows version that usually runs on PCs.  If you have no other access to a computer, you are welcome to use the machines in the Physics Department computer lab (2409 Sterling).

     Just as the best language for speaking is the one most familiar to you, the best computer language is the one you are most comfortable using.  If you are skilled in a language such as BASIC, C, Pascal, or FORTRAN, get a modern interactive compiler for that language and use it on your PC.  Any language will suffice, and modern compilers in the various languages are so good that there is little reason to prefer one over another.  If you have never done any serious programming, you might start by learning BASIC.  It is easy to learn and more than adequate for the ssignments you will be asked to do.  My personal favorite is PowerBASIC ( for the PC, a nearly fully functional shareware version of which (called FirstBasic) is available for $25.  The closest thing for the Macintosh is Microsoft QuickBASIC, but it's not nearly as versatile, fast, or easy to use as PowerBASIC.  You might visit the DoIT Showroom (1210 West Dayton Street) for advice, demonstrations, and information on how to purchase a suitable compiler.

     Another possibility you may wish to consider is one of the math packages such as Mathematica, Maple, Matlab, MathCAD, Derive, or Theorist, or even a modern spreadsheet such as Excel, Quattro Pro, or Lotus 1-2-3.  This option would be most sensible if you are already highly skilled in its use.  You should be able to complete most if not all of the assignments in this way.  In the long run, you will probably find a conventional programming language more versatile and useful, however.

     In any case, I would advise you to develop your programs as modular subroutines and to document them so that they can be reused.  There will be occasions during the semester where you will need something you did several weeks before.  Especially as we move into the time-series analysis part of the course, you will be developing routines that may be of use to you in analyzing data from your own research.