CS 2110: Object-Oriented Programming and Data Structures
Units: 3 | Grading: Letter or Credit/No Credit
CS 2110 is an intermediate-level programming course and an introduction to computer science. Topics include program design and development, debugging and testing, object-oriented programming, proofs of correctness, complexity analysis, recursion, commonly used data structures, graph algorithms, and abstract data types.
CS 6650: Computational Motion
Units: 4 | Grading: Letter or S/U
Covers computational aspects of motion, broadly construed. Topics include the computer representation, modeling, analysis, and simulation of motion, and its relationship to various areas, including computational geometry, mesh generation, physical simulation, computer animation, robotics, biology, computer vision, acoustics, and spatio-temporal databases. Students implement several of the algorithms covered in the course and complete a final project.
CS4620: Introduction to Computer Graphics
Units: 3 | Grading: Letter or S/U
Introduction to the principles of computer graphics in two and three dimensions. Topics include digital images, filtering and antialiasing, 2-D and 3-D affine geometry, ray tracing, perspective and 3-D viewing, the graphics pipeline, curves and surfaces, and human visual perception. Homework assignments require some Java programming. May be taken with or without concurrent enrollment in CS 4621.
CS 322: Introduction to Scientific Computing
Units: 3 | Grading: Letter or S/U
An introduction to elementary numerical analysis and scientific computation. Topics include interpolation, quadrature, linear and nonlinear equation solving, least-squares fitting, and ordinary differential equations. The MATLAB computing environment is used. Vectorization, efficiency, reliability, and stability are stressed. Special lectures on parallel computation.
15-864: Advanced Computer Graphics
Units: 12 | Grading: Letter or S/U
This course will be a hands-on class on advanced computer graphics. It will cover major aspects of digital image generation: geometric modeling, computer animation, and rendering. The goal of the course is to provide a strong foundation for computer graphics principles, and provide a hands-on introduction to recent advanced topics, e.g., subdivision surfaces, real-time global illumination, and physically based animation. The course should be appropriate for graduate students in all areas and for advanced undergraduates.
15-863: Physically Based Modeling and Interactive Simulation
Units: 12 | Grading: Letter
This course introduces students to physically based modeling for computer graphics and related fields, and summarizes current research issues. Efficient numerical methods for simulating a host of visually interesting physical phenomena will be covered, and discussed in the context of both interactive and offline simulation. The course should be appropriate for graduate students in all areas and for advanced undergraduates.
15-462: Introduction to Computer Graphics
Units: 14 | Grading: Letter or S/U
This course provides a comprehensive introduction to computer graphics modeling, animation, and rendering. Topics covered include basic image processing, geometric transformations, geometric modeling of curves and surfaces, animation, 3-D viewing, visibility algorithms, shading, and ray tracing.