The text is arranged in a progressive and educational format, aimed at leading readers from the simplest basics to more complex matters like turbulence and magnetohydrodynamics. Exercises at the end of each chapter help readers to test their understanding of the subject (solutions are provided at the end of the book), and a special chapter is devoted to introducing selected aspects of mathematics that beginners may not be familiar with, so as to make the book self-contained.