New insight in many scientific and engineering fields is unthinkable without the use of numerical simulations running efficiently on modern computers. The faster we get new results, the bigger and accurate are the problems that we can solve. It is the combination of mathematical ideas plus efficient programming that drives the progress in many disciplines. Future champions in the area thus will have to be qualified in their application domain, they will need a profound understanding of some mathematical ideas, and they need the skills to deliver fast code.
The present textbook targets students which have programming skills already and do not shy away from mathematics, though they might be educated in computer science or an application domain. It introduces the basic concepts and ideas behind applied mathematics and parallel programming that we need to write numerical simulations for today’s multicore workstations. Our intention is not to dive into one particular applicationdomain or to introduce a new programming language – we lay the generic foundations for future courses and projects in the area.
The text is written in an accessible style which is easy to digest for students without years and years of mathematics education. It values clarity and intuition over formalism, and uses a simple N-body simulation setup to illustrate basic ideas that are of relevance in various different subdomains of scientific computing. Its primary goal is to make theoretical and paradigmatic ideas accessible to undergraduate students and to bring the fascination of the field across.
It is the combination of mathematical ideas and efficient programs that drives the progress in many scientific disciplines: The faster results can be generated on a computer, the bigger and the more accurate are the challenges that can be solved.
This textbook targets students who have programming skills and do not shy away from mathematics, though they might be educated in computer science or an application domain and have no primary interest in the maths. The book is for students who want to see some simulations up and running. It introduces the basic concepts and ideas behind applied mathematics and parallel programming that are needed to write numerical simulations for today’s multicore workstations. The intention is not to dive into one particular application domain or to introduce a new programming language; rather it is to lay the generic foundations for future studies and projects in this field.Topics and features:
- Fits into many degrees where students have already been exposed to programming languages
- Pairs an introduction to mathematical concepts with an introduction to parallel programming
- Emphasises the paradigms and ideas behind code parallelisation, so students can later on transfer their knowledge and skills
- Illustrates fundamental numerical concepts, preparing students for more formal textbooks
Tobias Weinzierl is professor in the Department of Computer Science at Durham University, Durham, UK. He has worked at the Munich Centre for Advanced Computing (see the Springer edited book, Advanced Computing) before, and holds a PhD and habilitation from the Technical University Munich.