Dr. Yousry Y. Azmy

Dr. Yousry Azmy

Nuclear Engineering

Phone: 919-515-3385
Instructor Website

NE 591 607 ST: Mathematical and Computational Methods in NE CANCELED for FALL

3 Credit Hours

Learn the theoretical foundation of mathematical methods that are applied broadly in nuclear engineering and construct algorithms to implement the resulting formalisms on digital computing. Practice the design of computer programs in low-level languages (exclusively Fortran or C++) and their implementation, verification, and testing in NCSU’s Virtual Computing Lab (VCL) Linux environment.


Third year college math and basic/intermediate programming skills in Fortran or C++. Linux experience is helpful but not necessary.


Special preparation information

In this course you are required to implement programs in either Fortran or C++. To verify that your programming skills are adequate for this course feel free to watch the taped lectures and view the notes from NE 491 “Fortran Programming for Nuclear Engineers”. If you plan to use C++ in your assignments you need to make sure your programming skills are at the same level as in these lectures and notes at least.

NE 491 Lecture Videos

 NE 491 Lecture Notes


Preliminary list of topics covered

+ Basics of Scientific Computing; Linux Primer; Essentials of Programming

+ Numerical Integration: Trapezoidal Rule, Simpson’s Rule, Gaussian Quadratures

+ Discretization of Differential Operators: ODEs, PDEs

+ Asymptotics: numerical/discretization error, Richardson Extrapolation

+ Iterative methods: Operator splitting, Point Jacobi, Gauss-Seidel, SOR, Block Jacobi, Krylov

+ Nonlinear systems: Newton-Raphson Method, Jacobi Free Newton (Krylov) Method

+ Basics of parallel processing: Shared/Distributed Memory

Course Objectives

+ The students will advance their mathematical knowledge to the graduate level by exposure to applied techniques prevalent in nuclear engineering.

+ They will also transition this knowledge to the practical computational science realm by learning relevant solution algorithms.

+ The course emphasizes the practice of computer programming in low-level languages where the students will translate the covered algorithms into computer programs similar in function to what they will encounter in the field.

+ The students will be required to develop debugging skills and apply them to verification of their submitted codes.

Course Requirements

Preliminary breakdown of course grades:

Homework sets 50%
Quizzes 10%
Midterm 10%
Final Exam 10%
Project 20%


None. References will be provided per topic.

Computer and Software Requirements

Please review minimum computer specifications recommended by NC State University and Engineering Online.

Software: Access to NC State’s VCL computer lab is provided to all NC State students.

Updated 7/8/2020