AEE724 HIGH PERFORMANCE COMPUTING IN AEROSPACE ENGINEERING
| Course Code: | 5720724 |
| METU Credit (Theoretical-Laboratory hours/week): | 3 (3.00 - 0.00) |
| ECTS Credit: | 8.0 |
| Department: | Aerospace Engineering |
| Language of Instruction: | English |
| Level of Study: | Graduate |
| Course Coordinator: | Assoc.Prof.Dr. NİLAY SEZER UZOL |
| Offered Semester: | Fall and Spring Semesters. |
Course Objectives
Students will acquire the knowledge of:
- The basis of parallel programming and computing.
- Requirements for high performance programming, computing, and environments.
- Accessing and using High Performance Computing (HPC) environments.
- Executing available engineering parallel codes and software on high performance clusters.
- Evaluating parallel performance of engineering/scientific computational codes and software.
- Understand efficiency and performance measures in High Performance Computing (HPC).
Course Content
Itemize, with brief, explicit and precise statements, the specific skills, capabilities, views, insight, knowledge, etc. the student is expected to acquire by way and at the end of the course; state only those most pertinent.
Students will acquire the knowledge of:
1) Basis of parallel programming and computing,
2) Requirements for high performance programming, computing, and environments.
3) Accessing and using high performance computing environments.
4) Executing available engineering parallel codes and software on high performance clusters.
5) Evaluating parallel performance of engineering/scientific computational codes and software.
6) Understand efficiency and performance measures in high performance computing.
Course Learning Outcomes
Introduction to sequential vs parallel computing. Introduction to parallel computing environments and tools. Computer Arithmetics. Computing and programming basics. Building blocks of High Performance Computing (HPC). Parallel computing and efficiency. Access to parallel clusters and use of HPC environments. Parallel programming: thread parallelism, parallelization tools, hybrid programming, and parallel languages. Post- and pre-processing of engineering software/codes in parallel environments. Parallel commercial/open-source/in-house research code applications. High performance linear algebra. Use HPC environments, execute aerospace engineering software applications, and perform parallel programming and computing (using Fortran and C) through homeworks and term project.
The course requires some background experience and knowledge on followings:
Experience in one of the following programming languages: Fortran and C. Knowledge of Unix, Linux, and Windows operating systems. Knowledge of any course on the following topics or similar: numerical methods, numerical analysis, Computational Fluid Dynamics (CFD), Finite Element Methods (FEM), and computational engineering.
The course provides:
- Introduction to HPC in Aerospace Engineering.
- Hands-on practice to help students become sufficient in accessing and using parallel computing resources.
- Strong expertise on parallel CFD programming, computing and modeling studies and improve the skills on to use HPC clusters.
- Practice on applications for big aerospace engineering problems needing parallel computing on HPC clusters.
Program Outcomes Matrix
| Contribution | |||||
| # | Program Outcomes | No | Yes | ||
| 1 | Possesses advanced knowledge in one or more subfields of aerospace engineering and applies this knowledge effectively in engineering practices and solution processes. | ✔ | |||
| 2 | Follows current scientific and technological developments in the field, identifies research problems, generates solutions using appropriate methods, and interprets the results. | ✔ | |||
| 3 | Employs analytical thinking and numerical methods in solving complex engineering problems and, when necessary, develops and applies appropriate experimental approaches. | ✔ | |||
| 4 | Uses appropriate modeling, analysis, simulation, and experimental methods for complex engineering problems, evaluates the results, and makes engineering decisions. | ✔ | |||
| 5 | Clearly and systematically communicates scientific and technical knowledge in written and oral form, works effectively in intra-disciplinary and interdisciplinary teams, and assumes leadership when necessary. | ✔ | |||
| 6 | Acts with professional ethics and awareness of social and environmental responsibility and evaluates the possible impacts of engineering solutions. | ✔ | |||
| 7 | Understands the importance of lifelong learning and effectively uses methods to access new knowledge. | ✔ | |||
| 8 | Is aware of fundamental engineering problems related to national aerospace, defense, and energy technologies and possesses the competence to contribute to these areas. | ✔ | |||
