Programming Numerical Methods in Python (Udemy.com)
A Practical Approach to Understand the Numerical Methods
Created by: Murad Elarbi
Last updated January 2020
What you will learn
- Program the numerical methods to create simple and efficient Python codes that output the numerical solutions at the required degree of accuracy.
- Create and manipulate arrays (vectors and matrices) by using NumPy.
- Use the plotting functions of matplotlib to present your results graphically.
- Apply SciPy numerical analysis functions related to the topics of this course.
How it compares
Against the other 388 rated Udemy courses in Python on CourseDuck:
- Rating4.3 out of 5higher than 25% of them
- Reviews901#198 of 389 by number of reviews
- Length12.3 hourslonger than 58% of them
- Last updatedJanuary 2020earlier than 78% of them
Course Description
Many of the Numerical Analysis courses focus on the theory and derivations of the numerical methods more than the programming techniques. Students get the codes of the numerical methods in different languages from textbooks and lab notes and use them in working their assignments instead of programming them by themselves.
For this reason, the course of Programming Numerical Methods in Python focuses on how to program the numerical methods step by step to create the most basic lines of code that run on the computer efficiently and output the solution at the required degree of accuracy.
This course is a practical tutorial for the students of Numerical Analysis to cover the part of the programming skills of their course.
In addition to its simplicity and versatility, Python is a great educational computer language as well as a powerful tool in scientific and engineering computations. For the last years, Python and its data and numerical analysis and plotting libraries, such as NumPy, SciPy and matplotlib, have become very popular programming language and tool in industry and academia.
That’s why this course is based on Python as programming language and NumPy and matplotlib for array manipulation and graphical representation, respectively. At the end of each section, a number of SciPy numerical analysis functions are introduced by examples. In this way, the student will be able to program his codes from scratch and in the same time use the advanced library functions in his work.
This course covers the following topics:
- Roots of High-Degree Equations
- Interpolation and Curve Fitting
- Numerical Differentiation
- Numerical Integration
- Systems of Linear Equations
- Ordinary Differential Equations
Instructor Details
- 4.3 Rating
901 Reviews
Murad Elarbi
I am a Mechanical Engineering Lecturer in the University of Benghazi, Libya since 2005. I taught courses of Strength of Materials, Theory of Machines, Machine Design Projects and Engineering Drawing. My research interest is the computational mechanics where numerical methods and computer programming are the main tools of solution in addition to theories of mechanics. I instructed several computer language training courses of BASIC, Fortran, C++ and MATLAB. Currently, I am in the USA for the Ph.D. degree.
More Python courses
Python 3: Deep Dive (Part 1 - Functional) (2024)
4.9 (13,534 Reviews)
Provider: Udemy
Time: 45.8h
$22.99
Python 3: Deep Dive (Part 3 - Dictionaries, Sets, JSON) (2023)
4.9 (1,996 Reviews)
Provider: Udemy
Time: 21.9h
$17.99
Programming for Everybody (Getting Started with Python)
4.9 (717 Reviews)
Provider: Coursera
Time: 12h
Free
An Introduction to Interactive Programming in Python (2013)
4.9 (554 Reviews)
Provider: Coursera
Time: 6h 40m
Free
Python: Python Programming Language | Tutorial | Beginner (2023)
4.9 (239 Reviews)
Provider: Udemy
Time: 5.1h
$19.99
An Introduction to Interactive Programming in Python (Part 2)
4.9 (225 Reviews)
Provider: Coursera
Time: 25h
Free
Reviews
By Guillermo Hernán Martín on 6/11/2025
IMHO the teacher can improve a little the way he explains lessons. He does it like the average math teacher, which is not great. Lots of reading equations with abstract names like 'x', 'y', 'u'... Very easy to get lost. On the other hand, the part of showing how it can be translated to computer code helps a lot to understand the concepts. I do encourage to do all the exercises. However, in the code part can also be improved, by making a little more effort to make the code more readble. Particularly, by using meaningful names and using divide & conquer strategy to make smaller, easier to understand functions.
By Oubaida Taji on 5/22/2025
This was a good introduction into a massive subject. The instructor's work was great, and thanks to his efforts, the course was amazing and very enjoyable. an area of improvement or advancement (in a second course maybe) is to focus on numerical methods but in a way that goes deep into the numpy and scipy functions from their references directly, like going with the logic of "teach me how to fish is better than having the fish caught already", also diving into PDE's and more complicated systems that represent real life applications such as the infamous heat equation, etc. all in all, very amazing and advisable course for beginners in numerical methods like myself.
By Jose Luis Carrio on 3/26/2025
It's an interesting course but I can't give 5 stars because: - If I remember well, in Roots of High-Degree Equations you didn't mention what could happen if in the interval we choose there are more than one root (in some cases, like bisection, if in the interval there is an even number of roots, we could think there's no root. In other cases, it could give us one of the roots, ignoring the others, or even never converge).... - In the examples for Gauss elimination on Systems of Linear Equations, you showed that, to avoid a 0 on the diagonal, we must flip two rows... ¿but what if even doing that we find always again a 0 on the diagonal? (If I remember well, you didn't say that perhaps we need to find another different method). - There was a mistake in one of the examples in the videos (It was corrected on the resources .py file, indicated with #corrected) - Too slow. I did the course at 1.75 and sometimes at 2 speed. So, all in all, it's a good course, thanks. I liked it, but sorry, not as good as 5 stars.
By Sabyasachi Roy on 8/12/2024
It is a quite helpful course for me. I have learned a lot from this course. And also, the python codes which are practiced here were amiable to me. But some practice problems should be given for us to solve for more interactive learning otherwise it is overall a great experience for me to complete the course. Thank you.
By Wilmo Montero on 12/27/2022
I think it is a complete course to start learning about numerical methods. But I think it can be improved by adding challenges for every section. The last section can be also expanded. Or maybe create another course about numerical methods to solve PDEs.
By Günter Grau on 8/5/2022
This is an interesting crash-course on different numerical methods solved both in plain Python and with Numpy/Scipy. The short code snippets give a good starting point to use it in own programs or to search for advanced material where needed. The beginning was a bit lengthy as no prior programming knowledge was assumed. I would have liked more information about limitations of the methods or speed considerations, but I guess I'm not exactly the target audience :)
By Thomas Mozer on 12/6/2020
I enjoyed the course very much, it was easy to follow and I learned a lot about Python and numerical methods, just as advertised in the title
By Joseph Dunn on 11/5/2020
I'm new to python, but was previously a math major so I find the combination helpful in exposing me to the world of python. Great course so far!
By Joseph Bak on 11/5/2020
Very few things are explained carefully before being used....
By Jocelyn Sangma on 10/23/2020
I have learned a lot from this course and the examples were also very helpful.
By Jagannath Panigrahi on 10/23/2020
This was an interesting learning. I could learn the methods quickly, especially the Numpy, Scipy solver. Thank you Murad Elarbi and Udemy.
By Feky Rumondor on 10/2/2020
penejelasan yang baik
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 86 / 100



