Computational Physics Contents
PART III APPLICATIONS (High Performace)
(with Web Tutorial links)

Section
Topic
Page
Chapter 15
Matrix Computing and Subroutine Libraries
197
15.1
Problem 1: Many Simultaneous Linear Equations
197
15.2
Problem 1, Formulation: Linear into Matrix Equations
198
15.3
Problem 2: Simple but Unsolvable Statics
198
15.4
Problem 2: Theory, Statics
199
15.5
Problem 2, Formulation: Nonlinear Simultaneous Equations
200
15.6
Theory: Matrix Problems
201
15.6.1
Classes of Matrix Problems
201
15.7
Method: Matrix Computing
204
15.8
Implementation:Using Scientific Libraries
207
15.9
Implementation: Determining Available Libraries
209
15.9.1
Determining Contents of a Library
210
15.9.2
Determining the Needed Routine
210
15.9.3
Implementation: Calling LAPACK
9.5
15.9.4
Calling LAPACK from C
212
15.9.5
Calling LAPACK Fortran from C
213
15.9.6
C Compiling Calling Fortran
214
15.10
Extension: More Netlib Libraries
214
15.10.1
SLATEC's Common Math Library
215
15.11
Exercises: Testing Matrix Calls
216
15.12
Implementation: LAPACK Short Contents
218
15.13
Implementation: Netlib Short Contents
221
15.14
Implementation: SLATEC Short Contents
222
Chapter 16
Bound States in Momentum Space
231
16.1
Problem: Bound States in Nonlocal Potentials
231
16.2
Theory: k-Space Schroedinger Equation
232
16.3
Method: Reducing Integral to Linear Equations
233
16.4
Model: The Delta-Shell Potential
235
16.5
Implementation: Binding Energies, bound.c (.f)
236
16.6
Exploration: Wave Function
237
Chapter 17
Quantum Scattering via Integral Equations (O)
239
17.1
Problem: Quantum Scattering in k Space
239
17.2
Theory, Lippmann-Schwinger Equation
240
17.3
Theory, Mathematics: Singular Integrals
241
17.3.1
Numerical Principal Values
242
17.4
Method: Converting Integral to Matrix Equations
243
17.4.1
Solution via Inversion or Elimination
245
17.4.2
Solving i epsilon Integral Equations (O)
245
17.5
Implementation: Delta-Shell Potential, scatt.f
246
17.6
Exploration: Scattering Wave Function
248
Chapter 18
Computing Hardware Basics: Memory and CPU
249
18.1
Problem: Speeding Up Your Program
249
18.2
Theory: Components of a High-Performance Computer
250
18.2.1
Memory Hierarchy
250
18.2.2
The Central Processing Unit
254
18.2.3
CPU Design: RISC
254
18.2.4
CPU Design: Vector Processing
255
18.2.5
Virtual Memory
256
18.3
Method: Programming for Virtual Memory
256
18.4
Implementation: Good and Bad Virtual Memory Use
257
18.5
Method: Programming for Data Cache
258
18.6
Implementation 1: Cache Misses
260
18.7
Implementation 2: Cache Misses
260
18.8
Implementation 3: Large Matrix Multiplication
261
Chapter 19
High-Performance Computing: Profiling and Tuning
263
19.1
Problem: Effect of Hardware on Performance
263
19.2
Method: Tabulating Speedups
263
19.3
Implementation 1: Baseline Program, tune.f
264
19.4
Method: Profiling
265
19.5
Implementation 2: Basic Optimization, tune1.f
266
19.6
Implementation 2: Vector Tuning, tune2.f
269
19.7
Implementation 3: Vector Code on RISC, tune3.f
270
19.8
Implementation 4: Superscalar Tuning, tune4.f
271
19.9
Assessment
273
Chapter 20
Parallel Computing and PVM
275
20.1
Problem: Speeding Up Your Program
275
20.2
Theory: Parallel Semantics
276
20.2.1
Parallel Instruction and Data Streams
276
20.2.2
Granularity
277
20.2.3
Parallel Performance
277
20.3
Method: Multitasking Programming
278
20.3.1
Method: Multitask Organization
278
20.4
Method: Distributed Memory Programming
279
20.5
Implementation: PVM Bug Populations
280
20.5.1
The Plan
280
Chapter 21
Object-Oriented Programming: Kinematics (O)
283
21.1
Problem: Superposition of Motions
283
21.2
Theory: Object-Oriented Programming
284
21.2.1
OOP Fundamentals
284
21.3
Theory: Newton's Laws, Equation Of Motion
285
21.4
OOP Method: Class Structure
285
21.5
Implementation: Uniform 1-D Motion, unim1d.cpp
286
21.5.1
Uniform Motion In 1-D, Class Um1D
287
21.5.2
Implementation: Uniform Motion In 2-D, Child Um2D, unimot2d.cpp
288
21.5.3
Class Um2D: Uniform Motion In 2-D
289
21.5.4
Implementation: Projectile Motion, Child Accm2D, accm2d.cpp
291
21.5.5
Accelerated Motion in Two Directions
293
21.6
Assessment: Exploration, shms.cpp
295
Chapter 22
Thermodynamic Simulations: The Ising Model
297
22.1
Problem: Hot Magnets
297
22.2
Theory: Statistical Mechanics
297
22.3
Model: An Ising Chain
299
22.4
Solution, Analytic
301
22.5
Solution, Numerical: The Metropolis Algorithm
301
22.6
Implementation, Metropolis Algorithm, ising.f (.c)
304
22.7
Assessment: Approach to Thermal Equilibrium
305
22.8
Assessment: Thermodynamic Properties
305
22.9
Exploration: Beyond Nearest Neighbors
307
22.10
Exploration: 2-D and 3-D Ising Simulations (SUHEP)
307
Chapter 23
Functional Integration on Quantum Paths (O)
309
23.1
Problem: Relation of Quantum to Classical Trajectories
309
23.2
Theory: Feynman's Spacetime Propagation
309
23.3
Method, Analytic: The Bound-State Wave Function
312
23.4
Method, Numerical: Path Integration on a Lattice
314
23.5
Method: Lattice Computation of Propagators
316
23.6
Implementation: Lattice Programming, qmc.f (.c)
319
23.7
Assessment and Exploration
321