Implement state-of-the-art techniques to visualize solutions to challenging problems in scientific computing, with the use of the SciPy stack
About This Book
Master the theory and algorithms behind numerical recipes and how they can be applied to real-world problems
Learn to combine the most appropriate built-in functions from the SciPy stack by understanding the connection between the sources of your problem, volume of data, or computer architecture
A comprehensive coverage of all the mathematical techniques needed to solve the presented topics, with a discussion of the relevant algorithms built in the SciPy stack
Who This Book Is For
If you are a mathematician, engineer, or computer scientist with a proficiency in Python and familiarity with IPython, this is the book for you. Some basic knowledge of numerical methods in scientific computing would be helpful.
What You Will Learn
Master relevant algorithms used in symbolic or numerical mathematics to address approximation, interpolation, differentiation, integration, root-finding, and optimization of scalar or multi-variate functions
Develop different algorithms and strategies to efficiently store and manipulate large matrices of data, in particular to solve systems of linear equations, or compute their eigenvalues/eigenvectors
Understand how to model physical problems with systems of differential equations and distinguish the factors that dictate the strategies to solve them
Perform statistical analysis, hypothesis test design and resolution, or data mining at a higher level, and apply them to real-life problems in the field of data analysis
Gain insights on the power of distances, Delaunay triangulations and Voronoi diagrams for Computational Geometry, and apply them to various engineering problems
Familiarize yourself with different techniques in signal/image processing, including filtering audio, images, or video to extract information, features, or remove components
In Detail
The SciPy stack is a collection of open source libraries of the powerful scripting language Python, together with its interactive shells. This environment offers a cutting-edge platform for numerical computation, programming, visualization and publishing, and is used by some of the world’s leading mathematicians, scientists, and engineers. It works on any operating system that supports Python and is very easy to install, and completely free of charge! It can effectively transform into a data-processing and system-prototyping environment, directly rivalling MATLAB and Octave.
This book goes beyond a mere description of the different built-in functions coded in the libraries from the SciPy stack. It presents you with a solid mathematical and computational background to help you identify the right tools for each problem in scientific computing and visualization. You will gain an insight into the best practices with numerical methods depending on the amount or type of data, properties of the mathematical tools employed, or computer architecture, among other factors.
The book kicks off with a concise exploration of the basics of numerical linear algebra and graph theory for the treatment of problems that handle large data sets or matrices. In the subsequent chapters, you will delve into the depths of algorithms in symbolic algebra and numerical analysis to address modeling/simulation of various real-world problems with functions (through interpolation, approximation, or creation of systems of differential equations), and extract their representing features (zeros, extrema, integration or differentiation).
Lastly, you will move on to advanced concepts of data analysis, image/signal processing, and computational geometry.
Style and approach
Packed with real-world examples, this book explores the mathematical techniques needed to solve the presented topics, and focuses on the algorithms built in the SciPy stack.
Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the code file.