Math 615 Applied (Continuum) Numerical Analysis
revised
syllabus
Course Description: 3.0
credits. Methods for numerically approximating partial
differential equations (PDEs) and related problems on computers; PDEs
are the underlying structure for most problems of flow, fields,
thermodynamics, deformation, quantum fields, curvature, etc.
Mathematical analysis of these numerical methods. Practical and
abstract approaches to this numerical analysis: (i) how are these
methods implemented, verified, and used? (ii) why are they stable
and do we know in advance that they converge?
Most classtime will be lecture, with Matlab/Octave/Pylab
(=MOP) demonstrations whenever I can fit them in. I will
help you started with MOP,
but you must show initiative in learning to do actual numerical
computation. Homework assignments and a student-chosen project
will include actual implementation in MOP.
Abstract but precise thought is essential in order to understand the
choices among numerical methods one faces in solving major
problems. Thus all homework assignments will have mathematical
exercises, and in these you will be asked to "show" and "prove".
Formal proof style is not important, but you'll need to give clear
presentations of sufficiently-general logical arguments.
The emphasis is on finite difference methods. I will only gloss
spectral methods, finite elements, finite volume methods. We will
think in terms of vectors and matrices, and not be satisfied with lots
of numbers from a computer program. Instead of a list of finite
difference schemes, for instance, we will seek the underlying linear
algebra structure. The course will include some real nonlinear
examples, for which one uses a sequence of approximating linear
problems.
Goals: At the end this course you
will not be a professional numerical analyst. But you will be
able to evaluate and use many numerical tools for solving scientific
and engineering problems, and you will be able to code some of the
basic methods (i.e. for the purpose of prototyping more serious
solutions). Furthermore you will have the mathematical start
needed to take the next steps to learn the finite element method,
spectral methods, parallel-izable matrix methods.
Calendar: A
day-to-day tentative schedule for the semester is at www.dms.uaf.edu/~bueler/Math615S12.htm.
Prerequisites: Informally: undergraduate ordinary
differential equations, undergraduate linear algebra, exposure to the
basic ideas of numerical analysis, and exposure to Fourier series and
separation of variables (for solving the classical linear PDE boundary
value problems). Also some exposure to computer programming. Formally: The prerequisites
are MATH 302, MATH 310, MATH
314, and MATH 421 or permission of the instructor. CS 201 and
MATH 422 are not specifically needed, though they are nice things to
know.
Textbook: The required
text is K. Morton and D. Mayers, Numerical
Solution
of Partial Differential Equations, 2nd ed. Cambridge
Univ. Press 2005. There are other textbooks on numerical analysis of
PDEs, but I actually like
this one. We will cover chapters 1, 2, 3, 4, first half of 5,
some of 6, and a little of 7. Four other texts are recommended,
of which two are freely available online a page at a time. See www.dms.uaf.edu/~bueler/Math615S12.htm
Your Grade = Homework + Project + Midterm: Fifty
percent of the course, and the grade, will be based on nearly weekly
homework
assignments, including on the last assignment which will
be worth double and which is a modest take-home
final
exam. Here is where you will learn the mathematics
and gain breadth and perspective. You will be asked to think
abstractly on some problems and to use MOP on many
others. (For MOP
problems expect to make a program about a half-page long.)
It is assumed that students in this class have in mind, or can acquire, specific
modelling problems in applied fields which can be used for a project. These will
mostly, but not exclusively, be PDE problems. Students often use
a simplification of a thesis/dissertation project, for instance.
I am eager to help and advise on choosing and refining such
problems. Thirty-five
percent of the grade in the course will be on the project.
Two project assignments will be given, the first part a preparatory
stage due midsemester, and the remainder due at finals time. Both
mathematical analysis and actual numerical computation are required on
your project.
Finally, there will be a one-hour in-class midterm exam worth only fifteen percent of the course
grade. The purpose is to give a midsemester opportunity to review
basics before expanding our goals in the second half.
The course grade will be determined by from
homework+project+midterm according to the schedule at right
--->
I will use plus/minus grades as indicated. |
Percent
91 --100 %
88 -- 90 %
84 -- 87 %
76 -- 83 %
73 -- 75 %
69 -- 72 %
61 -- 68 %
57 -- 60 %
41 -- 56 %
0 -- 40 %
|
Grade
A
A-
B+
B
B-
C+
C
C-
D
F |
Policies and makeup exams: The department has
specific policies on incompletes, late withdrawals, and early final
examinations, etc; see http://www.dms.uaf.edu/dms/Policies.html.
You
are
covered by the UAF Honor Code. I will work with the Office of
Disabilities Services (208 Whitman, 474-5655) to provide reasonable
accommodation to student with disabilities.
Programming in the course: You
will use Matlab, Octave, or Pylab (=Python+scipy+matplotlib), called "MOP" from now on. Matlab is commercial while Octave and Pylab are free and open
source. Octave a clone
of Matlab so the same
programs will run in either. Programs in Matlab and Octave
(and occasionally Pylab) will appear on my website. These
can be used in homework problems and in projects. Copious resources are
available for learning Matlab/Octave/Pylab.
See
my
modest Matlab/Octave tutorial
and
links
page (www.math.uaf.edu/~bueler/MatlabEx.htm).
MOP are languages designed to do numerical analysis
coursework. Mathematical and graphical inputs and outputs are
easily manipulated. Matrices appearing in problems can be easily
analyzed. Many of the operations appearing in numerical problems
are natural and quick in MOP, and require much more work in
compiled languages like C or FORTRAN. Even
established compiled-language programmers will find it a desirable
prototyping tool.
Students with no programming experience, or fear of fiddling
around at a command line, will have a harder time. The
programming experienced in Math 310 is sufficient as preparation,
however, as is any computer science programming course. Students
who are well-established and secure in programming are encouraged to
learn both Matlab/Octave and Pylab. Other compiled
languages (e.g. C and FORTRAN) could be used but at very
significant disadvantage; the programs are longer and harder to
understand.