Type Here to Get Search Results !

# Learn Physics with Functional Programming

Download this PDF book: Learn Physics with Functional Programming: A Hands-on Guide to Exploring Physics with Haskell by Scott N. Walck

Deepen your understanding of physics by learning to use the Haskell functional programming language.

Learn Physics with Functional Programming is your key to unlocking the mysteries of theoretical physics by coding the underlying math in Haskell.

You’ll use Haskell’s type system to check that your code makes sense as you deepen your understanding of Newtonian mechanics and electromagnetic theory, including how to describe and calculate electric and magnetic fields.

As you work your way through the book’s numerous examples and exercises, you’ll learn how to:

Encode vectors, derivatives, integrals, scalar fields, vector fields, and differential equations

Express fundamental physical principles using the logic of Haskell’s type system to clarify Newton’s second law, Coulomb’s law, the Biot-Savart law, and the Maxwell equations

Use higher-order functions to express numerical integration and approximation methods, such as the Euler method and the finite-difference time-domain (FDTD) method

Create graphs, models, and animations of physical scenarios like colliding billiard balls, waves in a guitar string, and a proton in a magnetic field

Whether you’re using this book as a core textbook for a computational physics course or for self-study, Learn Physics with Functional Programming will teach you how to use the power of functional programming to explore the beautiful ideas of theoretical physics.

## BRIEF CONTENTS

Acknowledgments Introduction

PART I: A HASKELL PRIMER FOR PHYSICISTS

Chapter 2: Writing Basic Functions

Chapter 3: Types and Entities

Chapter 4: Describing Motion

Chapter 5: Working with Lists

Chapter 6: Higher-Order Functions

Chapter 7: Graphing Functions

Chapter 8: Type Classes

Chapter 9: Tuples and Type Constructors

Chapter 10: Describing Motion in Three Dimensions

Chapter 11: Creating Graphs

Chapter 12: Creating Stand-Alone Programs

Chapter 13: Creating 2D and 3D Animations

PART II: EXPRESSING NEWTONIAN MECHANICS AND SOLVING PROBLEMS

Chapter 14: Newton’s Second Law and Differential Equations

Chapter 15: Mechanics in One Dimension

Chapter 16: Mechanics in Three Dimensions

Chapter 17: Satellite, Projectile, and Proton Motion

Chapter 18: A Very Short Primer on Relativity

Chapter 19: Interacting Particles

Chapter 20: Springs, Billiard Balls, and a Guitar String

PART III: EXPRESSING ELECTROMAGNETIC THEORY AND SOLVING PROBLEMS

Chapter 21: Electricity

Chapter 22: Coordinate Systems and Fields

Chapter 23: Curves, Surfaces, and Volumes

Chapter 24: Electric Charge

Chapter 25: Electric Field

Chapter 26: Electric Current

Chapter 27: Magnetic Field

Chapter 28: The Lorentz Force Law

Chapter 29: The Maxwell Equations

Scott Walck has a PhD in Physics from Lehigh University and has been a professor of physics, including computational physics, to undergraduates for over 20 years at Lebanon Valley College.

He has also written academic articles and given talks on the use of functional programming in teaching physics.

Publisher ‏ : ‎ No Starch Press (January 31, 2023)

Language ‏ : ‎ English

Pages ‏ : ‎ 648

File : PDF, 12MB

Free Download the Book: Learn Physics with Functional Programming: A Hands-on Guide to Exploring Physics with Haskell by Scott N. Walck