CS 537 (same as MA-537 and EGR-537) - Numerical Analysis
Credits: 3
Course Description
Floating point arithmetic. Direct methods for the solution of systems of linear algebraic equations. Polynomial and piecewise polynomial approximation, orthogonal polynomials. Numerical integration: Newton Cotes formulas and Gaussian quadrature. Basic methods for initial value problems for ordinary differential equations. Applications of software packages to common problems in science and engineering.
Prereqs: CS/MA 321 or equivalent or graduate standing or consent of instructor. Knowledge of a procedural computer language is required. (Same as EGR/MA 537).
Needed Skills
Students need to have good mathematical background (Calc. 3 and Linear Algebra) knowledge of material covered in CS/MA321, knowledge of a high-level programming language (e.g., C, Fortran).
Learning Outcomes
Students will gain sound understanding of major concepts and problems of numerical analysis; be able to use already existing or design their own algorithms; fully understand floating-point errors and how to cope with them; gain a firm understanding of numerical methods for scientific problems.
Specifically students will be able to:
1. Estimate computation errors
2. Analyze sensitivity of the problem to be solved
3. Select/propose numerically stable methods
4. Understand important properties for a number of basic methods (e.g., Gaussian elimination, Hermite and spline interpolation, basic and composite rules, uniform and least-square approximation techniques, iterative methods for nonlinear equations and fixed points)
5. Modify problems (to increase their smoothness and/or reduce condition numbers) for better algorithm performance
6. Analyze results computed in fl-arithmetic
Measures
These outcomes will be evaluated on the basis of student home-works, exams and class participation that will contain problems related to the outcomes.
CAC Categories
|
Topic |
Core |
Advanced |
|
Math
Fundamentals |
30 |
10 |
|
Data
Structures |
0 |
0 |
|
Algorithms
& Software Design |
4 |
0 |
|
Computer
Organization and Architecture |
0 |
0 |
|
Concepts
of Programming Languages |
0 |
0 |
|
Social
and ethical issues |
1 |
0 |
|
Total |
35 |
10 |
Math Fundamentals (40):
Core (30): estimation of condition numbers and fl-arithmetic errors, proving stability of algorithms, estimating truncation errors, designing and analyzing methods for specific problems.
Advanced (10): norms, elements of functional analysis, problems dealing with multivariate problems.
Data Structures: none
Algorithms and Software (4): Core (4): Writing and testing efficient codes for number of specific problems.
Computer Organization and Architecture: none
Concepts of Programming Languages: none
Social and Ethical Issues (1): Discussion of professional and academic integrity.
Oral Communication (presentations)
none
Written Communication
5-7 home-works and projects
Coverage
Theoretical Content: 60%
Error estimation, approximation and discretization techniques, norms, function spaces (e.g., Hilbert spaces), specific mathematical/engineering problems to be solved numerically
Problem Analysis: 20%
Formulate the problem to be solved numerically, analyze its sensitivity and (eventually) propose a modification more suited for numerical computations
Solution Design: 20%
Choose/design a method that is most suited for particular problem, estimate the cost and verify stability of proposed methods, validate the theoretical results by empirical data
Student Evaluation and Feedback
Students are evaluated on their work (home-works, exams, class participation). Students receive back their homework and exams promptly (next class meeting). These papers are marked to indicate errors and to suggest different/better solutions. Moreover, all problems and their solutions are discussed during lectures.
Course Evaluation Questions
The course has helped me:
37. Understand fl-arithmetic and errors caused by it.
38. Learn basic numerical methods.
39. Identify efficient methods for specific problems.
40. Analyze/understand computed results.
41. Understand the relevance of continuous mathematics to numerical computations.
Possible Textbook
Numerical Analysis, Mathematics of Scientific Computing,
D. Kincaid and W. Cheney,
Brooks/Cole Publishing Company