Physics 426: Essential Mathematica for Students of Science

James J. Kelly

Spring 2006

Mathematica is an environment for technical computing that integrates numerical, symbolic, graphical, and typesetting tools. These tools help one to focus more upon the conceptual development and visualization of the solution to a problem than on details of algebra or procedural programming. The concepts and tools are presented in a systematic fashion using an interactive, tutorial format in which students use the program in class.  While many books offer examples of how to do things with Mathematica, here you will learn how Mathematica actually works so that its methods will begin to seem natural and almost self-evident as you begin to think in Mathematica style.  Detailed applications to interesting problems in physics, biology, and other fields will be presented.  

Goal: conceptual and operational mastery of the tools and techniques most relevant to scientists and engineers.

Prerequisites: calculus and basic physics. No prior experience with Mathematica is needed. The course is intended for a broad audience, not just for physics students.

Instructor: James J. Kelly        Phone: 405-6110        e-mail:jjkelly@umd.edu

Class schedule: TuTh 12:30 - 1:45 in PLS 1129 (Plant Sciences Teaching Theater)

Class format: tutorial style where each student has a computer and interacts with the material during class.

Courseware: available electronically from https://ttclass.umd.edu/users/class/phys426 (password protected).  Note that Internet Explorer will present the site in web folder format, which facilitates drag-and-drop copying.

Program: Mathematica Version 5.  The university has a site license that makes the program available for use at many locations on campus, but you will probably need a personal copy for use at home.  The student version contains all features of the standard version and is available from the bookstore.  Alternatively, a 15% discount is available from the Wolfram online store using http://media.wolfram.com/brochures/M52StudentFlyerPD1267.pdf, but you should still compare prices -- there are several licensing options.

Office hours: TuTh 10-12 in Room 2215 C.  Although I prefer that you use the scheduled office hours, I am often available at other times also.  Please come frequently.

Required text: none. The tutorial courseware and online versions of the The Mathematica Book will be sufficient.

Useful supplements:

Homework: will be assigned at weekly or bi-weekly intervals. Completed work should be submitted electronically in the form of Mathematica notebooks containing both the problems and their solutions. Keep your own copies -- comments and corrections will be made within the files submitted.

Project: the term project should be a well-written Mathematica notebook that develops the solution to a problem of interest to the student. The project schedule and guidelines may be found at project guide.

Exams: none

Grading: homework 50%, project 50%

Tentative Outline

  1. Getting started
    1. brief survey of capabilities
    2. interacting with the front end
    3. basic concepts and first look at some important functions
  2. Programming techniques
    1. types of functions
    2. arguments and options
    3. variable scoping and modular programming
    4. functional programming
    5. recursive techniques
    6. examples
      1. cicada - synchronized emergence of insect populations
      2. iterated function systems -- logistic map, fractals, etc.
      3. cobweb diagram for logistic equation
  3. Plotting
    1. basic syntax
    2. embellishments
    3. manipulating graphics objects
    4. plot types
    5. graphics primitives
    6. animation
  4. Symbolic manipulation
    1. internal representation of expressions
    2. pattern matching
    3. simplification
  5. Algebra
    1. symbolic transformations
    2. solving equations
    3. example: binary collisions
    4. eigensystems
    5. example: normal modes of linear triatomic molecule
    6. complex variables
  6. Calculus
    1. differentiation
    2. limits and expansions
    3. integration
  7. Differential equations
    1. symbolic methods
    2. numerical methods
    3. stiff equations
    4. examples
      1. home run
      2. van der Pol oscillator
      3. Duffing equation
      4. chemical oscillators
  8. Time series analysis
    1. general properties of Fourier series
    2. frequency analysis for periodic behavior
    3. chaotic systems

Useful links:


Last revised: 3 January 2006