Table of Contents
Preface ix
1 Introduction 1
1.1 Computational modeling and visualization, 1
1.2 The science and art of numerics, 2
1.3 Fundamentals of programming and visualization, 6
1.4 Exercises and projects, 14
1.A Floating point representation, 15
1.B Python installation, 17
1.C The Matplotlib plot function, 20
1.D Basic NumPy array operations, 21
2 Free Fall and Ordinary Differential Equations 27
2.1 Free fall with Euler’s method, 27
2.2 The Runge-Kutta (RK) methods, 32
2.3 System of first-order ODEs, 37
2.4 The leapfrog method, 43
2.5 Exercises and projects, 48
2.A Area preservation of the leapfrog method, 52
2.B Program listings and descriptions, 54
3 Realistic Projectile Motion with Air Resistance 57
3.1 Visualization of ideal projectile motion, 57
3.2 Modeling air resistance, 58
3.3 Linear air resistance, 62
3.4 The Lambert 𝑊 function, 67
3.5 Quadratic air resistance and spin, 70
3.6 Physics of ball sports, 73
3.7 Shooting methods, 80
3.8 Exercises and projects, 83
3.A Bisection and Newton’s root finders, 87
3.B Program listings and descriptions, 89
4 Planetary Motion and Few-Body Problems 92
4.1 Motion of a planet, 92
4.2 Properties of planetary motion, 94
4.3 Precession of Mercury, 99
4.4 Star wobbles and exoplanets, 107
4.5 Planar three-body problems, 111
4.6 The restricted three-body problem, 116
4.7 Exercises and projects, 125
4.A Rotating frames and rate of change of vectors, 130
4.B Rotation matrices, 132
4.C Radial velocity transformation, 133
4.D Program listings and descriptions, 135
5 Nonlinear Dynamics and Chaos 144
5.1 A first model: the logistic map, 144
5.2 Chaos, 153
5.3 A non-linear driven oscillator, 157
5.4 The Lorenz flow, 163
5.5 Power spectrum and Fourier transform, 168
5.6 Fractals, 170
5.7 Exercises and projects, 174
5.A Program listings and descriptions, 179
6 Oscillations and Waves 184
6.1 A damped harmonic oscillator, 184
6.2 Vibrations of triatomic molecules, 188
6.3 Displacement of a string under a load, 194
6.4 Point source and finite element method, 199
6.5 Waves on a string, 204
6.6 Standing waves, 210
6.7 Waves on a membrane, 212
6.8 A falling tablecloth toward equilibrium, 215
6.9 Exercises and projects, 217
6.A Program listings and descriptions, 222
7 Electromagnetic Fields 226
7.1 The game of electric field hockey, 226
7.2 Electric potentials and fields, 228
7.3 Laplace equation and finite element method, 233
7.4 Boundary value problems with FEM, 242
7.5 Meshfree methods for potentials and fields, 247
7.6 Visualization of electromagnetic fields, 251
7.7 Exercises and projects, 256
7.A Program listings and descriptions, 261
8 Time-Dependent Quantum Mechanics 272
8.1 Time-dependent Schrödinger equation, 272
8.2 Direct simulation, 274
8.3 Free fall, the quantum way, 281
8.4 Two-state systems and Rabi flopping, 289
8.5 Quantum waves in 2D, 293
8.6 Exercises and projects, 299
8.A Numerical integration, 304
8.B Program listings and descriptions, 307
9 Time-Independent Quantum Mechanics 313
9.1 Bound states by shooting methods, 313
9.2 Periodic potentials and energy bands, 319
9.3 Eigenenergies by FDM and FEM methods, 320
9.4 Basis expansion method, 326
9.5 Central field potentials, 331
9.6 Quantum dot, 335
9.7 Exercises and projects, 343
9.A Numerov’s method, 348
9.B The linear potential and Airy function, 349
9.C Program listings and descriptions, 351
10 Simple Random Problems 362
10.1 Random numbers and radioactive decay, 362
10.2 Random walk, 364
10.3 Brownian motion, 367
10.4 Potential energy by Monte Carlo integration, 369
10.5 Exercises and projects, 372
10.A Statistical theory of Brownian motion, 376
10.B Nonuniform distributions, 377
10.C Program listings and descriptions, 378
11 Thermal Systems 382
11.1 Thermodynamics of equilibrium, 382
11.2 The Ising model, 392
11.3 Thermal relaxation by simulated annealing, 404
11.4 Molecular dynamics, 406
11.5 Exercises and projects, 414
11.A Boltzmann factor and entropy, 421
11.B Exact solutions of the 2D Ising model, 422
11.C Program listings and descriptions, 424
12 Classical and Quantum Scattering 428
12.1 Scattering and cross sections, 428
12.2 Rainbow and glory scattering, 432
12.3 Quantum scattering amplitude, 437
12.4 Partial waves, 439
12.5 Exercises and projects, 450
12.A Derivation of the deflection function, 456
12.B Partial wave analysis, 457
12.C Program listings and descriptions, 459
List of Programs 463
Bibliography 467
Index 471