Practical Julia Cover

Practical Julia

A Hands-On Introduction for Scientific Minds
by Lee Phillips
October 2023, 528 pp.
Lay-flat binding

Download Chapter 9: PHYSICS

Look Inside!

Practical Julia back coverPractical Julia pages 106-107Practical Julia pages 120-121Practical Julia pages 478-479


The Julia programming language is acclaimed in scientific circles for its unparalleled ease, interactivity, and speed. Practical Julia is a comprehensive introduction to the language, making it accessible even if you’re new to programming.

Dive in with a thorough guide to Julia’s syntax, data types, and best practices, then transition to craft solutions for challenges in physics, statistics, biology, mathematics, scientific machine learning, and more. Whether you’re solving computational problems, visualizing data, writing simulations, or developing specialized tools, Practical Julia will show you how.

As you work through the book, you’ll:

  • Use comprehensions and generators, higher-level functions, array initialization and manipulation, and perform operations on Unicode text
  • Create new syntax and generate code with metaprogramming and macros, and control the error system to manipulate program execution
  • Visualize everything from mathematical constructs and experimental designs to algorithm flowcharts
  • Elevate performance using Julia’s unique type system with multiple dispatch
  • Delve into scientific packages tailored for diverse fields like fluid dynamics, agent-based modeling, and image processing

Whether your interest is in scientific research, statistics, mathematics, or just the fun of programming with Julia, Practical Julia will have you writing high-performance code that can do real work in no time.

Online Resources: Ready-to-run code samples, illustrations, and supplemental animations available at

Author Bio 

Lee Phillips has a PhD in physics from Dartmouth and a BA in physics, mathematics, and music from Hampshire College. He was a theoretical and computational physicist at the Naval Research Laboratory for 21 years. Lee has presented his research in numerous scientific papers and international conferences, and he’s written many popular articles on science and its history, and on the use of computers in research. He’s involved with science education and outreach, including serving on the Board of Directors of the Friends of Arlington’s Planetarium and maintaining their website.

Table of contents 

Chapter 1: Getting Started
Chapter 2: Language Basics
Chapter 3: Modules and Packages
Chapter 4: The Plotting System
Chapter 5: Collections
Chapter 6: Functions, Metaprogramming, and Errors
Chapter 7: Diagrams and Animations
Chapter 8: The Type System
Chapter 9: Physics
Chapter 10: Statistics
Chapter 11: Biology
Chapter 12: Mathematics
Chapter 13: Scientific Machine Learning
Chapter 14: Signal and Image Processing
Chapter 15: Parallel Processing

View the detailed Table of Contents
View the Index


"This book is a great starting point for the reader’s journey into Julia - with the first part covering the fundamentals of the language and second part diving into a variety of different scientific disciplines."
—Viral Shah, co-creator of the Julia programming language and CEO of JuliaHub

"This is a nice deep dive that covers a lot of ground, from the basics on how to define arrays and use the type system all the way to biochemical modeling and scientific machine learning. Lee gives a very nice in-depth treatment, showing not only the most standard ways to do things, but also some different library options along with a good explanation of the pros and cons to the choices. I think this is a great book for any Julia user's shelf."
— Christopher Rackauckas, Research Affiliate and Co-PI of the Julia Lab at MIT, Director of Modeling and Simulation at Julia Computing, and Applied Mathematics Instructor at MIT

"Practical Julia is clear, concise, and complete, exactly what you want in an introductory book. It’s also really interesting; the author has an engaging voice and a knack for good examples. Along with a general introduction to Julia, he provides real-world illustrations of applying Julia to specific problems in biology, physics, statistics, machine learning, and other areas. Highly recommended."
—David Chappell, Principal of Chappell & Associates