(2024/2025) Advanced Methods for Scientific Computing
These notes are an unofficial resource and shouldn’t replace the course material or any other book on advanced methods for scientific computing. It is not made for commercial purposes. I’ve made the following notes to help me improve my knowledge and maybe it can be helpful for everyone.
As I have highlighted, a student should choose the teacher’s material or a book on the topic. These notes can only be a helpful material.
The notes are taken from the books required for the course:
- Course slides.
You can view/download the PDF here. In the notes folder, you can also see the source code.
In the CHANGELOG file you can see the changes made to each version of the PDF file. The versioning can be helpful if you want to understand if there are any new features/fixes in the file.
For any issue, use the appropriate section.
Course Syllabus
According to the official course syllabus:
- An overview of computing tools:
- An overview of the C++ language, focusing on its functional components;
- Message passing paradigm: parallel programming using MPI, with examples;
- Shared memory paradigm: parallel programming with openMP, with examples;
- Main libraries for scientific computing.
- The development of numerical software: some examples of topical numerical methods will be selected, explained, and solved by the students under the guidance of the instructors. Possible examples include:
- Solving non-linear systems of equations;
- Dynamical systems;
- Multidimensional numerical quadrature;
- Methods for numerical optimization.