Credits: 3
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. The emphasis throughout is on the understanding and use of software packages for the solution of commonly occurring problems in science and engineering.
Prereq: CS/MA 321 or equivalent or graduate standing or consent of instructor. Knowledge of a procedural computer language is required.
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).
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:
These outcomes will be evaluated on the basis of student home-works, exams and class participation that will contain problems related to the outcomes.
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.
none
5-7 home-works and projects
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
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.
The course has helped me:
Numerical Analysis, Mathematics of Scientific Computing,
D. Kincaid and W. Cheney,
Brooks/Cole Publishing Company