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

Stacking


The universal method to build matrices from a couple of (matching) submatrices is concatenate. Its syntax is:

concatenate((a1, a2, ...), axis = 0)

This command stacks the submatrices vertically (on top of each other) when axis=0 is specified. With the axis=1 argument, they are stacked horizontally, and this generalizes according to arrays with more dimensions. This function is called by several convenient functions, as follows:

  • hstack: Used to stack matrices horizontally
  • vstack: Used to stack matrices vertically
  • columnstack: Used to stack vectors in columns

Stacking vectors

One may stack vectors row-wise or column-wise using vstack and column_stack, as illustrated in the following figure:

Tip

hstack would produce the concatenation of v1 and v2. 

Let us consider the symplectic permutation as an example for vector stacking: We have a vector of size 2n. We want to perform a symplectic transformation of a vector with an even number of components, that is, exchange the first half with the second...