All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
Published by Packt Publishing Ltd.
Birmingham B3 2PB, UK.
Credits
Author
Francisco J. Blanco-Silva
Reviewers
Raiyan Kamal
Kristen Thyng
Patrick Varilly
Jonathan Whitmore
Commissioning Editor
Kartikey Pandey
Acquisition Editor
Shaon Basu
Content Development Editor
Nikhil Potdukhe
Technical Editor
Bharat Patil
Copy Editors
Tani Kothari
Merilyn Pereira
Project Coordinator
Judie Jose
Proofreader
Safis Editing
Indexer
Tejal Soni
Production Coordinator
Aparna Bhagat
Cover Work
Aparna Bhagat
About the Author
Francisco J. Blanco-Silva is the owner of a scientific consulting company called Tizona Scientific Solutions, a faculty member of the Department of Mathematics, and an associate member of the Interdisciplinary Mathematics Institute at the University of South Carolina. He obtained his formal training as an applied mathematician from Purdue University. He enjoys problem solving, learning, and teaching alike. Being an avid programmer and blogger, when it comes to writing, he relishes finding the common denominator among his passions and skills and making it available to everyone.
He wrote the prequel to this book, Learning SciPy for Numerical and Scientific Computing , Packt Publishing , and coauthored Chapter 5 of the book, Modeling Nanoscale Imaging in Electron Microscopy , Springer .
I will always be indebted to Bradley J. Lucier and Rodrigo Bauelos for being constant sources of inspiration and for their guidance and teachings. Special thanks to my editors, Sriram Neelakantam, Bharat Patil, Nikhil Potdukhe, Mohammad Rizvi, and the many colleagues who have contributed by giving me encouragement and participating in helpful discussions. In particular, I would like to mention Parsa Bakhtary, Aaron Dutle, Edsel Pea, Pablo Sprechmann, Adam Taylor, and Holly Watson.
The most special thanks, without a doubt, goes to my wife and daughter. Grace's love and smiles alone provided all the motivation, enthusiasm, and skills to overcome the difficulties encountered during the writing of this book and everything that life threw at me ever since she was born.
About the Reviewers
Raiyan Kamal is a strong proponent of the open source movement and everything related to Python. He holds a bachelor's degree in computer science from BUET, Dhaka, Bangladesh, and a master's degree from the University of Windsor, Ontario, Canada. He has been working in the software industry for several years, developing software for mobile, web, and desktop platforms. Although he is in his early thirties, Raiyan feels that his boyhood has not ended yet. He often looks for hidden treasures in science, engineering, programming, art, and nature. He is currently working at IOU Concepts, exploring different ways of saying thank you. When he isn't on a computer, he plants trees and composts kitchen scraps.
Kristen Thyng has worked on scientific computing for most of her career. She has a bachelor's degree in physics from Whitman College, master's degree in applied mathematics from the University of Washington, and PhD in mechanical engineering from the University of Washington. She uses Python on a daily basis for analysis and visualization in physical oceanography at Texas A&M University, where she works as an assistant research scientist.
Jonathan Whitmore is a data scientist at Silicon Valley Data Science. He has a diverse range of interests and is excited by the challenges in data science and data engineering. Before moving into the tech industry, he worked as an astrophysicist in Melbourne, Australia, researching whether the fundamental physical constants have changed over the lifespan of the universe. He has a long-standing commitment to the public's understanding of science and technology, and has contributed to FOSS projects. He co-starred in the 3D IMAX film Hidden Universe , which was playing in theaters around the world at the time of writing this book. Jonathan is a sought-after conference speaker on science and technical topics. He received his PhD in physics from the University of California, San Diego, and graduated magna cum laude from Vanderbilt University with a bachelor's degree in science. He is also a triple major in physics (with honors), philosophy, and mathematics.
www.PacktPub.com
Support files, eBooks, discount offers, and more
For support files and downloads related to your book, please visit www.PacktPub.com.
Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at > for more details.
At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.
https://www2.packtpub.com/books/subscription/packtlib
Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can search, access, and read Packt's entire library of books.
Why subscribe?
- Fully searchable across every book published by Packt
- Copy and paste, print, and bookmark content
- On demand and accessible via a web browser
Free access for Packt account holders
If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib today and view 9 entirely free books. Simply use your login credentials for immediate access.
Preface
The idea of writing Mastering SciPy arose but 2 months after publishing Learning SciPy for Numerical and Scientific Computing . During a presentation of that book at the University of South Carolina, I had the privilege of speaking about its contents to a heterogeneous audience of engineers, scientists, and students, each of them with very different research problems and their own set of preferred computational resources. In the weeks following that presentation, I helped a few professionals transition to a SciPy-based environment. During those sessions, we discussed how SciPy is, under the hood, the same set of algorithms (and often the same code) that they were already using. We experimented with some of their examples and systematically obtained comparable performance. We immediately saw the obvious benefit of a common environment based upon a robust scripting language. Through the SciPy stack, we discovered an easier way to communicate and share our results with colleagues, students, or employers. In all cases, the switch to the SciPy stack provided a faster setup for our groups, where newcomers could get up to speed quickly.