Applied Computational Physics 1st Edition by Joseph F. Boudreau – Ebook PDF Instant Download/DeliveryISBN: 0191018988, 9780191018985
Full download Applied Computational Physics 1st Edition after payment
Product details:
ISBN-10 : 0191018988
ISBN-13 : 9780191018985
Author: Joseph F. Boudreau
Applied Computational Physics is a graduate-level text stressing three essential elements: advanced programming techniques, numerical analysis, and physics. The goal of the text is to provide students with essential computational skills that they will need in their careers, and to increase the confidence with which they write computer programs designed for their problem domain. The physics problems give them an opportunity to reinforce their programming skills, while the acquired programming skills augment their ability to solve physics problems. The C++ language is used throughout the text. Physics problems include Hamiltonian systems, chaotic systems, percolation, critical phenomena, few-body and multi-body quantum systems, quantum field theory, simulation of radiation transport, and data modeling. The book, the fruit of a collaboration between a theoretical physicist and an experimental physicist, covers a broad range of topics from both viewpoints. Examples, program libraries, and additional documentation can be found at the companion website. Hundreds of original problems reinforce programming skills and increase the ability to solve real-life physics problems at and beyond the graduate level.
Applied Computational Physics 1st Table of contents:
1. Building programs in a Linux environment
1.1 The editor, the compiler, and the make system
1.1.1 Troubleshooting mysterious problems
1.2 A quick tour of input and output
1.3 Where to find information on the C++ standard library
1.4 Command line arguments and return values
1.5 Obtaining numerical constants from input strings
1.6 Resolving shared libraries at run time
1.7 Compiling programs from multiple units
1.8 Libraries and library tools
1.9 More on Makefile
1.10 The subversion source code management system (SVN)
1.10.1 The SVN repository
1.10.2 Importing a project into SVN
1.10.3 The basic idea
1.11 Style guide: advice for beginners
1.12 Exercises
BIBLIOGRAPHY
2. Encapsulation and the C++ class
2.1 Introduction
2.2 The representation of numbers
2.2.1 Integer datatypes
2.2.2 Floating point datatypes
2.2.3 Special floating point numbers
2.2.4 Floating point arithmetic on the computer
2.3 Encapsulation: an analogy
2.4 Complex numbers
2.5 Classes as user defined datatypes
2.6 Style guide: defining constants and conversion factors in one place
2.7 Summary
Further Reading
2.8 Exercises
BIBLIOGRAPHY
3. Some useful classes with applications
3.1 Introduction
3.2 Coupled oscillations
3.3 Linear algebra with the Eigen package
3.4 Complex linear algebra and quantum mechanical scattering from piecewise constant potentials
3.4.1 Transmission and reflection coefficients
3.5 Complex linear algebra with Eigen
3.6 Geometry
3.6.1 Example: collisions in three dimensions
3.7 Collection classes and strings
3.8 Function objects
3.8.1 Example: root finding
Eigenvalue methods
3.8.2 Parameter objects and parametrized functors
3.9 Plotting
3.10 Further remarks
3.11 Exercises
BIBLIOGRAPHY
4. Interpolation and extrapolation
4.1 Lagrange interpolating polynomial
4.2 Evaluation of the interpolating polynomial
4.2.1 Interpolation in higher dimensions
4.3 Spline interpolation
4.3.1 The cubic spline
4.3.2 Coding the cubic spline
4.3.3 Other splines
4.4 Extrapolation
4.5 Taylor series, continued fractions, and Padé approximants
4.6 Exercises
BIBLIOGRAPHY
5. Numerical quadrature
5.1 Some example problems
5.1.1 One-dimensional periodic motion
5.1.2 Quantization of energy
5.1.3 Two body central force problems
5.1.4 Quantum mechanical tunneling
5.1.5 Moments of distributions
Moments of probability distributions
Mass Distributions and The Inertia Tensor
Multipole moments of charge distributions
5.1.6 Integrals of statistical mechanics
5.2 Quadrature formulae
5.2.1 Accuracy and convergence rate
5.3 Speedups and convergence tests
5.4 Arbitrary abscissas
5.5 Optimal abscissas
5.6 Gaussian quadrature
5.7 Obtaining the abscissas
5.7.1 Implementation notes
5.8 Infinite range integrals
5.9 Singular integrands
5.10 Multidimensional integrals
5.11 A note on nondimensionalization
5.11.1 Compton scattering
5.11.2 Particle in a finite one-dimensional well
5.11.3 Schrödinger equation for the hydrogen atom
5.12 Exercises
BIBLIOGRAPHY
6. How to write a class
6.1 Some example problems
6.1.1 A stack of integers
6.1.2 The Jones calculus
6.1.3 Implementing stack
6.2 Constructors
6.3 Assignment operators and copy constructors
6.4 Destructors
6.5 const member data and const member functions
6.6 Mutable member data
6.7 Operator overloading
6.8 Friends
6.9 Type conversion via constructors and cast operators
6.10 Dynamic memory allocation
6.10.1 The “big four”
6.11 A worked example: implementing the Jones calculus
6.12 Conclusion
6.13 Exercises
BIBLIOGRAPHY
7. Monte Carlo methods
7.1 Multidimensional integrals
7.2 Generation of random variates
7.2.1 Random numbers in C++11
7.2.2 Random engines
7.2.3 Uniform and nonuniform variates
7.2.4 Histograms
7.2.5 Numerical methods for nonuniform variate generation
7.2.6 The rejection method
7.2.7 Direct sampling (or the transformation method)
7.2.8 Sum of two random variables
7.2.9 The Gaussian (or normal) distribution
7.3 The multivariate normal distribution, χ2, and correlation
7.4 Monte Carlo integration
7.4.1 Importance sampling
7.4.2 Example
7.5 Markov chain Monte Carlo
7.5.1 The Metropolis-Hastings algorithm
7.5.2 Slow mixing
7.5.3 Thermalization
7.5.4 Autocorrelation
7.5.5 Multimodality
7.6 The heat bath algorithm
7.6.1 An application: Ising spin systems
7.6.2 Markov chains for quantum problems
7.7 Where to go from here
7.8 Exercises
BIBLIOGRAPHY
8. Percolation and universality
8.1 Site percolation
8.1.1 The cluster algorithm
8.1.2 Code verification
8.1.3 The percolation probability
8.2 Fractals
8.3 Scaling and critical exponents
8.3.1 The correlation length and the anomalous dimension
8.3.2 Additional scaling laws
8.4 Universality and the renormalization group
8.4.1 Coarse graining
8.4.2 Monte Carlo renormalization group
8.5 Epilogue
8.6 Exercises
BIBLIOGRAPHY
9. Parallel computing
9.1 High performance computing
9.2 Parallel computing architecture
9.3 Parallel computing paradigms
9.3.1 MPI
9.3.2 openMP
Scheduling
Embarrassingly parallel example
openMP environment variables
9.3.3 C++11 concurrency library
Synchronization: mutex and atomic
Embarrassingly parallel example
Future and promise
9.4 Parallel coding
9.5 Forking subprocesses
9.6 Interprocess communication and sockets
9.7 Exercises
BIBLIOGRAPHY
10. Graphics for physicists
10.1 Graphics engines
10.1.1 3d libraries and software
10.1.2 Generating graphics
10.1.3 The Open Inventor/Coin3d toolkit
10.2 First steps in a 3d world–3d visualization
10.2.1 The basic skeleton of a 3d application
10.2.2 A three-dimensional greeting to the world
10.2.3 A colorful spherical world
10.2.4 Deleting nodes in the scene graph
10.3 Finding patterns–Testing random number generators
10.4 Describing nature’s shapes–fractals
10.4.1 Shared nodes
10.5 Animations
10.5.1 Coin engines: a rotating world
10.5.2 Coin sensors: an orbiting planet
10.6 The Inventor system
10.7 Exercises
BIBLIOGRAPHY
11. Ordinary differential equations
11.1 Introduction
11.2 Example applications
11.2.1 Projectile motion with air resistance
11.2.2 Motion of a charged particle in a magnetic field
11.2.3 Simple nonlinear systems: the Lorenz model
11.2.4 The Lagrangian formulation of classical mechanics
11.2.5 The Hamiltonian formulation of classical mechanics
11.2.6 The Schrödinger equation
11.3 A high-level look at an ODE solver
11.3.1 A simple integrator class
11.3.2 Example: the harmonic oscillator
11.4 Numerical methods for integrating ordinary differential equations
11.4.1 The Euler method
11.4.2 The midpoint method
11.4.3 The trapezoid method
11.4.4 The 4th order Runge-Kutta method
11.4.5 Properties of nth order Runge-Kutta methods
First order methods
Second order methods
Third order methods
Fourth order methods
A Class for Butcher Tableaux
Fixed-step size Runge Kutta integration
11.5 Automated solution of classical problems
11.5.1 Taking partial derivatives with GENFUNCTIONs
11.5.2 Computing and solving the equations of motion
11.5.3 A classical Hamiltonian solver
11.6 Adaptive step size control
11.6.1 Step doubling
11.6.2 Embedded Runge Kutta methods
11.7 Symplectic integration schemes
11.7.1 Symplectic transformations
11.8 Symplectic integrators of first and higher order
11.9 Algorithmic inadequacies
11.9.1 Stability
11.9.2 Solution mixing
11.9.3 Multiscale problems
11.10 Exercises
BIBLIOGRAPHY
12. Polymorphism
12.1 Example: output streams
12.2 Inheritance
12.3 Constructors and destructors
12.4 Virtual functions
12.5 Virtual destructors
12.6 Pure virtual functions and abstract base classes
12.7 Real example: extending the GenericFunctions package
12.8 Object-oriented analysis and design
12.9 Exercises
BIBLIOGRAPHY
13. Nonlinear dynamics and chaos
13.1 Introduction
13.2 Nonlinear ordinary differential equations
13.3 Iterative maps
13.3.1 The logistic map
13.3.2 The Hénon map
13.3.3 The quadratic map
13.4 The nonlinear oscillator
13.4.1 The Lyapunov exponent
13.5 Hamiltonian systems
13.5.1 The KAM theorem
13.5.2 The Hénon-Heiles model
13.5.3 Billiard models
13.6 Epilogue
13.7 Exercises
BIBLIOGRAPHY
14. Rotations and Lorentz transformations
14.1 Introduction
14.2 Rotations
14.2.1 Generators
14.2.2 Rotation matrices
Implementation
14.3 Lorentz transformations
Implementation
14.4 Rotations of vectors and other objects
14.4.1 Vectors
14.4.2 Spinors
14.4.3 Higher dimensional representations
Related objects:wavefunctions and spherical tensors
14.5 Lorentz transformations of four-vectors and other objects
14.5.1 Four-vectors
14.5.2 Weyl spinors
14.5.3 Dirac spinors
14.5.4 Tensors of higher order
14.6 The helicity formalism
14.7 Exercises
BIBLIOGRAPHY
15. Simulation
15.1 Stochastic systems
15.2 Large scale simulation
15.3 A first example
15.4 Interactions of photons with matter
15.5 Electromagnetic processes
15.5.1 Bremsstrahlung
15.5.2 Electromagnetic showers
15.5.3 The need for simulation toolkits
15.6 Fundamental processes: Compton scattering
15.7 A simple experiment: double Compton scattering
15.8 Heavier charged particles
15.9 Conclusion
15.10 Exercises
BIBLIOGRAPHY
16. Data modeling
16.1 Tabular data
16.2 Linear least squares (or χ2) fit
16.3 Function minimization in data modeling
16.3.1 The quality of a χ2 fit
16.3.2 A mechanical analogy
16.4 Fitting distributions
16.4.1 χ2 fit to a distribution
16.4.2 Binned maximum likelihood fit to a distribution
16.5 The unbinned maximum likelihood fit
16.5.1 Implementation
16.5.2 Construction of normalized PDFs
16.6 Orthogonal series density estimation
Are two datasets different?
16.7 Bayesian inference
Communicating likelihood functions
16.8 Combining data
16.9 The Kalman filter
16.9.1 Example: fitting a polynomial curve
16.9.2 Complete equations
16.10 Exercises
BIBLIOGRAPHY
17. Templates, the standard C++ library, and modern C++
17.1 Generic type parameters
17.2 Function templates
17.3 Class templates
17.3.1 Class template specialization
17.4 Default template arguments
17.5 Non-type template parameters
17.6 The standard C++ library
17.6.1 Containers and iterators
Sequence containers
Iterators
Associative containers
Container adaptors
More on iterators
17.6.2 Algorithms
17.7 Modern C++
17.7.1 Variadic templates
17.7.2 Auto
17.7.3 Smart pointers
17.7.4 Range-based for loop
17.7.5 Nullptr
17.7.6 Iterators: nonmember begin and end
17.7.7 Lambda functions and algorithms
17.7.8 Initializer lists
Uniform initialization
In-class initialization of data members
17.8 Exercises
BIBLIOGRAPHY
18. Many body dynamics
18.1 Introduction
18.2 Relationship to classical statistical mechanics
18.3 Noble gases
18.3.1 The Verlet method
Coding considerations
Initial conditions
Boundary conditions
Parameter selection
Speeding things up
18.3.2 Temperature selection
Speed rescaling
Nosé-Hoover thermometer
Langevin dynamics
18.3.3 Observables
18.4 Multiscale systems
18.4.1 Constrained dynamics
18.4.2 Multiple time scales
18.4.3 Solvents
18.5 Gravitational systems
18.5.1 N-Body simulations of galactic structure
18.5.2 The Barnes-Hut algorithm
18.5.3 Particle-mesh methods
18.6 Exercises
Molecular Dynamics
Gravitational Dynamics
Algorithms
BIBLIOGRAPHY
19. Continuum dynamics
19.1 Introduction
19.2 Initial value problems
19.2.1 Differencing
19.2.2 Continuity equations
von Neumann stability analysis
The Lax method
19.2.3 Second order temporal methods
19.2.4 The Crank-Nicolson method
Tridiagonal Matrix Inversion
Application to one-dimensional advection
19.2.5 Second order equations
19.2.6 Realistic partial differential equations
19.2.7 Operator splitting
19.3 The Schrödinger equation
19.4 Boundary value problems
19.4.1 The Jacobi method
19.4.2 Successive over-relaxation
19.5 Multigrid methods
19.6 Fourier techniques
Dirichlet boundary conditions
19.6.1 The fast Fourier transform
19.6.2 The sine transform
19.6.3 An application
19.7 Finite element methods
19.7.1 The variational method in one dimension
19.7.2 Two-dimensional finite elements
19.7.3 Mesh generation
An application
Nonuniform meshes
Mesh refinement and error estimation
19.8 Conclusions
19.9 Exercises
Finite Difference Methods
Fourier Methods
Finite Element Method
BIBLIOGRAPHY
20. Classical spin systems
20.1 Introduction
20.2 The Ising model
20.2.1 Definitions
20.2.2 Critical exponents and finite size scaling
20.2.3 The heat bath algorithm and the induced magnetization
20.2.4 Reweighting
20.2.5 Autocorrelation and critical slowing down
20.2.6 Cluster algorithms
Swendsen-Wang algorithm
Wolff algorithm
20.3 The Potts model and first order phase transitions
20.4 The planar XY model and infinite order phase transitions
20.5 Applications and extensions
20.5.1 Spin glasses
20.5.2 Hopfield model
20.6 Exercises
BIBLIOGRAPHY
21. Quantum mechanics I–few body systems
21.1 Introduction
21.2 Simple bound states
21.2.1 Shooting methods
21.2.2 Diagonalization
21.2.3 Discretized eigenproblems
21.2.4 Momentum space methods
21.2.5 Relativistic kinematics
21.3 Quantum Monte Carlo
21.3.1 Guided random walks
The ground state energy
Extrapolation and guidance parameters
21.3.2 Matrix elements
Matrix elements with the double walk method
Matrix elements with the Feynman-Hellmann method
The algorithm
SHO matrix elements
21.4 Scattering and the T-matrix
21.4.1 Scattering via the Schrödinger equation
21.4.2 The T-matrix
Example: square well scattering
21.4.3 Coupled channels
21.5 Appendix: Three-dimensional simple harmonic oscillator
21.6 Appendix: scattering formulae
21.7 Exercises
BIBLIOGRAPHY
22. Quantum spin systems
22.1 Introduction
22.2 The anisotropic Heisenberg antiferromagnet
22.3 The Lanczos algorithm
22.3.1 The Lanczos miracles
22.3.2 Application of the Lanczos method to the Heisenberg chain
22.4 Quantum Monte Carlo
22.5 Exercises
BIBLIOGRAPHY
23. Quantum mechanics II–many body systems
23.1 Introduction
23.2 Atoms
23.2.1 Atomic scales
23.2.2 The product Ansatz
23.2.3 Matrix elements and atomic configurations
23.2.4 Small atoms
23.2.5 The self-consistent Hartee Fock method
23.3 Molecules
23.3.1 Adiabatic separation of scales
23.3.2 The electronic problem
H+2 Ion
H2 Molecule
More complicated molecules
23.4 Density functional theory
23.4.1 The Kohn-Sham procedure
23.4.2 DFT in practice
23.4.3 Further developments
23.5 Conclusions
23.6 Appendix: Beyond Hartree-Fock
23.7 Exercises
BIBLIOGRAPHY
24. Quantum field theory
24.1 Introduction
24.2 ϕ4 theory
Spacetime symmetry
Analytical results
24.2.1 Evaluating the path integral
Metropolis-Hastings method
Heat bath updates
Microcanonical updates
Autocorrelation
24.2.2 Particle spectrum
Correlation matrix method
24.2.3 Parity symmetry breaking
24.3 Z2 Gauge theory
Elitzur’s theorem
24.3.1 Heat bath updates
24.3.2 Average Plaquette and Polyakov loop
24.4 Abelian gauge theory: compact photons
24.4.1 Gauge invariance and quenched QED
24.4.2 Computational details
Heat bath updates
Coding considerations
24.4.3 Observables
24.4.4 The continuum limit
Scaling windows
24.5 SU(2) Gauge theory
The Haar measure
24.5.1 Implementation
Heat bath updates
Microcanonical updates
Code
24.5.2 Observables
SU(2) string tension and confinement
The phases of gauge theory
Practical observables
24.6 Fermions
Grassmann fields
Euclidean fermions
Discretization
Fermion doublers
Chiral symmetry
Interacting fermions
24.6.1 Fermionic updating
Hybrid Monte Carlo
24.7 Exercises
People also search for Applied Computational Physics 1st:
applied computational physics
applied computational physics city tech
applied computational physics pdf
applied computational physics boudreau pdf
applied computational physics boudreau
Tags:
Applied,Computational Physics,Joseph Boudreau