UCES Classes



Core Courses in Computational Science

Introductory Scientific Computing
A replacement for the traditional introductory course in procedural programming. This course consists of of a series of case studies in different disciplines illustrating problem solving via computational methods. Tools such as Maple, Mathematica, and Matlab are used extensively for teaching problem analysis, solution formulation, data set manipulation, and interpretation of results.

Computational Science

Designed as a follow-on to Introductory Scientific Computing. While the introductory course uses scientific and mathematical tools and packages, this course treats the need for computational problem solving through programming, toolkits, and scientific computing libraries. It teaches core concepts in programming with Fortran and/or C and emphasize the use of libraries and toolkits such as the BLAS, Linpack, Ellpack, and numerical packages such as NAG and IMSL. Some introduction to high-performance and parallel computing is be included, and basic numerical algorithms for matrix computations, finite differences, particle-in-cell methods, and differential equations are illustrated.
Computational Numerical Analysis
The class is intended to bridge the gap between first year "programming" courses and a full year course on scientific computing and numerical analysis such as given in "Numerical Analysis" by Burden and Faires. The topics are all problem driven, and a number of application areas are used with an emphasis on heat and mass transfer problems. Each section " starts with some introductory material and an application area. The mathematical model and a method of computation are described. Several computer implementations are presented. An assessment and comparison of each of the above stages is given. There are a variety of homework problems.

This course was developed at the North Carolina State University, and was recognized by the Department of Energy by receiving an Undergraduate Computational Science Education Award.

Advanced Scientific Computing
A course to be developed in 1997. this will be the capstone of the Computational Science concentration. The first part of the course will cover advanced numerical techniques including eigenvalue problems, LU decomposition, multigrid methods, Fourier transforms, conjugate gradient, etc, including selected parallel algorithms. Subsequently, modules from different disciplines will be taught, with examples include optimization methods in computational biology and neural networks, computational fluid dynamics (CFD) and Navier-Stokes equations, protein folding, long-range molecular dynamics, medical imaging techniques, and flow through porous media. These modules will be developed in such a manner that they can be interchangeably used and expanded upon, with the eventual goal of building a large repertoire of modules that could selectively be covered in subsequent offerings.

Disciplinary Concentration Courses

Chemistry

Computational Physical Chemistry Lab

This course provides undergraduates majoring in Chemistry with a strong background in computational methods as applied to physical chemistry. It includes such topics as rates of reactions, quantum mechanical wavefunctions, classical dynamics, and normal modes, and is be taught using Mathematica.

This course was developed at the University of Washington, and was recognized by the Department of Energy by receiving an Undergraduate Computational Science Education Award.

Physics

Computational Physics

Computer Science

Introduction to Parallel Programming

Mechanical Engineering

Introduction to Control Theory

A sophomore level course utilizing Matlab to introduce students to control theory.

This course was developed at the University of Michigan, and was recognized by the Department of Energy by receiving an Undergraduate Computational Science Education Award.

Electrical Engineering

Computational Excursions in Electrical Engineering


UCES Homepage : UCES Archive : Content : Classes Modules Problems Resources

uces_info@krellinst.org
Last modified: 24 May 1996