Welcome to CSI 801 / INFT 814

Foundations of Computational Science

Instructor: James Gentle

Fall, 1995


This course is about scientific computation. It emphasizes the role of computation as a fundamental tool of discovery in the development of science.

The weekly lectures will concentrate on computational methods and applications. A small portion of most lectures will also deal with one or more specific computational systems, such as an operating system, an application package, or a programming language. (I call this ``scientific computer literacy''.)

Student work in the course (and the relative weighting of this work in the overall grade) will consist of

  • weekly computing assignments (10)
  • other small assignments, problems, etc. (10)
  • a semester project (25)
  • an in-class midterm (25)
  • a final exam consisting of an in-class component and a take-home component (30)
  • PostScript versions of all of the lectures, ASCII files of data, and other files will be available for downloading either through a Web browser or by anonymous ftp at

    science.gmu.edu
    After logging in to the ftp site, change to the directory jgentle/csi801.

    You can view or download the PostScript versions of the lectures as they are available.


    Substantive Topics

  • Computer organization: hardware architecture, software, and algorithms
  • Introduction to numerical methods for solving large scientific problems
  • Simulation and visualization in supercomputing

  • General issues in concurrent computation
  • Topics in applications of computational science


    Computing Systems

    (These will be the subjects of brief parts of the lectures and the weekly assignments will involve their use.)
  • The science.gmu.edu network computers.
  • Unix, email, the Internet.
  • Unix tools, more on Internet resources, HTML.
  • The C language, the IMSL C Libraries.
  • The Fortran language.
  • Fortran 90, interlanguage communication.
  • Matlab.
  • PV-Wave.
  • Perl, other tools.
  • Maple and Mathematica.
  • S-Plus.

  • Texts

  • Scientific Computing: An Introduction with Parallel Computing, by Gene Golub and James M. Ortega
  • A Scientist's and Engineer's Guide to Workstations and Supercomputers, by Rubin H. Landau and Paul J. Fink, Jr.

    Lectures and Assignments


    August 31, 1995

    Lecture 1 (Gentle's PostScript notes): The computational sciences; basics of Monte Carlo simulation.
    Unix; the use of the Internet and WWW.
  • ``Computer literacy'' assignment 1

  • September 7, 1995

    Lecture 2 (Gentle's PostScript notes): Numerical computations; more on random number generation
    More on Unix; the basics of Fortran.
  • ``Computer literacy'' assignment 2
  • Concepts assignment 1
    Some possible projects

  • September 14, 1995

    Lecture 3: Parallel processing
    Designing and building parallel programs (online book by Ian Foster, html)
    The NAS Parallel Benchmarks (html)
    Performance programming (CSEP course by Mike Guidry and Mike Strayer, in html)
    Other items of interest from NCSA (html)
  • ``Computer literacy'' assignment 3

  • September 21, 1995

    Lecture 4 (Gentle's PostScript notes): Vector and parallel computations.
    More on the basics of C and Fortran; intro to GL.
  • ``Computer literacy'' assignment 4
  • Concepts assignment 2

  • September 28, 1995

    Lecture 5: Algorithms for parallel processing (from online book by Ian Foster, html)
  • Introductory discussions of projects
  • Review of some of the computing assignments

    October 5, 1995

    Project Web pages should be up
    Lecture 6 (Gentle's PostScript notes): Matrix multiplication;
    Review of computing assignments; intro to Matlab
  • ``Computer literacy'' assignment 5
    Program and data files:

  • October 12, 1995

    Paragon introduction: architecture, programming (see materials in General Reference Materials below)
    Lecture 7: Quadrature and IVP ODEs (Golub & Ortega 5.1, 5.2)
  • ``Computer literacy'' assignment 6
  • Concepts assignment 3

  • October 19, 1995

    Midterm (PostScript) (in class)

    October 26, 1995

    Project Web page preliminary report
    Lecture 8: Golub & Ortega 5.3, 5.4

    November 2, 1995

    Review of midterm (PostScript)
    Lecture 9: Golub & Ortega 5.5

    November 9, 1995

    Lecture 10: Topics from Golub & Ortega Ch 5

    November 16, 1995

    Lecture 11 (Gentle's PostScript notes): Topics from Golub & Ortega Ch 6 and following; overview of PV-Wave and Matlab
  • ``Computer literacy'' assignment 7
  • Concepts assignment 4
  • Projects due (reports)

    November 30, 1995

    Final project Web page up
    Presentations

    December 7, 1995

    Presentations
    Handout take-home portion of final

    December 14, 1995

    In-class portion of final



    Computational Resources

    Labs with Unix workstations are available for use in this class in both CSI and SITE.
  • CSI facilities.
  • Software available in SITE labs.

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

    General Reference Materials

  • General bibliography and further readings.
  • Some general -- but incomplete! -- stuff on software.
  • GAMS categorized list of software
  • GAMS, general (Guide to Available Software, NIST)
  • Unix
  • Fortran 90
  • C
  • Emacs
  • html
  • Java
  • html conversion filters
  • GhostScript
  • GhostScript (NCSA)
  • PostScript
  • Paragon computer
  • PVM (courtesy of Netlib at Oak Ridge National Lab)
  • Matlab (courtesy of Indiana University Center for Statistical and Mathematical Computing)
    The GMU Copy Shop also has an inexpensive Matlab primer.
  • S (or S-Plus)
  • IMSL Fortran Libraries
  • Maple (courtesy of Indiana University Center for Statistical and Mathematical Computing)

    Reference Material for Local Access

  • science.gmu.edu info
  • Paragon local info
  • emacs local info
  • TeX, LaTeX local info
  • latex2html local info
  • PostScript local info
  • Fortran 90 local info
  • IMSL Fortran Libraries info
  • IMSL C Libraries info
  • Matlab local info
  • PV-Wave local info
  • Maple local info
  • S-Plus local info
  • PVM local info

    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.

    Some Other Topics Relevant to the Course

  • Mutli-grid methods
  • Simulation

    Student Home Pages

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

    Projects


    James Gentle, jgentle@gmu.edu