Buch, Englisch, 448 Seiten, Format (B × H): 218 mm x 271 mm, Gewicht: 870 g
Efficient Programming with Ease
Buch, Englisch, 448 Seiten, Format (B × H): 218 mm x 271 mm, Gewicht: 870 g
ISBN: 978-1-394-31853-7
Verlag: Wiley
Explains C programming for solving computational physics problems
Computational physics is transforming how scientists solve complex physical problems. Computational Physics Using C offers a unified approach to mastering both the numerical and programming skills essential for modern physics research. Designed to guide readers from fundamental concepts to advanced computational techniques, this textbook empowers students to effectively translate physical problems into numerical models and implement them using C.
Each chapter builds progressively on prior material, beginning with the precision limits of numerical computation and advancing to nonlinear systems, Monte Carlo simulations, and the numerical integration of differential equations. The book contains detailed discussions of C language structures, pointers, and code optimization strategies, as well as programming exercises and downloadable code examples. Providing a clear roadmap for efficiently solving a wide range of real-world physics problems, Computational Physics Using C: - Presents a systematic progression from fundamental numerical mathematics to advanced computational methods
- Integrates C programming instruction with core physics applications for seamless skill development
- Explains precision limits and numerical stability to ensure meaningful computational outcomes
- Demonstrates the use of gnuplot for effective visualization of numerical data
- Encourages algorithmic thinking to optimize code performance and hardware efficiency
Supporting flexible course design through modular chapter organization, Computational Physics Using C: Efficient Programming with Ease is ideal for upper-level undergraduate and first-year graduate students in physics, engineering, and materials science. It is also a valuable reference for professionals engaged in computational research and analysis.
Autoren/Hrsg.
Fachgebiete
Weitere Infos & Material
Preface ix
About the Companion Website xiii
1 Introduction 1
1.1 What Is Computational Physics? 1
1.2 Modularizing and Reusing Code 4
1.3 Introduction to Computational Efficiency 7
1.4 Exercises 13
2 Precision Limits of Numerical Computation and Algorithms 15
2.1 Computer Numerical Representation 16
2.2 Roundoff Errors 22
2.3 Loss of Precision Errors 26
2.4 Taylor's Theorem 27
2.5 Truncation Errors 27
2.6 Introduction to Numerical C Programming 32
2.7 Exercises 34
3 C Programming Details 39
3.1 Structures and Pointers 39
3.2 Modularizing Code and Encapsulating Data in C 62
3.3 Common Coding Traps 67
3.4 Exercises 74
4 Visualization of Numerical Models 77
4.1 Coding: Function Stepper Tool 78
4.2 Application: Damped Harmonic Oscillator 82
4.3 Coding: The gnuplot Plotting Tool 85
4.4 Application: The Helmholtz Coil 89
4.5 Application: The Maxwell–Boltzmann Distribution 93
4.6 Application: Rainbows 94
4.7 Application: Diffraction Patterns 98
4.8 Application: Collisions 104
4.9 Application: Quantum Wave Packets 111
4.10 Application: Quantum Scattering 117
4.11 Application: Field Vectors 122
4.12 Application: The Thomson Problem 125
4.13 Coding: Generating Animated Graphics 126
4.14 Exercises 132
5 Roots of Nonlinear Functions 137
5.1 Algorithms: Root Finding 137
5.2 Coding: The Root Solver Tool 143
5.3 Application: The Catenary 144
5.4 Application: Kirchoff's Voltage Law 146
5.5 Application: Mechanics Problems 147
5.6 Application: Kepler's Equation 148
5.7 Application: Gravitational Lagrange Points 153
5.8 Application: Planck's Radiation Law 156
5.9 Application: Radioactive Decay 157
5.10 Coding: Finding Multiple Roots with Stepping 159
5.11 Application: Quantum Energy Levels of Bound Particles 161
5.12 Application: Ideal Single-slit Diffraction 166
5.13 Exercises 167
6 Systems of Linear Equations 169
6.1 Algorithms: Gaussian Elimination 170
6.2 Algorithms: Pivoting Strategies 171
6.3 A




