Book Image

Scientific Computing with Python 3

By : Claus Führer, Jan Erik Solem, Olivier Verdier
Book Image

Scientific Computing with Python 3

By: Claus Führer, Jan Erik Solem, Olivier Verdier

Overview of this book

Python can be used for more than just general-purpose programming. It is a free, open source language and environment that has tremendous potential for use within the domain of scientific computing. This book presents Python in tight connection with mathematical applications and demonstrates how to use various concepts in Python for computing purposes, including examples with the latest version of Python 3. Python is an effective tool to use when coupling scientific computing and mathematics and this book will teach you how to use it for linear algebra, arrays, plotting, iterating, functions, polynomials, and much more.
Table of Contents (23 chapters)
Scientific Computing with Python 3
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Acknowledgement
Preface
References

Examples for Linear Algebra Methods in SymPy


The basic task in linear algebra is to solve linear equation systems:

.

Let us do this symbolically for a 3 × 3 matrix:

A = Matrix(3,3,symbols('A1:4(1:4)'))
b = Matrix(3,1,symbols('b1:4'))
x = A.LUsolve(b)

The output of this relatively small problem is already merely readable which can be seen in the following expression:

Again, the use of  simplify command helps us to detect canceling terms and to collect common factors:

simplify(x)

which will result in the following output which looks much better:

Symbolic computations becomes very slow with increase in matrix dimensions. For dimensions bigger than 15, there might even occur memory problems.

The preceding figure (Figure 15.3) illustrates the differences in CPU time between symbolically and numerically solving a linear system:

Figure 15.3: CPU time for numerically and symbolically solving a linear system.