High Performance Computing and Simulations
The Master of Science in Computer Science (High Performance Computing and Simulations) is designed to:
- Train a new generation of graduate students in Computer Science to solve challenging scientific and engineering problems using high-end parallel computers, high-speed networks, and advanced scientific visualization.
- Support a unique dual-degree opportunity, in which students can obtain a Ph.D. in the physical sciences/engineering and an M.S. in Computer Science.
- Train engineers from industry to solve real-world problems using state-of-the-art computational techniques. The program will satisfy the critical need to train students, who have expertise in the physical/biological sciences/engineering and computer science, as evidenced by the current and future trends in cutting edge research and in the job market.
Total Units: 32
Required courses (8 units):
- CSCI 596 – Scientific Computing and Visualization (4)
- CSCI 570 – Analysis of Algorithms (4)
Choose 2 of the following courses (8 units):
- CSCI 561 – Foundations of Artificial Intelligence (4)
- CSCI 571 – Web Technologies (4)
- CSCI 585 – Database Systems (4)
Technical Elective Courses:
In addition to the above required course, the HPCS specialization requires 3 additional courses to be selected from the following list of courses. You must choose the 3 courses from both tracks (i.e., one course from one track and two courses from the other track):
(a) Computer Science Track
- CSCI 520 – Computer Animation and Simulation (4)
- CSCI 551 – Computer Communications (4)
- CSCI 558 – Internetworking and Distributed Systems Lab (3)
- CSCI 580 – 3D Graphics and Rendering (4)
- CSCI 599 – Special Topics* (4)
- CSCI 653 – High Performance Computing and Simulations (4)
(b) Computational Science / Engineering Application Track
- AME 535ab – Introduction to Computational Fluid Dynamics (3-3)
- CE 529A – Finite Element Analysis (3)
- CHE 502 – Numerical Methods for Diffusive & Convective Transport (3)
- EE 553 – Computational Solution of Optimization Problems (3)
- EE 653 – Multithreaded Architectures and Data-Flow Computing (3
- EE 657 – Parallel Processing (3)
- EE 659 – Interconnection Networks (3)
- MASC 575 – Basics of Atomistic Simulations for Engineers (3)
- MATH 501 – Numerical Analysis and Computing Using Matlab/C++ (3)
- MATH 578a – Computational Molecular Biology (3)
- PTE 582 – Fluid Flow and Transport Processes in Porous Media (3)
- PHYS 516 – Methods of Computational Physics (3)
Complete the remaining units from the group list above or the following::
- CSCI 590 – Directed Research (1-2, max 2)
- CSCI 591 – Computer Science Research Colloquium (1, max 2)
- 600-LEVEL – Doctoral level CSCI course (faculty and departmental approval required)
- 500-LEVEL – Additional 500-level CSCI course
*Special Topics must be pre-approved by an advisor.
A maximum of 2 units of CSCI 590 and a maximum of 2 units of CSCI 591 may be applied.
Thesis courses (CSCI 594a, CSCI 594b, CSCI 594z) and Internship courses (ENGR 595a, ENGR 595b, ENGR 595z) are not eligible for elective credit.
- There is no cumulative examination required for the degree.
- Internship and Thesis credits cannot count as elective units toward the degree.
- CSCI 590 Directed Research is a variable unit course, and can be taken for one or two units. A maximum of two units can apply toward the degree.
- CSCI 591 Research Colloquium can be taken a maximum of two times for one unit each.
- A maximum of 4 units may be taken from approved 400-level courses in either Electrical Engineering or Computer Science; the remaining units must be approved courses at the 500 or 600 level.
- Prerequisites must be taken prior to an advanced course. Even if a prerequisite is waived, you may not take the prerequisite course AFTER taking the advanced course.
- Availability of courses per semester may occasionally change.