<p>This work is a needed reference for widely used techniques and methods of computer simulation in physics and other disciplines, such as materials science. The work conveys both: the theoretical foundations of computer simulation as well as applications and "tricks of the trade," that often are sc
Computer Simulation in Physics and Engineering
β Scribed by Martin Oliver Steinhauser
- Publisher
- De Gruyter
- Year
- 2012
- Tongue
- English
- Leaves
- 532
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
This work is a needed reference for widely used techniques and methods of computer simulation in physics and other disciplines, such as materials science. Molecular dynamics computes a molecule's reactions and dynamics based on physical models; Monte Carlo uses random numbers to image a system's behaviour when there are different possible outcomes with related probabilities. The work conveys both the theoretical foundations as well as applications and "tricks of the trade", that often are scattered across various papers. Thus it will meet a need and fill a gap for every scientist who needs computer simulations for his/her task at hand. In addition to being a reference, case studies and exercises for use as course reading are included.
- Provides a hands-on reference of molecular dynamics and Monte Carlo simulation methods
- Presents the foundations of the methods
- Assembles many "tricks of the trade" of the most important techniques
- For Physicists, Engineers and Material Scientists
- Numerous illustrations
- Source code samples for download
- With case studies and exercises for use as course reading
β¦ Table of Contents
Preface
1 Introduction to computer simulation
1.1 Physics and computational physics
1.2 Choice of programming language
1.3 Outfitting your PC for scientific computing
1.4 History of computing in a nutshell
1.5 Number representation: bits and bytes in computer memory
1.5.1 Addition and subtraction of dual integer numbers
1.5.2 Basic data types
1.6 The role of algorithms in scientific computing
1.6.1 Efficient and inefficient calculations
1.6.2 Asymptotic analysis of algorithms
1.6.3 Merge sort and divide-and-conquer
1.7 Theory, modeling and computer simulation
1.7.1 What is a theory?
1.7.2 What is a model?
1.7.3 Model systems: particles or fields?
1.7.4 The linear chain as a model system
1.7.5 From modeling to computer simulation
1.8 Exercises
1.8.1 Addition of bit patterns of 1 byte duals
1.8.2 Subtracting dual numbers using twoβs complement
1.8.3 Comparison of running times
1.8.4 Asymptotic notation
1.9 Chapter literature
2 Scientific Computing in C
2.1 Introduction
2.1.1 Basics of a UNIX/Linux programming environment
2.2 First steps in C
2.2.1 Variables in C
2.2.2 Global variables
2.2.3 Operators in C
2.2.4 Control structures
2.2.5 Scientific βHello world!β
2.2.6 Streams - input/output functionality
2.2.7 The preprocessor and symbolic constants
2.2.8 The function scanf()
2.3 Programming examples of rounding errors and loss of precision
2.3.1 Algorithms for calculating e-x
2.3.2 Algorithm for summing 1/n
2.4 Details on C-Arrays
2.4.1 Direct initialization of certain array elements (C99)
2.4.2 Arrays with variable length (C99)
2.4.3 Arrays as function parameters
2.4.4 Pointers
2.4.5 Pointers as function parameters
2.4.6 Pointers to functions as function parameters
2.4.7 Strings
2.5 Structures and their representation in computer memory
2.5.1 Blending structs and arrays
2.6 Numerical differentiation and integration
2.6.1 Numerical differentiation
2.6.2 Case study: the second derivative of ex
2.6.3 Numerical integration
2.7 Remarks on programming and software engineering
2.7.1 Good software development practices
2.7.2 Reduction of complexity
2.7.3 Designing a program
2.7.4 Readability of a program
2.7.5 Focus your attention by using conventions
2.8 Ways to improve your programs
2.9 Exercises
2.9.1 Questions
2.9.2 Errors in programs
2.9.3 printf()-statement
2.9.4 Assignments
2.9.5 Loops
2.9.6 Recurrence
2.9.7 Macros
2.9.8 Strings
2.9.9 Structs
2.10 Projects
2.10.1 Decimal and binary representation
2.10.2 Nearest machine number
2.10.3 Calculating e -x
2.10.4 Loss of precision
2.10.5 Summing series
2.10.6 Recurrence in orthogonal functions
2.10.7 The Towers of Hanoi
2.10.8 Spherical harmonics and Legendre polynomials
2.10.9 Memory diagram of a battle
2.10.10 Computing derivatives numerically
2.11 Chapter literature
3 Fundamentals of statistical physics
3.1 Introduction and basic ideas
3.1.1 The macrostate
3.1.2 The microstate
3.1.3 Information conservation in statistical physics
3.1.4 Equations of motion in classical mechanics
3.1.5 Statistical physics in phase space
3.2 Elementary statistics
3.2.1 Random Walk
3.2.2 Discrete and continuous probability distributions
3.2.3 Reduced probability distributions
3.2.4 Important distributions in physics and engineering
3.3 Equilibrium distribution
3.3.1 The most probable distribution
3.3.2 A statistical definition of temperature
3.3.3 The Boltzmann distribution and the partition function
3.4 The canonical ensemble
3.5 Exercises
3.5.1 Trajectories of the one-dimensional harmonic oscillator in phase space
3.5.2 Important integrals of statistical physics
3.5.3 Probability, example from playing cards
3.5.4 Rolling dice
3.5.5 Problems, using the Poisson density
3.5.6 Particle inside a sphere
4 Inter- and intramolecular potentials
4.1 Introduction
4.2 The quantum mechanical origin of particle interactions
4.3 The energy hypersurface and classical approximations
4.4 Non-bonded interactions
4.5 Pair potentials
4.5.1 Repulsive Interactions
4.5.2 Electric multipoles and multipole expansion
4.5.3 Charge-dipole interaction
4.5.4 Dipole-dipole interaction
4.5.5 Dipole-dipole interaction and temperature
4.5.6 Induction energy
4.5.7 Dispersion energy
4.5.8 Further remarks on pair potentials
4.6 Bonded interactions
4.7 Chapter literature
5 Molecular Dynamics simulations
5.1 Introduction
5.1.1 Historical notes on MD
5.1.2 Limitations of MD
5.2 Numerical integration of differential equations
5.2.1 Ordinary differential equations
5.2.2 Finite Difference methods
5.2.3 Improvements to Eulerβs algorithm
5.2.4 Predictor-corrector methods
5.2.5 Runge-Kutta methods
5.3 Integrating Newtonβs equation of motion: the Verlet algorithm
5.4 The basic MD algorithm
5.5 Basic MD: planetary motion
5.5.1 Preprocessor statements and basic definitions
5.5.2 Organization of the data
5.5.3 Function that computes the energy
5.5.4 The Verlet velocity algorithm
5.5.5 The force calculation
5.5.6 The initialization and output functions
5.5.7 The main()-function
5.6 Planetary motion: suggested project
5.7 Periodic boundary conditions
5.8 Minimum image convention
5.9 Lyapunov instability
5.10 Case study: static and dynamic properties of a microcanonical LJ fluid
5.10.1 Microcanonical LJ fluid: suggested projects
5.11 Chapter literature
6 Monte Carlo simulations
6.1 Introduction to MC simulation
6.1.1 Historical remarks
6.2 Simple random numbers
6.2.1 The linear congruential method
6.2.2 Monte Carlo integration - simple sampling
6.3 Case study: MC simulation of harddisks
6.3.1 Trial moves
6.3.2 Case study: MC simulation of harddisks - suggested exercises
6.4 The Metropolis Monte Carlo method
6.5 The Ising model
6.5.1 Case study: Monte Carlo simulation of the 2D Ising magnet .
6.6 Case Study: NVT MC of dumbbell molecules in 2D
6.7 Exercises
6.7.1 The GSL library
6.7.2 Calculating Ο
6.7.3 Simple and importance sampling with random walks in 1D
6.7.4 Simple sampling and importance sampling with random walks in 1D
6.8 Chapter literature
7 Advanced topics, and applications in soft matter
7.1 Partial differential equations
7.1.1 Elliptic PDEs
7.1.2 Parabolic PDEs
7.1.3 Hyperbolic PDEs
7.2 The finite element method (FEM)
7.3 Coarse-grained MD for mesoscopic polymer and biomolecular simulations
7.3.1 Why coarse-grained simulations?
7.4 Scaling properties of polymers
7.5 Ideal polymer chains
7.6 Single-chain conformations
7.7 The ideal (Gaussian) chain model
7.8 Scaling of flexible and semiflexible polymer chains
7.9 Constant temperature MD
7.10 Velocity scaling using the Behrendsen thermostat
7.11 Dissipative particle dynamics thermostat
7.12 Case study: NVT Metropolis MC simulation of a LJ fluid
7.13 Exercise
7.13.1 Dumbbell molecules in 3D
A The software development life cycle
B Installation guide to Cygwin
C Introduction to the UNIX/Linux programming environment
C.1 Directory structure
C.2 Users, rights and privileges
C.3 Some basic commands
C.4 Processes
C.4.1 Ending processes
C.4.2 Processes priorities and resources
C.5 The Bash
C.6 Tips and tricks
C.7 Useful programs
C.7.1 Remote connection: ssh
C.7.2 Gnuplot
C.7.3 Text editors: vi, EMACS and others
D Sample program listings
D.1 Sample code for file handling
E Reserved keywords in C
F Functions of the standard library
G Elementary combinatorial problems
G.1 How many differently ordered sequences of N objects are possible?
G.2 In how many ways can N objects be divided into two piles, with n and m objects, respectively?
G.3 In how many ways can N objects be arranged in r + 1 piles with nj objects in pile number j with j β [0, 1,..., r]?
G.4 Stirlingβs approximation of large numbers
H Some useful constants
I Installing the GNU Scientific Library, GSL
J Standard header files of the ANSI-C library
K The central limit theorem
Bibliography
Acronyms
Index
Authors
π SIMILAR VOLUMES
This handbook serves as a comprehensive, systematic reference to the major mathematical models used in radio engineering and communications, and presents computer simulation algorithms to help the reader estimate parameters of radio systems. It provides the technical details necessary to design and
<p><em>Computer Simulation in Chemical Physics</em> contains the proceedings of a NATO Advanced Study Institute held at CORISA, Alghero, Sardinia, in September 1992. In the five years that have elapsed since the field was last summarized there have been a number of remarkable advances which have sig
Computational methods pertaining to many branches of science, such as physics, physical chemistry and biology, are presented. The text is primarily intended for third-year undergraduate or first-year graduate students. However, active researchers wanting to learn about the new techniques of computat