Computer simulation in physics and engineering /
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""...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Berlin :
Walter de Gruyter GmbH & Co. KG,
2013.
|
Temas: | |
Acceso en línea: | Texto completo |
Tabla de Contenidos:
- 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 memory2.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()-statement2.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.