--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/matrices.org Tue Mar 30 19:17:35 2010 +0530
@@ -0,0 +1,77 @@
+* Matrices
+*** Outline
+***** Introduction
+******* Why do we want to do that?
+******* We shall use arrays (introduced before) for matrices
+******* Arsenal Required
+********* working knowledge of arrays
+***** Various matrix operations
+******* Transpose
+******* Sum of all elements
+******* Element wise operations
+******* Matrix multiplication
+******* Inverse of a matrix
+******* Determinant
+******* eigen values/vectors
+******* svd
+***** Other things available?
+*** Script
+ Welcome.
+
+ In this tutorial, you will learn how to perform some common matrix
+ operations. We shall look at some of the functions available in
+ pylab. Note that, this tutorial just scratches the surface and
+ there is a lot more that can be done.
+
+ Let's begin with finding the transpose of a matrix.
+
+ In []: a = array([[ 1, 1, 2, -1],
+ ...: [ 2, 5, -1, -9],
+ ...: [ 2, 1, -1, 3],
+ ...: [ 1, -3, 2, 7]])
+
+ In []: a.T
+
+ Type a, to observe the change in a.
+ In []: a
+
+ Now we shall look at adding another matrix b, to a. It doesn't
+ require anything special, just use the + operator.
+
+ In []: b = array([[3, 2, -1, 5],
+ [2, -2, 4, 9],
+ [-1, 0.5, -1, -7],
+ [9, -5, 7, 3]])
+ In []: a + b
+
+ What do you expect would be the result, if we used * instead of
+ the + operator?
+
+ In []: a*b
+
+ You get an element-wise product of the two arrays and not a matrix
+ product. To get a matrix product, we use the dot function.
+
+ In []: dot(a, b)
+
+ The sum function returns the sum of all the elements of the
+ array.
+
+ In []: sum(a)
+
+ The inv command returns the inverse of the matrix.
+ In []: inv(a)
+
+ In []: det(a)
+
+ In []: eig(a)
+ Returns the eigenvalues and the eigen vectors.
+
+ In []: eigvals(a)
+ Returns only the eigenvalues.
+
+ In []: svd(a)
+ Singular Value Decomposition
+
+*** Notes
+