MEDGAR EVERS COLLEGE of CUNY
Department of Physical, Environmental and Computer Sciences
Department Office, Carroll 417 - Phone 718-270-6453
Scientific Programming (CS 345), Spring 2005
COURSE DESCRIPTION: This course is a survey of numerical algorithms for scientific computation involving both data and images. It covers basic concepts of numerical error, interpolation, integration, regression and others.. Computer implementations aspects are also investigations. Student programming applications will involve real-world datasets from NASA and NWS using C++ and IDL.
PREREQUISITES: Math 203, CS 246
COURSE OBJECTIVES:
- To teach students that “algorithms that are equivalent mathematically may behave very differently”
- Implementation of numerical methods in C++ and IDL
- Data and Image Analysis using IDL
COURSE METHODOLOGY: This course will consist of both lecture and lab components. Students will be responsible for implementing lab projects in class and will be graded on in-class work. The lab components will represent initial stages of programming projects that must be completed outside of class time.
.COURSE MATERIAL:
Required Text: Numerical Recipes in C: The Art of Scientific Computing, by William H. Press, Brian P. Flannery, Saul A. Teukolsky, and William T. Vetterling, 2nd Edition, Cambridge University Press
Supplemental Text: IDL Programming Techniques by David Fanning, 2nd Edition
COURSE REQUIREMENTS AND GRADING PROCEDURE
Final grade will be determined using a weighted average of homeworks, programming projects, exams, lab assignments, the final exam and a final presentation as follows:
1. Programming Projects 25%
2. Homework 10%
3, Labs 10%
4. Exam 1 15%
5. Final Exam 30%
6. Final Presentation 10%
Academic Requirements and Regulations: Students who officially withdraw from a course between the 4th through the 8th week receive a grade of W, which is not counted in computing the grade point average. Courses officially dropped after the 8th week of class will appear as a WF and count as an F grade. INC (Incomplete) or ABS (absent) grades will only be given to students who are passing the course.
Honor Code and Plagiarism: Students are required to sign and adhere to the departmental honor pledge. Check with the department for a copy of the pledge.
CUNY Proficiency Examination (CPE)
The CPE is a graduation requirement. All students between 45-60 credits are required to sit for and pass the CPE. You have only three chances to pass this examination. Each missed scheduled examination after the 45 credit mark counts as a failure. For more information about this requirement, contact the Medgar Evers College CPE Liaison.
COURSE OUTLINE:
Week 1 - Overview
Computer Languages and systems for Scientific Programming
Error and Approximation
Lab: Series computation and complexity
Week 2 – Floating Point representation
Lab: Taylor series approximations
Week 3 - Numerical Integration – 1
Lab: Riemann Sums
Week 4 – Numerical Integration – 2
Lab: Trapezoid Rule
Week 5 – Numerical Integration – 3
Lab: Simpson’s rule
Week 6 – Curve-fitting and function approximation
Lab: Data Analysis application
Week 7 – Root-Finding – Newton’s Method
Lab: Implementation of examples
Week 8 – Introduction to IDL
Lab: Integration using IDL
Week 9 – IDL Graphs and Plots
Lab: Blackbody Radiation exampleAll IDL-based labs will involve applications with NASA mission datasets
Week 10 – Image and Data Analysis using IDL, scaling, displaying, image statistics, etc.
Week 11 – Image Enhancement Techniques
Week 12 - Image Transformations – spatial domain filtering
Week 13 – Image Transformations – frequency domain filtering, FFT
Week 14 – Survey of selected pattern recognition techniques