1
CPS 615 -- Computational Science in Simulation Track Data Parallel Module on ODE's and Particle Dynamics February 20, 1998 2
Abstract of Message Parallel ODE and Particle Dynamics Particle Dynamics as applications 3
Particle (N-Body) Applications and Ordinary Differential Equations (ODE's) 4
Particle Applications - Ordinary Differential Equations (ODE's) 5
Particle Applications - the N-body problem 6
Newton's First Law -- The Gravitational Force on a Particle 7
Equations of Motion -- Newton's Second Law ODE Solution Techniques 8
Numerical techniques for solving ODE's 9
Second and Higher Order Equations 10
Basic Discretization of Single First Order Equation 11
Errors in numerical approximations 12
Runge-Kutta Methods: Euler's method 13
Estimate of Error in Euler's method 14
Relationship of Error to Computation 15
Example using Euler's method from the CSEP book 16
Approximate solutions at t=1,using Euler's method with different values of h 17
Runge-Kutta Methods: Modified Euler's method 18
Approximate solutions of the ODE for et at t=1, using modified Euler's method with different values of h 19
The Classical Runge-Kutta -- In Words 20
The Classical Runge-Kutta -- Formally 21
The Classical Runge-Kutta Pictorially 22
Predictor / Corrector Methods 23
Definition of Multi-step methods 24
Features of Multi-Step Methods 25
Comparison of Explicit and Implicit Methods Setup of N Body Problem 26
Solving the N-body equations of motion 27
Representing the Data Parallel N-Body problem 28
Form of the Computation -- Data v. Message Parallel 29
Summary of Parallel N-Body Programming Methods and Algorithms 30
Status of Parallelism in Various N Body Cases 31
Other N-Body Like Problems - I 32
Other N-Body Like Problems - II Simple Data Parallel Approach 33
N-body Runge Kutta Routine in Fortran90 - I 34
Runge Kutta Routine in Fortran90 - II 35
Computation of accelerations - a simple parallel array algorithm 36
Simple Data Parallel Version of N Body Force Computation -- Grav -- I 37
The Grav Function in Data Parallel Algorithm - II Problems with Simple Method 38
Some Inefficiencies of the Data Parallel N2 Algorithm - I 39
Some Inefficiencies of the Data Parallel N2 Algorithm - II Data Parallel Pipeline Algorithm 40
Better Data Parallel Pipeline Algorithm for Computation of Accelerations, taking 1/2 the time for iterations over force computation 41
Data Parallel Pipeline Algorithm in detail 42
Basic Data Parallel pipeline operation 43
Examples of Data Parallel Pipeline Algorithm 44
Data Parallel Pipeline Algorithm Grav -- Part I 45
Data Parallel Pipeline Algorithm for Grav -- Part II 46
Data Parallel Grav Pipeline Algorithm, concluded Performance Issues 47
Data Parallel Parallel Decomposition 48
Data Parallel Parallel Execution Time -I 49
Data Parallel Parallel Execution Time -II One Dimensional System Dimension 50
N-body Problem is a one dimensional Algorithm HPF Version 51
Excerpts from an HPF program for this algorithm 52
HPF program excerpts - II 53
HPF program excerpts - finished References 54
Notes and References
Click outside pointer rectangle to move pointer
Click on Pointer to Hide
Click on Pointer + ALT to toggle message hiding
Click on Pointer + CNTL to abolish pointer
Click on Pointer + Shift to cycle families
Click outside + Alt is Change Image
Click outside + Control is Double Size
Click outside + Shift is Halve Size
Right Mouse Down on Pointer Toggles Index
Shift Right Mouse aligns top with scrolled Page While With Mouse Down on Current Pointer h hides This Message while m restores i Toggles Index Aligned with Page Top j Toggles Index Aligned with Scrolled View Top a Abolishes Pointer while CNTL-Click restores f cycles through pointer families c cycles through members of a family u increases Size Up and d decreases Down Mouse Up-Down between changes of Pointer to process new option