Math 181: Applied Mathematics Seminar

Computational Mathematics 

Instructor: E. Arthur Robinson, Jr., Professor of Mathematics

Department of Mathematics
Funger 428Q
2201 G St. NW
Washington DC 20052

(202) 994-6237
robinson@gwu.edu
http://home.gwu.edu/~robinson


Required Texts:

? Ke Chen et al, Mathematical Explorations with MATLAB, (paperback edition), Cambridge University Press, 1999, ISBN 0521639204.
? George Gratzer, First Steps in LaTeX, Springer Verlag, 1999, ISBN 0817641327.
? Heal, K. M., M. L. Hansen & K. M. Rickard, Maple V: Learning Guide , Springer, 1998. (Unfortunately this book seems out of print or out of stock)
? Additional readings from handouts or the WWW will be assigned.

Course Description:

This course is intended to serve as an introduction to a wide range of modern computational methods and technologies for solving mathematical problems and for disseminating their solutions. It is aimed at mathematics students and students in fields having significant mathematical components, including statistics, the physical and biological sciences, computer science, engineering, and economics.
Computational mathematics is in a period of revolutionary development, and for any problem there is an awesome selection of hardware, software, algorithms and models from which to choose. A theme of this course will be to discover what tools are available, how they work, and how to choose the best tool for a given problem.
The topics covered will include some classical combinatorial, geometric, graphical and numerical algorithms. Efficiency and accuracy will be stressed. We will also discuss some contemporary ideas including chaos, fractals, wavelets, cellular automata, simulated annealing, neural networks and evolutionary algorithms.
We will begin by developing basic skills in two flexible modern problem-solving environments: Matlab and Maple. We will compare these environments to traditional programming languages and to various special purpose software tools. We will also study the mathematical typesetting package LATEX.

Organization:

Class time will be approximately evenly divided between the classroom and the lab. Homework will consist of readings and the completion of lab exercises. Grades will be based on weekly lab assignments, two projects (including an in-class presentation of the final project), and participation in class discussions. Prerequisites for this course are Math 33, Math 124 and some programming knowledge.

Tentative Schedule:

(The actual schedule will depend on availability of needed software and interests of the class).

? Week 1: (short week): Introduction to Computational Mathematics. Overview of Computational Mathematics. Overview of the course. Lab: Basic Unix, basic HTML.
? Week 2: Introduction to LaTeX and postscript. The LaTeX typesetting system as the state of the art in technical document preparation. Postscript and PDF formats. Posting technical documents on the web. Lab: Using LaTeX and postscript.
? Week 3: Discussion of the mathematical modeling process. Classical models including algebraic equations, linear models, ordinary and partial differential equations, optimization, and stochastic models. Lab: Introduction to Matlab.
? Week 4: Case study in numerical methods: quadrature. Basic methods of quadrature. Analysis of errors. Adaptive and Monte Carlo methods. Lab: Programming in Matlab.
? Week 5: Computer arithmetic errors in calculations. Basic theory of integer and floating point arithmetic. IEEE floating point standard. Round off errors and loss of significance. Interval arithmetic and arbitrary precision arithmetic. Lab: Introduction to Maple.
? Week 6: Lab: Computer Algebra systems. The strengths and weaknesses of computer algebra systems. Exploring the capabilities of Maple.
? Week 7: Comparison of various computing environments. Review of Fortran and C. Comparison of Maple, Matlab and traditional languages. Discussion of object oriented programming and Java. Lab: Benchmarking.
? Week 8: Intermediate computer literacy: Compression and encryption algorithms. The internet and TCP-IP. Operating systems and graphics environments. Overview of available computational resources. Free software vs commercial software.
? Project 1: Choose one substantial computing environment (either general purpose or special purpose) that available for free over the internet. It must be one you have not used before. Download and install it on some computer system. Run several substantial test problems. Write a 5 page review of the software including: what is the software intended for and who are its likely users? How easy or hard is it to get up and running? How easy or hard is it to use? Does it seem to serve it’s intended purpose? Due March 16.
? Week 9: Algorithms and data structures: introduction to basic computer science.  Lab: Implementing basic combinatorial and discrete geometry algorithms.
? Week 10: The performance of programs. Computational complexity and computability. Measuring and improving the efficiency of a program or an algorithm. Computational complexity: the theoretical limits to this process. Lab: Studying the performance of algorithms.
? Project 2: This will be your final project. It should consist of an in-depth analysis of a case study from a field of your interest. You should discuss the scientific phenomena being investigated, the mathematical model used, the numerical approach, the computational implementation and the end results. An abstract is due March 30. The project should prepared with web based content in a form that can be presented to the class at the end of the semester. The subject of the final project is to be mutually agreed upon by the student and instructor.
? Week 11: Classical numerical analysis revisited. Numerical methods for solving ordinary and partial differential equations. Lab: Applications to physical, biological and social sciences.
? Week 12: Fourier Methods and wavelets. The discrete Fourier transform and the FFT. The wavelet transform. Lab: Experiments with transforms.
? Week 13: Specialized software. Many specialized computing environments are available for solving problems in different fields. Lab: Molecular biology software.
? Week 14: Some newer mathematical models and numerical techniques. Topics may include fractals and chaos, neural networks, evolutionary algorithms. Lab: Experiments with some of these models in different environments.
? Week 15: Student presentations.