Автор: Dimitrios Mitsotakis
Издательство: CRC Press
Год: 2023
Страниц: 529
Язык: английский
Формат: pdf (true)
Размер: 125.8 MB
This textbook is a comprehensive introduction to computational mathematics and scientific computing suitable for undergraduate and postgraduate courses. It presents both practical and theoretical aspects of the subject, as well as advantages and pitfalls of classical numerical methods alongside with computer code and experiments in Python. Each chapter closes with modern applications in physics, engineering, and Computer Science.
The choice of programming language for scientific computations is a rather difficult task. One may choose among classical programming languages such as C/C++ and Fortran, or languages such as Python, Julia and MATLAB. In this book, we present all the material in Python. Python is a free programming language with a wide variety of extensions. These include extensions to Data Science and Machine Learning, as well as more traditional areas, such as the numerical solution of differential equations. Python comes with functions for almost every method we present in this book, which makes Python a great pedagogical tool. The computer code you will find in this book is written in such a simple way that experts in Python will find my coding style very naive. However, I believe that this style helps students to learn programming. Each programmer can follow their own programming style or standards, like those suggested by the official “style guide for Python code” PEP. To ensure the validity of our code, we produced the output presented in this book with PythonTex. In the text, we also test the majority of methods and codes using the so-called method of manufactured solutions. Specifically, we present experiments using simple problems with known solutions, and we verify experimentally the properties and accuracy of the numerical solutions. This is a common practice for experimental justification of numerical methods.
The book is organized into three parts. The first part contains a presentation of tools that we use to develop and study numerical methods. Chapters 1 and 2 briefly introduce Python, NumPy and SciPy and are dedicated to readers without previous experience in Python or those who want to refresh basic knowledge. Chapter 2 serves as a revision of linear algebra matters. It also introduces advanced methods, such as methods for special matrices. Chapter 3 is recommended to readers who are not familiar with floating point arithmetic and its consequences.
In the second part, we present the theory and implementation details of important and commonly used numerical methods in science. More precisely, Chapter 5 presents methods for the approximation of roots of nonlinear equations such as the bisection and Newton’s method.
The third part contains more advanced numerical methods. Some of them can be characterized as the pillars of scientific Machine Learning and neural networks.
Features:
No previous experience in Python is required.
Includes simplified computer code for fast-paced learning and transferable skills development.
Includes practical problems ideal for project assignments and distance learning.
Presents both intuitive and rigorous faces of modern scientific computing.
Provides an introduction to neural networks and Machine Learning.
Скачать Computational Mathematics: An introduction to Numerical Analysis and Scientific Computing with Python