Book contents
- Frontmatter
- Contents
- Preface to the Second Edition
- Preface to the First Edition
- 1 Introduction
- 2 Getting Started with IPython
- 3 A Short Python Tutorial
- 4 NumPy
- 5 Two-Dimensional Graphics
- 6 Multi-Dimensional Graphics
- 7 SymPy: A Computer Algebra System
- 8 Ordinary Differential Equations
- 9 Partial Differential Equations: A Pseudospectral Approach
- 10 Case Study: Multigrid
- Appendix A Installing a Python Environment
- Appendix B Fortran77 Subroutines for Pseudospectral Methods
- References
- Hints for Using the Index
- Index
Preface to the Second Edition
Published online by Cambridge University Press: 02 August 2017
- Frontmatter
- Contents
- Preface to the Second Edition
- Preface to the First Edition
- 1 Introduction
- 2 Getting Started with IPython
- 3 A Short Python Tutorial
- 4 NumPy
- 5 Two-Dimensional Graphics
- 6 Multi-Dimensional Graphics
- 7 SymPy: A Computer Algebra System
- 8 Ordinary Differential Equations
- 9 Partial Differential Equations: A Pseudospectral Approach
- 10 Case Study: Multigrid
- Appendix A Installing a Python Environment
- Appendix B Fortran77 Subroutines for Pseudospectral Methods
- References
- Hints for Using the Index
- Index
Summary
The motivation for writing this book, and the acknowledgements of the many who have assisted in its production, are included in the topics of the Preface to the first edition, which is reprinted after this one. Here I also need to adjoin thanks to the many readers who provided constructive criticisms, most of which have been incorporated in this revision. The purpose here is to explain why a second edition is needed. Superficially it might appear that very little has changed, apart from a new Chapter 7 which discusses SymPy, Python's own computer algebra system.
There is, however, a fundamental change, which permeates most of the latest version of this book. When the first edition was prepared, the reliable way to use the enhanced interpreter IPython was via the traditional “terminal mode”. Preparations were under way for an enhanced “notebook mode”, which looked then rather like the Mathematica notebook concept, except that it appeared within one's default web browser. That project has now morphed into the Jupyter notebook. The notebook allows one to construct and distribute documents containing computer code (over forty languages are supported), equations, explanatory text, figures and visualizations. Since this is also perhaps the easiest software application for a beginner to develop Python experience, much of the book has been rewritten for the notebook user. In particular there is now a lightning course on how to use the notebook in Appendix A, and Chapter 2 has been extensively rewritten to demonstrate its properties. All of the material in the book now reflects, where appropriate, its use. For example, it allows SymPy to produce algebraic expressions whose format is unsurpassed by other computer algebra systems.
This change also affects the areas of interactive graphics and visual animations. Their demands are such that the standard Python two-dimensional graphics package Matplotlib is having difficulty in producing platform-independent results. Indeed, because of “improved” software upgrades, the code suggested for immediate on-screen animations in the first edition no longer works. However, the notebook concept has a subtle solution to resolve this impasse. Recall that the notebook window is your browser window, which uses modern HTML graphics. The consequent benefits are introduced in Chapter 6.
- Type
- Chapter
- Information
- Python for Scientists , pp. xi - xiiPublisher: Cambridge University PressPrint publication year: 2017