You are visitor 12556 to this course page.
If you are revisiting this page please use the
'reload' option on your browser to see the latest version.
| Instructors: | Brian G. Higgins |
| Office : | 3012 Bainer |
| Office Hours: | By appointment |
| Phone: | 2-8780 |
| e-mail: | bghiggins@ucdavis.edu |
Mathematica is a computer-based software system for doing mathematics (symbolic calculations), numerical analysis, and visualizing and plotting data. In the December 17, 1999, issue of Science, the excitement and possibilities of Mathematica were captured in John Wass's review of Mathematica 4.0. In that review he states: "It is hard to imagine a scientific software tool that is equally useful to a math professor, a cardiologist, a protein chemist, a population biologist, a civil engineer, an architect, and an atmospheric scientist. Mathematica is just such a program....With a powerful programming language and a dizzying array of functions, the program can be adapted to perform diverse calculations for almost any scientific need."
The overall goal of this course is to introduce the student to the four main areas of Mathematica: graphics,
symbolic calculation, numerical calculation, and programming. We will show how these four areas can be seamlessly
integrated, using functional and rule-based programming methods, to undertake scientific computing. Programming
concepts will be illustrated using mathematical based problems with applications in engineering, physical and
biological sciences, and social sciences. Traditional procedural programming style used in Fortran and C will be
compared to Mathematica's functional and rule-based methods.
One can also use Mathematica for interactive calculations over the internet. Some examples of webMathematica can be found here.
The course will be offered in the College of Engineering Computer Labs so that students will have an opportunity
during each lecture session to extend their skills through practice on examples and exercises. The format for a
typical 100 minute lecture session will be as follows:
The course will cover the following topics (subject to change):
- Lecture 1: Overview of basic programming syntax used in Mathematica (see details).
- Lecture 2: Mathematica Basics: Expressions, rules, patterns, functions, pure functions, functional and rule-based programming (see details).
- Lecture 3: Manipulating Mathematica expressions: e.g., symboloic algebra, manipulating equations,vector calculus; working with notebooks e.g. style sheets (see details)
- Lecture 4: Visualizing and plotting data, e.g., 2D plots, 3D plots of functions and data, contour plots, parametric plots (see details).
- Lecture 5: Finding multiple roots of nonlinear equations, Symbolic and numerical solutions of nonlinear ordinary differential equations, solution of boundary value problems (shooting method) (see details)
- Lecture 6: Finite Difference Methods and Miscellaneous applications 1: Finite difference methods for solving linear and nonlinear BVP in ODES; data analysis,fitting data, regression analysis;parameter estimation in ODES;image analysis;bioinformatics(see details).
The lecture notes and supplemental tutorials (see links above) are available as Mathematica notebooks and can be used as study aids for students to develop programming skills without becoming frustrated. Although there are no official prerequisites for the course, the typical student should have at least 1 year of calculus, some knowledge of linear algebra and differential equations, and some previous programming experience (C, Fortran, Basic). Enrollment is limited to 30 students. Topics to be covered in the course will be adjusted to meet the average background of students enrolled in the course. If you are unsure about how this course will be administered, please contact bghiggins@ucdavis.edu
Additional examples of how Mathematica can be used in chemical engineering can be found at Prof. Brian Higgins' web site.
The textbook has been assigned for the course is:
The Beginner's Guide to Mathematica Version 4 by Jerry Glynn and Theodore Gray.
An excellent supplementary text for more advanced users is Mathematica Navigator by H Ruskeepaa.
I have also provided an extensive reading/reference list
that students may use. Some of the books on the reading list are available at the UCD Bookstore. You may also order
books on the reading list through an online bookstore. e,g. Amazon Books
Course Grade
The course will be graded as P/NP. There will be no final or midterm exams.The grade for the course will
be based on student participation in class discussions, several designated homework assignments, most of
which can be completed in the workshop sessions, and a 2 page essay on any aspect of Mathematica (submitted as a Mathematica notebook).