Welcome to CSI 801 / CSI 610

Foundations of Computational Science

Spring, 2000

Instructor: James Gentle

Instructor's email: jgentle@gmu.edu

Class meets on Thursdays from 7:20pm to 10:00pm.

This Web page will evolve as the semester progresses.


This course is about scientific computation. It emphasizes the role of computation as a fundamental tool of discovery in the development of science. The topics include numerical methods for applications in science, scientific software development and use, and methods for simulation.

Prerequsites for this course include CSI 700, or a similar course in numerical methods, familiarity with the Unix operating system, ability to program in either Fortran or C, and a background in the mathematical or natural sciences.


Student work in CSI 801 (and the relative weighting of this work in the overall grade) will consist of
  • individual homework assignments (15)
  • a semester project (25)
  • an in-class midterm (25)
  • a final exam consisting of an in-class component and a take-home component (35)
  • The requirements for CSI 610 and the grading are similar, except for the semester project. There will be no project for CSI 610.

    Each student will prepare a Web page for presentation of the project and for some of the smaller assignments.

    The individual homework assignments will generally be due weekly, and credit will be assigned based on their timely completion. Students are expected to submit the assignments when the assignments are due, whether the student is able to be present at the class or not.

    The primary text for the course is Foundations of Computational Science, available in the George Mason copy center.
    Supplementary references are Numerical Recipes (either for Fortran or for C), by Press et al., and Code Complete , by McConnell, and notes by the instructor.


    Schedule

    (subject to adjustment)

    January 27, 2000

    The computational sciences: Overview
    Discussion of a student project completed in Fall, 1999;
    presentation by Imed Ben Chouikha and John Pierce
    Machine representations and numerical computations
    Numerical algorithms
    Assignment: Exercises 1.1, 1.3, 1.4
    (Numbered assignments refer to Foundations of Computational Science.
    The assignments should be completed by the class one week from the date the assignment is made.)

    February 3, 2000

    More on numerical algorithms
    Software engineering
    Software documentation
    Design, data structures
    Computer architecture and its relation to software
    High-performance computing
    Assignment: Exercises 1.14, 1.16, 1.21, 1.22, 1.24

    February 10, 2000

    Guest lecture: Dr. Tarek El-Ghazawi:
    High-performance computing
    Parallel processing
    *** Team project reports ***
    Assignment: Exercises A.1, use of MPI, documentation development

    February 17, 2000

    Random number generation and Monte Carlo methods
    Assignment: Exercises 2.2, 2.7, 2.10, 2.18, 2.25, 2.26, 2.31

    February 24, 2000

    Numerical linear algebra; solving linear systems
    Fitting linear equations to data
    Vectorization of code
    Assignment: Exercises 3.18, 3.19, 3.20, 3.25, 3.34, 3.37

    March 2, 2000

    *** All homework through Chapter 3 due ***
    Nonlinear systems
    Optimization
    Assignment: Exercises 4.2, 4.3, 4.7, 4.10, 4.11, 4.13

    March 9, 2000

    *** Midterm (in class; closed book) ***
    Links to previous midterms (Postscript): Fall 95 ... Fall 98 ... Fall 99 ... (Fall 99 solutions) ... Fall 99 (makeup)
    Hints and solutions for homework assignments

    March 16, 2000

    Spring recess; no class

    March 23, 2000

    Review of midterm dvi ...... TeX
    Estimating functions
    Fitting models to data
    Assignment: Exercises 5.1, 5.2, 5.3

    March 30, 2000

    *** Project status reports (these will be graded) ***

    April 6, 2000

    Guest Lecture: Dr. John Guillory
    Ordinary differential equations
    Smoothing data and more on fitting models to data
    Assignment: Exercises 5.7, 5.8, 5.9, 5.11
    ***The lecture on smoothing is postponed until April 13, and the assignments for April 6 and 13 are switched.

    April 13, 2000

    Numerical methods for ODEs
    Assignment: Exercises 6.1, 6.3, 6.5, 6.6, 6.7, 6.9, 6.10

    April 20, 2000

    Numerical methods for PDEs
    Fitting differential equation models to data
    Assignment: Exercises 6.11 (get data), 6.12 (get data)

    April 27, 2000

    *** Final project presentations ***

    May 4, 2000

    *** All homework due ***
    Final project presentations continued if necessary
    Parallel computing
    Complex code management
    Hand out take-home portion of final

    May 11, 2000

    *** In-class portion of final exam ***



    Computational Resources

    Labs with Unix workstations are available for use in this class in both CSI and SITE.
  • CSI facilities. The main CSI computer network is science.gmu.edu. The IP numeric address is 129.174.44.11
  • Software available in SITE computer labs.

    It will be necessary to use Unix, C or Fortran, and various application packages in this course. Some notes on these systems are available.

    Indexes of Software

  • GAMS, general (Guide to Available Software, NIST)
  • GAMS categorized list of software
  • Netlib libraries
  • StatLib Index at Carnegie Mellon.
  • Econometric Links of Econometrics Journal (Not just for econometrics!)

    Information about Specific Systems

  • Fortran 90
  • html
  • Java
  • html conversion filters
  • Emacs
  • LaTeX
  • LaTeX (may be better for beginners)
  • PostScript
  • S (or S-Plus) Cheatsheet (courtesy of Barry Brown, University of Texas at Houston)
  • IMSL Fortran Libraries
  • IMSL on science.gmu.edu

    Other Resources

    There is a variety of material available over the net. An important starting point for the field of numerical analysis is the NA Digest Home Page.

    An interesting activity sponsored by the U.S. Department of Energy is the Computational Science Education Project, which has resulted in many easily accessible documents and demos. The CSEP Home Page is a good starting place.

    The most important WWW repository of statistical stuff (datasets, programs, general information, connection to other sites, etc.) is StatLib Index at Carnegie Mellon.


    Students

    Student list
    The students in the class all have homepages on which they put parts of their assignments and other interesting stuff.

    Projects

    Each student will work in a team on a semester project.

    Projects