Further reading
Summary
Guide To Learn
Summary
Let’s narrow down on the specification for our tsunami simulator: By working through this book chapter by chapter, you’ll gain the experience of developing a fully featured parallel app from scratch. If it’s your first software project, I hope it excites your inner software developer and inspires you to go make something on your own. […]
Shallow water equations are a simple system of equations derived from Navier-Stokes equations. They are also known as the Saint-Venant equations, after the French engineer and mathematician A. J. C. Barre de Saint-Venant, who derived them in pursuit of his interest in hydraulic engineering and open-channel flows. SWEs are powerful because they can reproduce many […]
A tsunami is a sequence of long water waves that are triggered by a displacement in a large body of water. This typically occurs because of earthquakes, underwater volcanoes, or landslides. Once generated, a tsunami propagates radially outward across the ocean surface. It grows in height and steepness as it enters shallow waters. A tsunami simulator is […]
Learning happens by doing rather than reading, especially when we’re immersed in a longer project. Lessons in this book are thus framed around developing your own, minimal and yet complete, tsunami simulator.
In most scientific and engineering parallel applications, there’s data dependency between processes. Typically, a two-dimensional array is decomposed into tiles like a chessboard, and the workload of each tile is assigned to a processor. Each tile has its own data in memory that’s local to its processor. To illustrate the simplest case of parallel programming […]
For over a decade prophets have voiced the contention that the organization of a single computer has reached its limits and that truly significant advances can be made only by interconnection of a multiplicity of computers in such a manner as to permit cooperative solution. –Gene Amdahl (computer architect) in 1967 Parallel programming is only […]
This book will teach you how to write modern, efficient, and parallel Fortran programs. Working through each chapter, we’ll build from scratch a fully functional, parallel, fluid dynamics solver with a specific application to tsunami prediction. If you work through the book, you’ll come out with three distinct skill sets: While I’m not expecting you […]
I’ll illustrate the kind of problem where Fortran really shines. Let’s call this example “Summer ends on old Ralph’s farm.” Farmer Ralph has two sons and two daughters, and a big farm. It’s the end of the summer and about time to cut the grass and make hay for the cattle to eat. But the […]
How does modern Fortran compare to a more recent general-purpose programming language? Python has had the most rapidly growing ecosystem in the past few years for data analysis and light number crunching (http://mng.bz/XP71). It’s used by many Fortran programmers for postprocessing of model output and data analysis. In fact, Python is my second favorite programming […]