| CSC 245A
Computer Applications in Science and Mathematics
[formerly CSC 245] |
4 cr. Q |
Techniques of numerical analysis (solution of equations, interpolation,
regression, numerical integration, numerical solution of differential equations)
are implemented on the computer and applied to problems selected from physics,
chemistry, astronomy, and other sciences. The course includes an introduction
to Fortran90, stressing its computational and mathematical features. Three
lecture hours and two hours of scheduled laboratory per week plus programming work
outside of class.
Prerequisites: CSC 202 or CSC 202J, MAT 220.
Note: This course satisfies the Quantitative core requirement.
Goals:
The aim of this course is to acquaint the student with the special
problems and techniques relevant to mathematical and scientific computation, illustrated
by concrete problems from a variety of scientific areas.
Objectives:
Upon completion of the course, the student will be able to:
- CO1: describe the computer representation of floating-point values and the
associated limits of size and precision;
- CO2: understand and explain the distinction between accuracy and precision;
- CO3: understand and implement standard techniques for the numerical solution of
equations in one unknown;
- CO4: understand and implement standard techniques for interpolation and approximation
based on a set of tabulated values;
- CO5: understand and explain the concepts of unstable solution methods and the
propagation of errors;
- CO6: demonstrate familiarity with the extension of standard methods to systems of
equations and the use of vector and matrix techniques;
- CO7: demonstrate familiarity with the computational and mathematical facilities of
a specific programming language (currently Fortran90);
- CO8: demonstrate the ability to analyze a problem statement in an area of science,
determine appropriate mathematical formulas and techniques for its solution, and design,
write, and test an appropriate program to solve the problem.
Topics:
- introduction to computer arithmetic
- integer vs. floating point values
- a computer's discrete number system; machine epsilon
- truncation and round-off errors in numeric calculations
- accuracy vs. precision
- introduction to Fortran90
- Fortran90 language syntax and program structure
- Fortran90 standards for I/O, structure, style, and documentation
- subprograms, parameters
- functions: intrinsic functions, statement functions, function subprograms
- mathematical techniques:
- solution of transcendental equations (bisection method, substitution method,
Newton-Raphson and secant methods)
- approximation (interpolation, extrapolation, spline functions, Taylor
polynomials and other partial-sum approximations, least-squares approximations)
- numerical integration (trapezoid rule, Simpson's rule, and modifications)
- numerical solution of ordinary differential equations
- applications drawn from mechanics, hydrodynamics, ballistics, chemistry,
and other sciences
- use of mathematical software packages such as Mathematica
(depending on time and availability of software)
Assignments:
Five or six programming projects are assigned, illustrating some of the major methods
of numerical mathematics. All projects are drawn from concrete problems in the
sciences, and necessary background and formulas from appropriate areas are supplied
through lectures and library research. There will also be periodic laboratory
exercises and written assignments on mathematical and programming topics.
All programs must conform to departmental guidelines for program
design and implementation, and all lab reports must conform to the written guidelines
supplied by the instructor. Regardless of numeric average or grades on individual
assignments or examinations, a student will not be eligible for a passing grade in the
course unless he or she has submittted a lab report for every laboratory exercise and
programming assignment within the time-frame specified by the instructor.
Note: The prerequisites of differential and integral
calculus are taken seriously. Students are expected to be familiar with the
concepts of continuous and differentiable function, Riemann-integrable function,
Intermediate Value and Mean Value theorems, and the properties (including graphs)
of the standard elementary functions: polynomial, rational, nth root, trigonometric,
inverse trigonometric, exponential, and logarithmic.
Examinations and quizzes: There will normally be a midterm examination, two
or three shorter quizzes, and a comprehensive final examination.
Final grades will be determined using the following approximate weights:
programming assignments - 50%; written homework - 15%; quizzes - 10%; midterm and final
examination - 25% total.
Bibliography:
- Acton, Forman S. Real Computing Made Real. Preventing Errors
in Scientific and Engineering Calculations. (Princeton University
Press, 1996)
- Adams, Brainerd, Martin, Smith & Wagener. Fortran 90 Handbook: Complete
ANSI/ISO Reference. (Intertext/McGraw-Hill, 1992)
- Bennett, W. R. Scientific and Engineering Problem Solving with the
Computer. (Prentice Hall, 1976)
- Carnahan, Brice; Wilkes, James O. Digital Computing and Numeric Methods.
(John Wiley, 1973)
- Ellis, T. M. R.; Phillips, Ivor R.; Lahey, Thomas M. Fortran 90 Programming
Addison-Wesley, 1993 reprint.
- Forsythe, Chester. Contemporary Computing for Engineers and Scientists
Using Fortran 90. (PWS Publishing Company, 1997)
- Metcalf, Michael; Reid, John. Fortran 90 Explained.
(Oxford University Press, 1993 reprint)
- Preuss, William H.; Flannery, Brian P.; Teukolsky, Saul A.; Vetterling, William T.
Numerical Recipes in FORTRAN. The Art of Scientific
Programming. Second Edition. (Cambridge University Press, 1992)
Salem State Home •
Computer Science Home •
Faculty •
Computer Studies Major •
Flow Sheet
Computer Studies Minor •
Courses •
Course Sequence Diagram •
Computer Laboratories
|