Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

# Numerical Methods for Engineers

### Overview

##### Class Central Tips
This course covers the most important numerical methods that an engineer should know, including root finding, matrix algebra, integration and interpolation, ordinary and partial differential equations. We learn how to use MATLAB to solve numerical problems, and access to MATLAB online and the MATLAB grader is given to all students who enroll.

We assume students are already familiar with the basics of matrix algebra, differential equations, and vector calculus. They should have a working knowledge of a programming language, and be willing to learn MATLAB.

The course contains 74 short lecture videos and MATLAB demonstrations. After each lecture or demonstration, there are problems to solve or programs to write. The course is organized into six weeks, and at the end of each week, there is an assessed quiz and a longer programming project.

https://www.math.hkust.edu.hk/~machas/numerical-methods-for-engineers.pdf

And watch the promotional video from the link
https://youtu.be/qFJGMBDfFMY

### Syllabus

• Scientific Computing
• MATLAB is a high-level programming language extensively utilized by engineers for numerical computation and visualization. We will learn the basics of MATLAB: how real numbers are represented in double precision; how to perform arithmetic with MATLAB; how to use scripts and functions; how to represent vectors and matrices; how to draw line plots; and how to use logical variables, conditional statements, for loops and while loops. For your programming project, you will write a MATLAB code to compute the bifurcation diagram for the logistic map.
• Root Finding
• Root finding is a numerical technique used to determine the roots, or zeros, of a given function. We will explore several root-finding methods, including the Bisection method, Newton's method, and the Secant method. We will also derive the order of convergence for these methods. Additionally, we will demonstrate how to compute the Newton fractal using Newton's method in MATLAB, and discuss MATLAB functions that can be used to find roots. For your programming project, you will write a MATLAB code using Newton's method to compute the Feigenbaum delta from the bifurcation diagram for the logistic map.
• Matrix Algebra
• Numerical linear algebra is the term used for matrix algebra performed on a computer. When conducting Gaussian elimination with large matrices, round-off errors may compromise the computation. These errors can be mitigated using the method of partial pivoting, which involves row interchanges before each elimination step. The LU decomposition algorithm must then incorporate permutation matrices. We will also discuss operation counts and the big-Oh notation for predicting the increase in computational time with larger problem sizes. We will show how to count the number of required operations for Gaussian elimination, forward substitution, and backward substitution. We will explain the power method for computing the largest eigenvalue of a matrix. Finally, we will show how to use Gaussian elimination to solve a system of nonlinear differential equations using Newton's method. For your programming project, you will write a MATLAB code that applies Newton's method to the Lorenz equations.
• Ordinary Differential Equations
• We will learn about the numerical integration of ordinary differential equations (ODEs). We will introduce the Euler method, a single-step, first-order method, and the Runge-Kutta methods, which extend the Euler method to multiple steps and higher order, allowing for larger time steps. We will show how to construct a family of second-order Runge-Kutta methods, discuss the widely-used fourth-order Runge-Kutta method, and adopt these methods for solving systems of ODEs. We will show how to use the MATLAB function ode45.m, and how to solve a two-point boundary value ODE using the shooting method. For your programming project, you will conduct a numerical simulation of the gravitational two-body problem.
• Partial Differential Equations
• We will learn how to solve partial differential equations (PDEs). While this is a vast topic with various specialized solution methods, such as those found in computational fluid dynamics, we will provide a basic introduction to the subject. We will categorize PDE solutions into boundary value problems and initial value problems. We will then apply the finite difference method for solving PDEs. We will solve the Laplace equation, a boundary value problem, using two methods: a direct method via Gaussian elimination; and an iterative method, where the solution is approached asymptotically. We will next solve the one-dimensional diffusion equation, an initial value problem, using the Crank-Nicolson method. We will also employ the Von Neumann stability analysis to determine the stability of time-integration schemes. For your programming project, you will solve the two-dimensional diffusion equation using the Crank-Nicolson method.

### Taught by

Jeffrey R. Chasnov

## Reviews

5.0 rating, based on 48 Class Central reviews

4.9 rating at Coursera based on 304 ratings

Start your review of Numerical Methods for Engineers

• Anonymous
This is probably the most practical mathematical course available on the internet. A course for everyone, from Undergrad to doctoral students and professionals working in the field. Most of the stuff covered is really important for research, optimization, and practicality. One also comes to appreciate the power and EASE (intentionally capitalized) in using MATLAB for their respective tasks. The exercises are fun and the lectures are comprehensive.
Absolutely worth taking
• Anonymous
This is probably the best course I have taken on coursera. It delves into sufficient depth to be meaningful and to encourage further learning as compared to most other courses where no mathematical depth is provided. Additionally, the virtual tools are used extremely effectively in a way that learning does not feel like a chore. Moreover, the way Dr Chaznov connects the topics to broader ideas such as in the case of Fractyls is particularly fascinating and further adds to the appeal of the course. Some additional reading material would be very highly appreciated though for those who wish to go in further detail.
• Anonymous
While tackling the "Numerical Methods for Engineers" course, I encountered coding challenges due to my limited expertise. Despite this hurdle, the course was incredibly beneficial. It offered a wealth of practical knowledge essential for engineering applications. The instructors' clear explanations made complex concepts understandable. Overall, it's a valuable resource for anyone, like me, aiming to grasp numerical methods in engineering.
• Krishna Chand Avatar, G R
The course was excellent! The instructor Prof. Jeff Chasnov delivered insightful and detailed lectures. The programming assignments were challenging and helped to hone my coding skills in MATLAB.
• Allaev Sherzod
I entered PhD course, but my background in advanced math was very bad. I required to learn MATLAB, but I completely forgot linear algebla and even didn't know how to solve ordinary and partial differential equations. With the courses of Professor Chasnov I was able to increase my knowledge in 5 months. First was Linear algebra, then vector calculus, then differential equations. Numerical methods for engineers was my 4th course which is taught by Professor Chasnov. It wasn't easy, but now I can successfully implement obtained knowledge and MATLAB skills in my studies. Thank you very much professor Chasnov!
• Anonymous
The perfect organization and simple to describe complicated subjects. Thank you for this course and the great learning adventure.
• Anonymous
Comprehensive MATLAB course, covers key concepts effectively. Engaging exercises enhance practicalÂ skills.
• Anonymous
The Numerical Methods for Engineers course surpassed my expectations with its comprehensive content, practical approach, and well-structured organization. Covering a wide range of topics including root finding, numerical integration, interpolation,â€¦
• Anonymous
Excellent course on the numerical methods.
This course covers vast amount of numerical methods, from the
fundamentals of number representations in computer programs
to algorithms of interpolation and differentiation, to advanced
topics of numerical solutions to ODEs and PDEs. The methods
learned can be directly put into practice to solve engineering and
physics problems. Emphasis also put on MATLAB/Octave
programming with the algoritmhs learned so students can see
the concrete results/visualization.
• Anonymous
Very good design to cover most important aspects of numerical methods, which are very easy to understand to beginners! Compared to self-studying a textbook, this course is a much better way to teach yourself. It has a lot of interactive Matlab problems to let you code your own algorithm. Feel very proud that I finished the last Matlab problem: 2D unsteady diffusion problem. It contains a lot of things. Once it passed, you will thank your efforts.
• Anonymous
Awesome course!
The content is well organised and builds up to the final project. I started this course hoping to learn how to solve the 2D diffusion equation by iterative approaches such as SOR and Red-Black ordering to run in devices with low computation and memory resources. The final project stops a step before this but teaches all that I would need to implement my solution. I appreciate the effort put in this course and it's preliminary courses (Matrix Algebra for Engineers, Differential Equations for Engineers and Vector Calculus for Engineers).
Thanks to the entire team that put this together. I will definitely be buying my well earned certificate for this :)
• Anonymous
Es un curso bastante completo y compacto. Los mÃ³dulos estÃ¡n bien divididos con los temas que son fundamentales para los ingenieros y con proyectos bastante interesantes en donde podemos aplicar lo aprendido durante el mÃ³dulo.
• Anonymous
I enjoyed this course. I was really help to use MATLAB in conjunction with course concepts. The concepts start to get a little difficult near the end but I learned a lot.
• Anonymous
This course is perfect for someone starting with numerical methods and matlab programming. Short lectures, well distributed course content and interesting assignment problems.
• Anonymous
Good course, I learned so much and I hope to continue learning with the videos of this course.
Thanks very much for publish it
Myriam Rojas
• Anonymous
All of the lessons on the topic are thoroughly explained. All the activities are also manageable and it also has practice exams.
• Anonymous
As a STEM enthusiast and a former university student who studied plenty of graduate-level courses for the Bachelor of Art, I have plenty of things to say about the structure of your courses:

(1) All courses are brilliant and interactive.
(2) Great and challenging assessments.
(3) Also very interesting share of experience from fields of physics, which is something I would like to learn more about.