Wiley
Wiley.com
Print this page Share

Computational Physics: Problem Solving with Computers, 2nd Edition

ISBN: 978-3-527-40626-5
616 pages
September 2007
Computational Physics: Problem Solving with Computers, 2nd Edition (3527406263) cover image
This second edition increases the universality of the previous edition by providing all its codes in the Java language, whose compiler and development kit are available for free for essentially all operating systems. In addition, the accompanying CD provides many of the same codes in Fortran 95, Fortran 77, and C, for even more universal application, as well as MPI codes for parallel applications. The book also includes new materials on trial-and-error search techniques, IEEE floating point arithmetic, probability and statistics, optimization and tuning in multiple languages, parallel computing with MPI, JAMA the Java matrix library, the solution of simultaneous nonlinear equations, cubic splines, ODE eigenvalue problems, and Java plotting programs.

From the reviews of the first edition:
"Landau and Paez's book would be an excellent choice for a course on computational physics which emphasizes computational methods and programming." - American Journal of Physics
See More

1 Introduction 1

1.1 Computational Physics and Computational Science 1

1.2 How to Use this Book 3

2 Computing Software Basics 7

2.1 Making Computers Obey 7

2.2 Computer Languages 7

2.3 Programming Warmup 9

2.4 Shells, Editors, and Programs 12

2.5 Limited Range and Precision of Numbers 13

2.6 Number Representation 13

2.7 IEEE Floating Point Numbers 14

2.8 Over/Underflows Exercise 20

2.9 Machine Precision 21

2.10 Determine Your Machine Precision 23

2.11 Structured Program Design 24

2.12 Summing Series 26

2.13 Numeric Summation 26

2.14 Good and Bad Pseudocode 27

2.15 Assessment 27

3 Errors and Uncertainties in Computations 29

3.1 Living with Errors 29

3.2 Types of Errors 29

3.3 Model for Disaster: Subtractive Cancellation 31

3.4 Subtractive Cancellation Exercises 32

3.5 Model for Roundoff Error Accumulation 34

3.6 Errors in Spherical Bessel Functions (Problem) 35

3.7 Numeric Recursion Relations (Method) 35

3.8 Implementation and Assessment: Recursion Relations 37

3.9 Experimental Error Determination 39

3.10 Errors in Algorithms 39

3.11 Minimizing the Error 41

3.12 Error Assessment 42

4 Object-Oriented Programming: Kinematics 45

4.1 Problem: Superposition of Motions 45

4.2 Theory: Object-Oriented Programming 45

4.3 Theory: Newton's Laws, Equation of Motion 46

4.4 OOP Method: Class Structure 47

4.5 Implementation: Uniform 1D Motion, unim1d.cpp 48

4.6 Assessment: Exploration, shms.cpp 56

5 Integration 59

5.1 Problem: Integrating a Spectrum 59

5.2 Quadrature as Box Counting (Math) 59

5.3 Algorithm: Trapezoid Rule 61

5.4 Algorithm: Simpson's Rule 63

5.5 Integration Error 65

5.6 Algorithm: Gaussian Quadrature 66

5.6.1 Mapping Integration Points 68

5.6.2 Gauss Implementation 69

5.7 Empirical Error Estimate (Assessment) 71

5.8 Experimentation 72

5.9 Higher Order Rules 72

6 Differentiation 75

6.1 Problem 1: Numerical Limits 75

6.2 Method: Numeric 75

6.3 Forward Difference 75

6.4 Central Difference 76

6.5 Extrapolated Difference 77

6.6 Error Analysis 78

6.7 Error Analysis (Implementation and Assessment) 79

6.8 Second Derivatives 80

7 Trial and Error Searching 81

7.1 Quantum States in SquareWell 81

7.2 Trial-and-Error Root Finding via Bisection Algorithm 83

7.2.1 Bisection Algorithm Implementation 84

7.3 Newton-Raphson Algorithm 84

8 Matrix Computing and N-D Newton Raphson 89

8.1 Two Masses on a String 90

8.2 Classes of Matrix Problems 95

9 Data Fitting 111

9.1 Fitting Experimental Spectrum 111

9.2 Fitting Exponential Decay 120

9.3 Theory: Probability and Statistics 121

9.4 Least-Squares Fitting 124

9.5 Appendix: Calling LAPACK from C 132

10 Deterministic Randomness 137

10.1 Random Sequences 137

11 Monte Carlo Applications 145

11.1 A RandomWalk 145

11.2 Radioactive Decay 148

11.3 Implementation and Visualization 151

11.4 Integration by Stone Throwing 152

11.5 Integration by Rejection 153

11.6 High-Dimensional Integration 155

11.7 Integrating Rapidly Varying Functions 157

12 Thermodynamic Simulations: Ising Model 165

12.1 Statistical Mechanics 165

12.2 An Ising Chain (Model) 166

12.3 The Metropolis Algorithm 169

13 Computer Hardware Basics: Memory and CPU 179

13.1 High-Performance Computers 179

13.2 The Central Processing Unit 184

14 High-Performance Computing: Profiling and Tuning 189

14.1 Rules for Optimization 189

14.2 Programming for Data Cache 203

15 Differential Equation Applications 207

15.1 UNIT I. Free Nonlinear Oscillations 207

15.2 Nonlinear Oscillator 208

15.3 Math: Types of Differential Equations 209

15.4 Dynamical Form for ODEs 212

15.5 ODE Algorithms 213

15.6 Solution for Nonlinear Oscillations 223

15.7 Extensions: Nonlinear Resonances, Beats and Friction 225

15.8 Implementation: Inclusion of Time-Dependent Force 226

15.9 UNIT II. Balls, not Planets, Fall Out of the Sky 228

15.10 Theory: Projectile Motion with Drag 228

15.11 Exploration: Planetary Motion 231

16 Quantum Eigenvalues via ODE Matching 235

16.1 Theory: The Quantum Eigenvalue Problem 236

17 Fourier Analysis of Linear and Nonlinear Signals 245

17.1 Harmonics of Nonlinear Oscillations 245

17.2 Fourier Analysis 246

17.3 Summation of Fourier Series(Exercise) 250

17.4 Fourier Transforms 250

17.5 Discrete Fourier Transform Algorithm (DFT) 252

17.6 Aliasing and Antialiasing 257

17.7 DFT for Fourier Series 259

17.8 Assessments 260

17.9 DFT of Nonperiodic Functions (Exploration) 261

17.10 Model Independent Data Analysis 262

17.11 Assessment 264

18 Unusual Dynamics of Nonlinear Systems 267

18.1 The Logistic Map 267

18.2 Properties of Nonlinear Maps 269

18.3 Explicit Mapping Implementation 271

18.4 Bifurcation Diagram 272

18.5 Random Numbers via Logistic Map 275

18.6 Feigenbaum Constants 276

18.7 Other Maps 276

19 Differential Chaos in Phase Space 277

19.1 Problem: A Pendulum Becomes Chaotic (Differential Chaos) 277

19.2 Equation of Chaotic Pendulum 278

19.3 Visualization: Phase-Space Orbits 282

19.4 Assessment: Fourier Analysis of Chaos 288

19.5 Exploration: Bifurcations in Chaotic Pendulum 290

19.6 Exploration: Another Type of Phase-Space Plot 291

19.7 Further Explorations 291

20 Fractals 293

20.1 Fractional Dimension 293

20.2 The Sierpi ´ nski Gasket 294

20.3 Beautiful Plants 297

20.4 Ballistic Deposition 301

20.5 Length of British Coastline 303

20.6 Problem 5: Correlated Growth, Forests, and Films 306

20.7 Problem 7: Fractals in Bifurcation Graph 311

21 Parallel Computing 313

21.1 Parallel Semantics 314

21.2 Distributed Memory Programming 316

21.3 Parallel Performance 317

22 Parallel Computing with MPI 321

22.1 Running on a Beowulf 322

22.2 Running MPI 326

22.3 Parallel Tuning: TuneMPI.c 340

22.4 A String Vibrating in Parallel 342

22.5 Deadlock 346

22.6 Supplementary Exercises 348

22.7 List of MPI Commands 349

23 Electrostatics Potentials via Finite Differences (PDEs) 351

23.1 PDE Generalities 351

23.2 Electrostatic Potentials 353

23.3 Fourier Series Solution of PDE 354

23.4 Solution: Finite DifferenceMethod 357

23.5 Assessment via Surface Plot 362

23.6 Three Alternate Capacitor Problems 363

23.7 Implementation and Assessment 365

23.8 Other Geometries and Boundary Conditions 368

24 Heat Flow 369

24.1 The Parabolic Heat Equation 369

24.2 Solution: Analytic Expansion 370

24.3 Solution: Finite Time Stepping (Leap Frog) 371

24.4 von Neumann Stability Assessment 373

24.5 Assessment and Visualization 376

25 PDE Waves on Strings and Membranes 379

25.1 The Hyperbolic Wave Equation 379

25.2 Realistic 1DWave Exercises 391

25.3 Vibrating Membrane (2DWaves) 392

25.4 Analytical Solution 394

25.5 Numerical Solution for 2DWaves 396

26 Solitons; KdeV and Sine-Gordon 399

26.1 Chain of Coupled Pendulums (Theory) 399

26.2 Wave Dispersion 400

26.3 Analytic SGE Solution 403

26.4 Numeric Solution: 2D SGE Solitons 403

26.5 2D Soliton Implementation 406

26.6 Visualization 408

26.7 Shallow Water (KdeV) Solitons 409

26.8 Theory: The Korteweg-de Vries Equation 410

27 Quantum Wave Packets 417

27.1 Time-Dependent Schrödinger Equation (Theory) 417

27.2 Wave Packets Confined to OtherWells (Exploration) 422

28 Quantum Paths for Functional Integration 427

28.1 Feynman's Space-Time Propagation 427

29 Quantum Bound States via Integral Equations 443

29.1 Momentum-Space Schrödinger Equation 444

30 Quantum Scattering via Integral Equations 451

30.1 Lippmann-Schwinger Equation 451

A PtPlot: 2D Graphs within Java 461

B Glossary 467

C Fortran 95 Codes 479

D Fortran 77 Codes 513

E C Language Codes 547

References 583

Index 587

See More
Rubin H. Landau, PhD, is a professor in the Department of Physics at Oregon State University in Corvallis. He teaches courses in computational physics, helps direct the Northwest Alliance for Computational Science and Engineering, and has been using computers in theoretical physics research for the past 30 years. The author of more than 70 refereed publications, he has also authored the books Quantum Mechanics II, A Scientist's and Engineer's Guide to Workstations and Supercomputers, and the first edition of Computational Physics, all of them available from Wiley.

Manuel J. Páez, PhD, is a professor in the Department of Physics at the University of Antioquia in Medellín, Colombia. He teaches courses in computational physics, programming, and nuclear physics. He and Professor Landau have conducted pioneering computational investigations in the interactions of mesons and nucleons with nuclei.

Cristian C. Bordeianu received his physics degree from Bucharest University, Romania, and his M.Sc. degree in Computer Science from "A.I.Cuza" University in Jassy, Romania. He is currently completing work towards a Ph.D. degree in Nuclear Physics at Bucharest University. He has over ten years of experience in developing Computational Physics educational software for high schools and University curricula. His current research interests include chaotic dynamics in nuclear multifragmentation and plasma of quarks and gluons.

See More
MAJOR ADDITIONS (NEW CHAPTERS)
- Visualization (including free packages: ptPlot, penDx, Grace, Gnuplot)
- Wavelet Analysis and Filtering and Data Compression
- Molecular Dynamics
- Computational Fluid Dynamics (incl shock waves, solitons)

EXTENSIONS (ADDED TO CHAPTERS)
- IEEE floating point arithmetic
- Trial & Error Searching and Matrix Computing with Libraries
- Object Oriented Programming with Java (major extension)
- Additional PDE techniques: successive over relaxation, finite element methods, Crank-Nicholson, Lax-Wendroff
- ODEs with rk2, rk4, rk45 and projectiles with drag
- Short-Time Fourier Analysis, FFT, Fourier Filtering
- Nonlinear Dynamics of Coupled Predator-Prey Systems
- Waves on a Catenary

See More
  • Provides all its codes in the Java language, whose compiler and development kit are available for free for essentially all operating systems
  • Contains a CD that provides many of the same codes in Fortran 95, Fortran 77, and C, for even more universal application, as well as MPI codes for parallel applications
  • Includes new materials on trial-and-error search techniques, IEEE floating point arithmetic, probability and statistics, optimization and tuning in multiple languages, parallel computing with MPI, JAMA the Java matrix library, the solution of simultaneous nonlinear equations, cubic splines, ODE eigenvalue problems, and Java plotting programs.
See More
"Landau and Paez's book would be an excellent choice for a course on computational physics which emphasizes computational methods and programming."
(American Journal of Physics)
See More
Download TitleSizeDownload
Computational Physics CD 9783527406265 2.04 MB Click to Download
See More
Back to Top