Repository containing a curated list of free online resources in the topics of
- Computational Fluid Dynamics & Numerical Methods
- Machine Learning & Optimization
- Programming & High-Performance Computing
- Scientific Writing
Please submit a PR to contribute to the list.
- 12 steps to Navier-Stokes
Tutorial on how to build a Navier–Stokes solver using finite differences in 12 simple steps. - Boundary layer theory
Webpage on Prandtl boundary layer theory, and the analytical solution from Blasius (Prandtl's PhD student). - Fluid Mechanics 101
YouTube channel on general fluid mechanics. - Fundamentals of Numerical Computation
Interactive online book covering the fundamentals of numerical linear algebra and differential equations using Jupyter notebooks and Julia. - Notes on CFD: General Principles
Online book on general CFD including governing equations, numerical methods, linear solvers, turbulence modelling, etc. - Riemann Problems and Jupyter Solutions
Online book on Riemann solvers. - UK Fluids Network resources
Curated list of learning resources (videos, slides, code) for general CFD topics including flow control, reduced-order modelling, turbulence, etc. - Wall modelling for LES
Webpage explaining fundamental concepts of wall modelling. - What-Is
Collection of articles explaining concepts of numerical analysis including matrix factorizations, floating point operations, etc.
- 3Blue1Brown Neural networks series
Video series visualizing the mathematics behind neural networks. - Automatic Differentiation and its Efficient Implementation
Review paper on automatic differentiation. - Free Programming Books: Machine Learning
List of freely available resources in machine learning. - Illustrated Machine Learning
Website providing visual explanations of fundamental concepts in statistics, machine learning, and optimization. - Inverse problems
Online lectures on inverse problems and imaging. - Kalman and Bayesian filters
Kalman Filter book using Jupyter Notebook. - Machine learning from scratch in Julia
Tutorial on implementing an artificial neural network from scratch in Julia, including gradient descent and automatic differentiation. - Machine learning technical blogs
List of awesome machine learning technical blogs from research to deployment. - Mathematics For Machine Learning
Book on general machine learning concepts, from linear algebra to optimization. - Neural Networks and Deep Learning | [PDF version]
Online book on deep learning.
- Computer Science Readings
List of freely available resources in computer science, including algorithms, parallel programming, functional programming, machine learning, etc. - Differentiable Programming for Differential Equations: A Review
Review article on differentiable programming, including finite differences, automatic differentiation, symbolic differentiation, etc. - Free Programming Books
List of freely available resources in programming. - Free Programming Books: Parallel Programming
List of freely available resources in parallel programming. - Julia for HPC
Collection of Julia examples in parallel programming, including multi-threading, MPI, GPU, etc. - Modern Julia Workflows
Series of blog posts on best practices for software development in Julia. - SciMLBook
Book of the lecture notes from the MIT Course 18.337J/6.338J: Parallel Computing and Scientific Machine Learning. - The Art of Command Line
Tips and tricks for using the Unix terminal command line. - Zero2Hero-JuliaWorkshop
Workshop for Julia newcomers.
- Guidelines for writing MSc thesis
Tips on MSc thesis structure. - Guidelines for writing papers
Tips on scientific writing, from style and formatting to best practices in publishing preprint and scientific articles. - Latex Advice
How to write efficient, readable and maintainable LaTeX source code. - quarto
Presentation tools. - Writing a scientific article
Article on how to write a scientific article: A step-by-step guide for beginners. - Zotero introduction
Introductory guide to using the citation manager Zotero. - Zotero, zbib, doi2bib
Bibliography tools.