diff --git a/lecture_09/.ipynb_checkpoints/lecture_09-checkpoint.ipynb b/lecture_09/.ipynb_checkpoints/lecture_09-checkpoint.ipynb
new file mode 100644
index 0000000..2fd6442
--- /dev/null
+++ b/lecture_09/.ipynb_checkpoints/lecture_09-checkpoint.ipynb
@@ -0,0 +1,6 @@
+{
+ "cells": [],
+ "metadata": {},
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/lecture_09/.lecture_09.md.swp b/lecture_09/.lecture_09.md.swp
new file mode 100644
index 0000000..4000b4f
Binary files /dev/null and b/lecture_09/.lecture_09.md.swp differ
diff --git a/lecture_09/even_odd_perm.svg b/lecture_09/even_odd_perm.svg
new file mode 100644
index 0000000..eeaca19
--- /dev/null
+++ b/lecture_09/even_odd_perm.svg
@@ -0,0 +1,331 @@
+
+
+
+
diff --git a/lecture_09/lecture_09.ipynb b/lecture_09/lecture_09.ipynb
new file mode 100644
index 0000000..4889d52
--- /dev/null
+++ b/lecture_09/lecture_09.ipynb
@@ -0,0 +1,1151 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Linear Algebra (Review/Introduction)\n",
+ "\n",
+ "Representation of linear equations:\n",
+ "\n",
+ "1. $5x_{1}+3x_{2} =1$\n",
+ "\n",
+ "2. $x_{1}+2x_{2}+3x_{3} =2$\n",
+ "\n",
+ "3. $x_{1}+x_{2}+x_{3} =3$\n",
+ "\n",
+ "in matrix form:\n",
+ "\n",
+ "$\\left[ \\begin{array}{ccc}\n",
+ "5 & 3 & 0 \\\\\n",
+ "1 & 2 & 3 \\\\\n",
+ "1 & 1 & 1 \\end{array} \\right]\n",
+ "\\left[\\begin{array}{c} \n",
+ "x_{1} \\\\ \n",
+ "x_{2} \\\\\n",
+ "x_{3}\\end{array}\\right]=\\left[\\begin{array}{c} \n",
+ "1 \\\\\n",
+ "2 \\\\\n",
+ "3\\end{array}\\right]$\n",
+ "\n",
+ "$Ax=b$"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Vectors \n",
+ "\n",
+ "column vector x (length of 3):\n",
+ "\n",
+ "$\\left[\\begin{array}{c} \n",
+ "x_{1} \\\\ \n",
+ "x_{2} \\\\\n",
+ "x_{3}\\end{array}\\right]$\n",
+ "\n",
+ "row vector y (length of 3):\n",
+ "\n",
+ "$\\left[\\begin{array}{ccc} \n",
+ "y_{1}~ \n",
+ "y_{2}~ \n",
+ "y_{3}\\end{array}\\right]$\n",
+ "\n",
+ "vector of length N:\n",
+ "\n",
+ "$\\left[\\begin{array}{c} \n",
+ "x_{1} \\\\ \n",
+ "x_{2} \\\\\n",
+ "\\vdots \\\\\n",
+ "x_{N}\\end{array}\\right]$\n",
+ "\n",
+ "The $i^{th}$ element of x is $x_{i}$"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "x =\n",
+ "\n",
+ " 1 2 3 4 5 6 7 8 9 10\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "x=[1:10]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "ans =\n",
+ "\n",
+ " 1\n",
+ " 2\n",
+ " 3\n",
+ " 4\n",
+ " 5\n",
+ " 6\n",
+ " 7\n",
+ " 8\n",
+ " 9\n",
+ " 10\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "x'"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Matrices\n",
+ "\n",
+ "Matrix A is 3x3:\n",
+ "\n",
+ "$A=\\left[ \\begin{array}{ccc}\n",
+ "5 & 3 & 0 \\\\\n",
+ "1 & 2 & 3 \\\\\n",
+ "1 & 1 & 1 \\end{array} \\right]$\n",
+ "\n",
+ "elements in the matrix are denoted $A_{row~column}$, $A_{23}=3$\n",
+ "\n",
+ "In general, matrix, B, can be any size, $M \\times N$ (M-rows and N-columns):\n",
+ "\n",
+ "$B=\\left[ \\begin{array}{cccc}\n",
+ "B_{11} & B_{12} &...& B_{1N} \\\\\n",
+ "B_{21} & B_{22} &...& B_{2N} \\\\\n",
+ "\\vdots & \\vdots &\\ddots& \\vdots \\\\\n",
+ "B_{M1} & B_{M2} &...& B_{MN}\\end{array} \\right]$"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "A =\n",
+ "\n",
+ " 5 3 0\n",
+ " 1 2 3\n",
+ " 1 1 1\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "A=[5,3,0;1,2,3;1,1,1]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Multiplication\n",
+ "\n",
+ "A column vector is a $1\\times N$ matrix and a row vector is a $M\\times 1$ matrix\n",
+ "\n",
+ "**Multiplying matrices is not commutative**\n",
+ "\n",
+ "$A B \\neq B A$\n",
+ "\n",
+ "Inner dimensions must agree, output is outer dimensions. \n",
+ "\n",
+ "A is $M1 \\times N1$ and B is $M2 \\times N2$\n",
+ "\n",
+ "C=AB\n",
+ "\n",
+ "Therefore N1=M2 and C is $M1 \\times N2$\n",
+ "\n",
+ "If $C'=BA$, then N2=M1 and C is $M2 \\times N1$\n",
+ "\n",
+ "\n",
+ "e.g. \n",
+ "$A=\\left[ \\begin{array}{cc}\n",
+ "5 & 3 & 0 \\\\\n",
+ "1 & 2 & 3 \\end{array} \\right]$\n",
+ "\n",
+ "$B=\\left[ \\begin{array}{cccc}\n",
+ "1 & 2 & 3 & 4 \\\\\n",
+ "5 & 6 & 7 & 8 \\\\\n",
+ "9 & 10 & 11 & 12 \\end{array} \\right]$\n",
+ "\n",
+ "C=AB\n",
+ "\n",
+ "$[2\\times 4] = [2 \\times 3][3 \\times 4]$\n",
+ "\n",
+ "The rule for multiplying matrices, A and B, is\n",
+ "\n",
+ "$C_{ij} = \\sum_{k=1}^{n}A_{ik}B_{kj}$\n",
+ "\n",
+ "In the previous example, \n",
+ "\n",
+ "$C_{11} = A_{11}B_{11}+A_{12}B_{21}+A_{13}B_{31} = 5*1+3*5+0*9=20$\n",
+ "\n",
+ "\n",
+ "Multiplication is associative:\n",
+ "\n",
+ "$(AB)C = A(BC)$\n",
+ "\n",
+ "and distributive:\n",
+ "\n",
+ "$A(B+C)=AB+AC$"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "A =\n",
+ "\n",
+ " 5 3 0\n",
+ " 1 2 3\n",
+ "\n",
+ "B =\n",
+ "\n",
+ " 1 2 3 4\n",
+ " 5 6 7 8\n",
+ " 9 10 11 12\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "A=[5,3,0;1,2,3] \n",
+ "B=[1,2,3,4;5,6,7,8;9,10,11,12]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "C =\n",
+ "\n",
+ " 0 0 0 0\n",
+ " 0 0 0 0\n",
+ "\n",
+ "C =\n",
+ "\n",
+ " 20 28 36 44\n",
+ " 38 44 50 56\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "C=zeros(2,4)\n",
+ "C(1,1)=A(1,1)*B(1,1)+A(1,2)*B(2,1)+A(1,3)*B(3,1);\n",
+ "C(1,2)=A(1,1)*B(1,2)+A(1,2)*B(2,2)+A(1,3)*B(3,2);\n",
+ "\n",
+ "C=A*B"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "error: operator *: nonconformant arguments (op1 is 3x4, op2 is 2x3)\r\n"
+ ]
+ }
+ ],
+ "source": [
+ "Cp=B*A"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Representation of a problem with Matrices and Vectors\n",
+ "\n",
+ "If you have a set of known output, $y_{1},~y_{2},~...y_{N}$ and a set of equations that\n",
+ "relate unknown inputs, $x_{1},~x_{2},~...x_{N}$, then these can be written in a vector\n",
+ "matrix format as:\n",
+ "\n",
+ "$y=Ax=\\left[\\begin{array}{c} \n",
+ "y_{1} \\\\ \n",
+ "y_{2} \\\\\n",
+ "\\vdots \\\\\n",
+ "y_{N}\\end{array}\\right]\n",
+ "=\n",
+ "A\\left[\\begin{array}{c} \n",
+ "x_{1} \\\\ \n",
+ "x_{2} \\\\\n",
+ "\\vdots \\\\\n",
+ "x_{N}\\end{array}\\right]$\n",
+ "\n",
+ "$A=\n",
+ "\\left[\\begin{array}{cccc} \n",
+ "| & | & & | \\\\ \n",
+ "a_{1} & a_{2} & ... & a_{N} \\\\ \n",
+ "| & | & & | \\end{array}\\right]$\n",
+ "\n",
+ "or \n",
+ "\n",
+ "$y = a_{1}x_{1} + a_{2}x_{2} +...+a_{N}x_{N}$\n",
+ "\n",
+ "where each $a_{i}$ is a column vector and $x_{i}$ is a scalar taken from the $i^{th}$\n",
+ "element of x.\n",
+ "\n",
+ "Consider the following problem, 4 masses are connected in series to 4 springs with K=10 N/m. What are the final positions of the masses? \n",
+ "\n",
+ "![Springs-masses](mass_springs.svg)\n",
+ "\n",
+ "The masses haves the following amounts, 1, 2, 3, and 4 kg for masses 1-4. Using a FBD for each mass:\n",
+ "\n",
+ "$m_{1}g+k(x_{2}-x_{1})-kx_{1}=0$\n",
+ "\n",
+ "$m_{2}g+k(x_{3}-x_{2})-k(x_{2}-x_{1})=0$\n",
+ "\n",
+ "$m_{3}g+k(x_{4}-x_{3})-k(x_{3}-x_{2})=0$\n",
+ "\n",
+ "$m_{4}g-k(x_{4}-x_{3})=0$\n",
+ "\n",
+ "in matrix form:\n",
+ "\n",
+ "$\\left[ \\begin{array}{cccc}\n",
+ "2k & -k & 0 & 0 \\\\\n",
+ "-k & 2k & -k & 0 \\\\\n",
+ "0 & -k & 2k & -k \\\\\n",
+ "0 & 0 & -k & k \\end{array} \\right]\n",
+ "\\left[ \\begin{array}{c}\n",
+ "x_{1} \\\\\n",
+ "x_{2} \\\\\n",
+ "x_{3} \\\\\n",
+ "x_{4} \\end{array} \\right]=\n",
+ "\\left[ \\begin{array}{c}\n",
+ "m_{1}g \\\\\n",
+ "m_{2}g \\\\\n",
+ "m_{3}g \\\\\n",
+ "m_{4}g \\end{array} \\right]$"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 11,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "K =\n",
+ "\n",
+ " 20 -10 0 0\n",
+ " -10 20 -10 0\n",
+ " 0 -10 20 -10\n",
+ " 0 0 -10 10\n",
+ "\n",
+ "y =\n",
+ "\n",
+ " 9.8100\n",
+ " 19.6200\n",
+ " 29.4300\n",
+ " 39.2400\n",
+ "\n",
+ "x =\n",
+ "\n",
+ " 9.8100\n",
+ " 18.6390\n",
+ " 25.5060\n",
+ " 29.4300\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "k=10; % N/m\n",
+ "m1=1; % kg\n",
+ "m2=2;\n",
+ "m3=3;\n",
+ "m4=4;\n",
+ "g=9.81; % m/s^2\n",
+ "K=[2*k -k 0 0; -k 2*k -k 0; 0 -k 2*k -k; 0 0 -k k]\n",
+ "y=[m1*g;m2*g;m3*g;m4*g]\n",
+ "\n",
+ "x=K\\y"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Matrix Operations\n",
+ "\n",
+ "Identity matrix `eye(M,N)` **Assume M=N unless specfied**\n",
+ "\n",
+ "$I_{ij} =1$ if $i=j$ \n",
+ "\n",
+ "$I_{ij} =0$ if $i\\neq j$ \n",
+ "\n",
+ "AI=A=IA\n",
+ "\n",
+ "Diagonal matrix, D, is similar to the identity matrix, but each diagonal element can be any\n",
+ "number\n",
+ "\n",
+ "$D_{ij} =d_{i}$ if $i=j$ \n",
+ "\n",
+ "$D_{ij} =0$ if $i\\neq j$ "
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Transpose\n",
+ "\n",
+ "The transpose of a matrix changes the rows -> columns and columns-> rows\n",
+ "\n",
+ "$(A^{T})_{ij} = A_{ji}$\n",
+ "\n",
+ "for diagonal matrices, $D^{T}=D$\n",
+ "\n",
+ "in general, the transpose has the following qualities:\n",
+ " \n",
+ "1. $(A^{T})^{T}=A$\n",
+ "\n",
+ "2. $(AB)^{T} = B^{T}A^{T}$\n",
+ "\n",
+ "3. $(A+B)^{T} = A^{T} +B^{T}$ \n",
+ "\n",
+ "All matrices have a symmetric and antisymmetric part:\n",
+ "\n",
+ "$A= 1/2(A+A^{T}) +1/2(A-A^{T})$\n",
+ "\n",
+ "If $A=A^{T}$, then A is symmetric, if $A=-A^{T}$, then A is antisymmetric."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "ans =\n",
+ "\n",
+ " 20 38\n",
+ " 28 44\n",
+ " 36 50\n",
+ " 44 56\n",
+ "\n",
+ "ans =\n",
+ "\n",
+ " 20 38\n",
+ " 28 44\n",
+ " 36 50\n",
+ " 44 56\n",
+ "\n",
+ "error: operator *: nonconformant arguments (op1 is 3x2, op2 is 4x3)\n"
+ ]
+ }
+ ],
+ "source": [
+ "(A*B)'\n",
+ "\n",
+ "B'*A' % if this wasnt true, then inner dimensions wouldn;t match\n",
+ "\n",
+ "A'*B' == (A*B)'"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Square matrix operations\n",
+ "\n",
+ "### Trace\n",
+ "\n",
+ "The trace of a square matrix is the sum of the diagonal elements\n",
+ "\n",
+ "$tr~A=\\sum_{i=1}^{N}A_{ii}$\n",
+ "\n",
+ "The trace is invariant, meaning that if you change the basis through a rotation, then the\n",
+ "trace remains the same. \n",
+ "\n",
+ "It also has the following properties:\n",
+ "\n",
+ "1. $tr~A=tr~A^{T}$\n",
+ "\n",
+ "2. $tr~A+tr~B=tr(A+B)$\n",
+ "\n",
+ "3. $tr(kA)=k tr~A$\n",
+ "\n",
+ "4. $tr(AB)=tr(BA)$"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "id_m =\n",
+ "\n",
+ "Diagonal Matrix\n",
+ "\n",
+ " 1 0 0\n",
+ " 0 1 0\n",
+ " 0 0 1\n",
+ "\n",
+ "ans = 3\n"
+ ]
+ }
+ ],
+ "source": [
+ "id_m=eye(3)\n",
+ "trace(id_m)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Inverse\n",
+ "\n",
+ "The inverse of a square matrix, $A^{-1}$ is defined such that\n",
+ "\n",
+ "$A^{-1}A=I=AA^{-1}$\n",
+ "\n",
+ "Not all square matrices have an inverse, they can be *singular* or *non-invertible*\n",
+ "\n",
+ "The inverse has the following properties:\n",
+ "\n",
+ "1. $(A^{-1})^{-1}=A$\n",
+ "\n",
+ "2. $(AB)^{-1}=B^{-1}A^{-1}$\n",
+ "\n",
+ "3. $(A^{-1})^{T}=(A^{T})^{-1}$"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 20,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "A =\n",
+ "\n",
+ " 0.5762106 0.3533174 0.7172134\n",
+ " 0.7061664 0.4863733 0.9423436\n",
+ " 0.4255961 0.0016613 0.3561407\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "A=rand(3,3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Ainv =\n",
+ "\n",
+ " 41.5613 -30.1783 -3.8467\n",
+ " 36.2130 -24.2201 -8.8415\n",
+ " -49.8356 36.1767 7.4460\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "Ainv=inv(A)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 26,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "B =\n",
+ "\n",
+ " 0.524529 0.470856 0.708116\n",
+ " 0.084491 0.730986 0.528292\n",
+ " 0.303545 0.782522 0.389282\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "B=rand(3,3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 28,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "ans =\n",
+ "\n",
+ " -182.185 125.738 40.598\n",
+ " -133.512 97.116 17.079\n",
+ " 282.422 -200.333 -46.861\n",
+ "\n",
+ "ans =\n",
+ "\n",
+ " -182.185 125.738 40.598\n",
+ " -133.512 97.116 17.079\n",
+ " 282.422 -200.333 -46.861\n",
+ "\n",
+ "ans =\n",
+ "\n",
+ " 41.5613 36.2130 -49.8356\n",
+ " -30.1783 -24.2201 36.1767\n",
+ " -3.8467 -8.8415 7.4460\n",
+ "\n",
+ "ans =\n",
+ "\n",
+ " 41.5613 36.2130 -49.8356\n",
+ " -30.1783 -24.2201 36.1767\n",
+ " -3.8467 -8.8415 7.4460\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "inv(A*B)\n",
+ "inv(B)*inv(A)\n",
+ "\n",
+ "inv(A')\n",
+ "\n",
+ "inv(A)'"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Orthogonal Matrices\n",
+ "\n",
+ "Vectors are *orthogonal* if $x^{T}$ y=0, and a vector is *normalized* if $||x||_{2}=1$. A\n",
+ "square matrix is *orthogonal* if all its column vectors are orthogonal to each other and\n",
+ "normalized. The column vectors are then called *orthonormal* and the following results\n",
+ "\n",
+ "$U^{T}U=I=UU^{T}$\n",
+ "\n",
+ "and \n",
+ "\n",
+ "$||Ux||_{2}=||x||_{2}$\n",
+ "\n",
+ "### Determinant\n",
+ "\n",
+ "The **determinant** of a matrix has 3 properties\n",
+ "\n",
+ "1. The determinant of the identity matrix is one, $|I|=1$\n",
+ "\n",
+ "2. If you multiply a single row by scalar $t$ then the determinant is $t|A|$:\n",
+ "\n",
+ "$t|A|=\\left[ \\begin{array}{cccc}\n",
+ "tA_{11} & tA_{12} &...& tA_{1N} \\\\\n",
+ "A_{21} & A_{22} &...& A_{2N} \\\\\n",
+ "\\vdots & \\vdots &\\ddots& \\vdots \\\\\n",
+ "A_{M1} & A_{M2} &...& A_{MN}\\end{array} \\right]$\n",
+ "\n",
+ "3. If you switch 2 rows, the determinant changes sign:\n",
+ "\n",
+ "\n",
+ "$-|A|=\\left[ \\begin{array}{cccc}\n",
+ "A_{21} & A_{22} &...& A_{2N} \\\\\n",
+ "A_{11} & A_{12} &...& A_{1N} \\\\\n",
+ "\\vdots & \\vdots &\\ddots& \\vdots \\\\\n",
+ "A_{M1} & A_{M2} &...& A_{MN}\\end{array} \\right]$\n",
+ "\n",
+ "4. inverse of the determinant is the determinant of the inverse:\n",
+ "\n",
+ "$|A^{-1}|=\\frac{1}{|A|}=|A|^{-1}$\n",
+ "\n",
+ "For a $2\\times2$ matrix, \n",
+ "\n",
+ "$|A|=\\left|\\left[ \\begin{array}{cc}\n",
+ "A_{11} & A_{12} \\\\\n",
+ "A_{21} & A_{22} \\\\\n",
+ "\\end{array} \\right]\\right| = A_{11}A_{22}-A_{21}A_{12}$\n",
+ "\n",
+ "For a $3\\times3$ matrix,\n",
+ "\n",
+ "$|A|=\\left|\\left[ \\begin{array}{ccc}\n",
+ "A_{11} & A_{12} & A_{13} \\\\\n",
+ "A_{21} & A_{22} & A_{23} \\\\\n",
+ "A_{31} & A_{32} & A_{33}\\end{array} \\right]\\right|=$\n",
+ "\n",
+ "$A_{11}A_{22}A_{33}+A_{12}A_{23}A_{31}+A_{13}A_{21}A_{32}\n",
+ "-A_{31}A_{22}A_{13}-A_{32}A_{23}A_{11}-A_{33}A_{21}A_{12}$\n",
+ "\n",
+ "For larger matrices, the determinant is \n",
+ "\n",
+ "$|A|=\n",
+ "\\frac{1}{n!}\n",
+ "\\sum_{i_{r}}^{N}\n",
+ "\\sum_{j_{r}}^{N}\n",
+ "\\epsilon_{i_{1}...i_{N}}\n",
+ "\\epsilon_{j_{1}...j_{N}}\n",
+ "A_{i_{1}j_{1}}\n",
+ "A_{i_{2}j_{2}}\n",
+ "...\n",
+ "A_{i_{N}j_{N}}$\n",
+ "\n",
+ "Where the Levi-Cevita symbol is $\\epsilon_{i_{1}i_{2}...i_{N}} = 1$ if it is an even\n",
+ "permutation and $\\epsilon_{i_{1}i_{2}...i_{N}} = -1$ if it is an odd permutation and\n",
+ "$\\epsilon_{i_{1}i_{2}...i_{N}} = 0$ if $i_{n}=i_{m}$ e.g. $i_{1}=i_{7}$\n",
+ "\n",
+ "![Levi-Cevita rule for even and odd permutations for an $N\\times N$\n",
+ "determinant](even_odd_perm.svg)\n",
+ "\n",
+ "So a $4\\times4$ matrix determinant,\n",
+ "\n",
+ "$|A|=\\left|\\left[ \\begin{array}{cccc}\n",
+ "A_{11} & A_{12} & A_{13} & A_{14} \\\\\n",
+ "A_{21} & A_{22} & A_{23} & A_{24} \\\\\n",
+ "A_{31} & A_{32} & A_{33} & A_{34} \\\\\n",
+ "A_{41} & A_{42} & A_{43} & A_{44} \\end{array} \\right]\\right|$\n",
+ "\n",
+ "$=\\epsilon_{1234}\\epsilon_{1234}A_{11}A_{22}A_{33}A_{44}+\n",
+ "\\epsilon_{2341}\\epsilon_{1234}A_{21}A_{32}A_{43}A_{14}+\n",
+ "\\epsilon_{3412}\\epsilon_{1234}A_{31}A_{42}A_{13}A_{24}+\n",
+ "\\epsilon_{4123}\\epsilon_{1234}A_{41}A_{12}A_{23}A_{34}+...\n",
+ "\\epsilon_{4321}\\epsilon_{4321}A_{44}A_{33}A_{22}A_{11}$\n",
+ "\n",
+ "### Special Case for determinants\n",
+ "\n",
+ "The determinant of a diagonal matrix $|D|=D_{11}D_{22}D_{33}...D_{NN}$. \n",
+ "\n",
+ "Similarly, if a matrix is upper triangular (so all values of $A_{ij}=0$ when $j
+Babel <3.9q> and hyphenation patterns for 81 language(s) loaded.
+! You can't use `macro parameter character #' in vertical mode.
+l.2 #
+ Linear Algebra (Review/Introduction)
+?
+! Interruption.
+
+
+l.2 #
+ Linear Algebra (Review/Introduction)
+? xx
+
+Here is how much of TeX's memory you used:
+ 6 strings out of 493030
+ 147 string characters out of 6136260
+ 53067 words of memory out of 5000000
+ 3641 multiletter control sequences out of 15000+600000
+ 3640 words of font info for 14 fonts, out of 8000000 for 9000
+ 1141 hyphenation exceptions out of 8191
+ 5i,0n,1p,57b,8s stack positions out of 5000i,500n,10000p,200000b,80000s
+No pages of output.
diff --git a/lecture_09/lecture_09.md b/lecture_09/lecture_09.md
new file mode 100644
index 0000000..a1d53d1
--- /dev/null
+++ b/lecture_09/lecture_09.md
@@ -0,0 +1,802 @@
+
+# Linear Algebra (Review/Introduction)
+
+Representation of linear equations:
+
+1. $5x_{1}+3x_{2} =1$
+
+2. $x_{1}+2x_{2}+3x_{3} =2$
+
+3. $x_{1}+x_{2}+x_{3} =3$
+
+in matrix form:
+
+$\left[ \begin{array}{ccc}
+5 & 3 & 0 \\
+1 & 2 & 3 \\
+1 & 1 & 1 \end{array} \right]
+\left[\begin{array}{c}
+x_{1} \\
+x_{2} \\
+x_{3}\end{array}\right]=\left[\begin{array}{c}
+1 \\
+2 \\
+3\end{array}\right]$
+
+$Ax=b$
+
+### Vectors
+
+column vector x (length of 3):
+
+$\left[\begin{array}{c}
+x_{1} \\
+x_{2} \\
+x_{3}\end{array}\right]$
+
+row vector y (length of 3):
+
+$\left[\begin{array}{ccc}
+y_{1}~
+y_{2}~
+y_{3}\end{array}\right]$
+
+vector of length N:
+
+$\left[\begin{array}{c}
+x_{1} \\
+x_{2} \\
+\vdots \\
+x_{N}\end{array}\right]$
+
+The $i^{th}$ element of x is $x_{i}$
+
+
+```octave
+x=[1:10]
+```
+
+ x =
+
+ 1 2 3 4 5 6 7 8 9 10
+
+
+
+
+```octave
+x'
+```
+
+ ans =
+
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+
+
+
+### Matrices
+
+Matrix A is 3x3:
+
+$A=\left[ \begin{array}{ccc}
+5 & 3 & 0 \\
+1 & 2 & 3 \\
+1 & 1 & 1 \end{array} \right]$
+
+elements in the matrix are denoted $A_{row~column}$, $A_{23}=3$
+
+In general, matrix, B, can be any size, $M \times N$ (M-rows and N-columns):
+
+$B=\left[ \begin{array}{cccc}
+B_{11} & B_{12} &...& B_{1N} \\
+B_{21} & B_{22} &...& B_{2N} \\
+\vdots & \vdots &\ddots& \vdots \\
+B_{M1} & B_{M2} &...& B_{MN}\end{array} \right]$
+
+
+```octave
+A=[5,3,0;1,2,3;1,1,1]
+```
+
+ A =
+
+ 5 3 0
+ 1 2 3
+ 1 1 1
+
+
+
+## Multiplication
+
+A column vector is a $1\times N$ matrix and a row vector is a $M\times 1$ matrix
+
+**Multiplying matrices is not commutative**
+
+$A B \neq B A$
+
+Inner dimensions must agree, output is outer dimensions.
+
+A is $M1 \times N1$ and B is $M2 \times N2$
+
+C=AB
+
+Therefore N1=M2 and C is $M1 \times N2$
+
+If $C'=BA$, then N2=M1 and C is $M2 \times N1$
+
+
+e.g.
+$A=\left[ \begin{array}{cc}
+5 & 3 & 0 \\
+1 & 2 & 3 \end{array} \right]$
+
+$B=\left[ \begin{array}{cccc}
+1 & 2 & 3 & 4 \\
+5 & 6 & 7 & 8 \\
+9 & 10 & 11 & 12 \end{array} \right]$
+
+C=AB
+
+$[2\times 4] = [2 \times 3][3 \times 4]$
+
+The rule for multiplying matrices, A and B, is
+
+$C_{ij} = \sum_{k=1}^{n}A_{ik}B_{kj}$
+
+In the previous example,
+
+$C_{11} = A_{11}B_{11}+A_{12}B_{21}+A_{13}B_{31} = 5*1+3*5+0*9=20$
+
+
+Multiplication is associative:
+
+$(AB)C = A(BC)$
+
+and distributive:
+
+$A(B+C)=AB+AC$
+
+
+```octave
+A=[5,3,0;1,2,3]
+B=[1,2,3,4;5,6,7,8;9,10,11,12]
+```
+
+ A =
+
+ 5 3 0
+ 1 2 3
+
+ B =
+
+ 1 2 3 4
+ 5 6 7 8
+ 9 10 11 12
+
+
+
+
+```octave
+C=zeros(2,4)
+C(1,1)=A(1,1)*B(1,1)+A(1,2)*B(2,1)+A(1,3)*B(3,1);
+C(1,2)=A(1,1)*B(1,2)+A(1,2)*B(2,2)+A(1,3)*B(3,2);
+
+C=A*B
+```
+
+ C =
+
+ 0 0 0 0
+ 0 0 0 0
+
+ C =
+
+ 20 28 36 44
+ 38 44 50 56
+
+
+
+
+```octave
+Cp=B*A
+```
+
+ error: operator *: nonconformant arguments (op1 is 3x4, op2 is 2x3)
+
+
+## Representation of a problem with Matrices and Vectors
+
+If you have a set of known output, $y_{1},~y_{2},~...y_{N}$ and a set of equations that
+relate unknown inputs, $x_{1},~x_{2},~...x_{N}$, then these can be written in a vector
+matrix format as:
+
+$y=Ax=\left[\begin{array}{c}
+y_{1} \\
+y_{2} \\
+\vdots \\
+y_{N}\end{array}\right]
+=
+A\left[\begin{array}{c}
+x_{1} \\
+x_{2} \\
+\vdots \\
+x_{N}\end{array}\right]$
+
+$A=
+\left[\begin{array}{cccc}
+| & | & & | \\
+a_{1} & a_{2} & ... & a_{N} \\
+| & | & & | \end{array}\right]$
+
+or
+
+$y = a_{1}x_{1} + a_{2}x_{2} +...+a_{N}x_{N}$
+
+where each $a_{i}$ is a column vector and $x_{i}$ is a scalar taken from the $i^{th}$
+element of x.
+
+Consider the following problem, 4 masses are connected in series to 4 springs with K=10 N/m. What are the final positions of the masses?
+
+![Springs-masses](mass_springs.svg)
+
+The masses haves the following amounts, 1, 2, 3, and 4 kg for masses 1-4. Using a FBD for each mass:
+
+$m_{1}g+k(x_{2}-x_{1})-kx_{1}=0$
+
+$m_{2}g+k(x_{3}-x_{2})-k(x_{2}-x_{1})=0$
+
+$m_{3}g+k(x_{4}-x_{3})-k(x_{3}-x_{2})=0$
+
+$m_{4}g-k(x_{4}-x_{3})=0$
+
+in matrix form:
+
+$\left[ \begin{array}{cccc}
+2k & -k & 0 & 0 \\
+-k & 2k & -k & 0 \\
+0 & -k & 2k & -k \\
+0 & 0 & -k & k \end{array} \right]
+\left[ \begin{array}{c}
+x_{1} \\
+x_{2} \\
+x_{3} \\
+x_{4} \end{array} \right]=
+\left[ \begin{array}{c}
+m_{1}g \\
+m_{2}g \\
+m_{3}g \\
+m_{4}g \end{array} \right]$
+
+
+```octave
+k=10; % N/m
+m1=1; % kg
+m2=2;
+m3=3;
+m4=4;
+g=9.81; % m/s^2
+K=[2*k -k 0 0; -k 2*k -k 0; 0 -k 2*k -k; 0 0 -k k]
+y=[m1*g;m2*g;m3*g;m4*g]
+
+x=K\y
+```
+
+ K =
+
+ 20 -10 0 0
+ -10 20 -10 0
+ 0 -10 20 -10
+ 0 0 -10 10
+
+ y =
+
+ 9.8100
+ 19.6200
+ 29.4300
+ 39.2400
+
+ x =
+
+ 9.8100
+ 18.6390
+ 25.5060
+ 29.4300
+
+
+
+## Matrix Operations
+
+Identity matrix `eye(M,N)` **Assume M=N unless specfied**
+
+$I_{ij} =1$ if $i=j$
+
+$I_{ij} =0$ if $i\neq j$
+
+AI=A=IA
+
+Diagonal matrix, D, is similar to the identity matrix, but each diagonal element can be any
+number
+
+$D_{ij} =d_{i}$ if $i=j$
+
+$D_{ij} =0$ if $i\neq j$
+
+### Transpose
+
+The transpose of a matrix changes the rows -> columns and columns-> rows
+
+$(A^{T})_{ij} = A_{ji}$
+
+for diagonal matrices, $D^{T}=D$
+
+in general, the transpose has the following qualities:
+
+1. $(A^{T})^{T}=A$
+
+2. $(AB)^{T} = B^{T}A^{T}$
+
+3. $(A+B)^{T} = A^{T} +B^{T}$
+
+All matrices have a symmetric and antisymmetric part:
+
+$A= 1/2(A+A^{T}) +1/2(A-A^{T})$
+
+If $A=A^{T}$, then A is symmetric, if $A=-A^{T}$, then A is antisymmetric.
+
+
+```octave
+(A*B)'
+
+B'*A' % if this wasnt true, then inner dimensions wouldn;t match
+
+A'*B' == (A*B)'
+```
+
+ ans =
+
+ 20 38
+ 28 44
+ 36 50
+ 44 56
+
+ ans =
+
+ 20 38
+ 28 44
+ 36 50
+ 44 56
+
+ error: operator *: nonconformant arguments (op1 is 3x2, op2 is 4x3)
+
+
+## Square matrix operations
+
+### Trace
+
+The trace of a square matrix is the sum of the diagonal elements
+
+$tr~A=\sum_{i=1}^{N}A_{ii}$
+
+The trace is invariant, meaning that if you change the basis through a rotation, then the
+trace remains the same.
+
+It also has the following properties:
+
+1. $tr~A=tr~A^{T}$
+
+2. $tr~A+tr~B=tr(A+B)$
+
+3. $tr(kA)=k tr~A$
+
+4. $tr(AB)=tr(BA)$
+
+
+```octave
+id_m=eye(3)
+trace(id_m)
+```
+
+ id_m =
+
+ Diagonal Matrix
+
+ 1 0 0
+ 0 1 0
+ 0 0 1
+
+ ans = 3
+
+
+### Inverse
+
+The inverse of a square matrix, $A^{-1}$ is defined such that
+
+$A^{-1}A=I=AA^{-1}$
+
+Not all square matrices have an inverse, they can be *singular* or *non-invertible*
+
+The inverse has the following properties:
+
+1. $(A^{-1})^{-1}=A$
+
+2. $(AB)^{-1}=B^{-1}A^{-1}$
+
+3. $(A^{-1})^{T}=(A^{T})^{-1}$
+
+
+```octave
+A=rand(3,3)
+```
+
+ A =
+
+ 0.5762106 0.3533174 0.7172134
+ 0.7061664 0.4863733 0.9423436
+ 0.4255961 0.0016613 0.3561407
+
+
+
+
+```octave
+Ainv=inv(A)
+```
+
+ Ainv =
+
+ 41.5613 -30.1783 -3.8467
+ 36.2130 -24.2201 -8.8415
+ -49.8356 36.1767 7.4460
+
+
+
+
+```octave
+B=rand(3,3)
+```
+
+ B =
+
+ 0.524529 0.470856 0.708116
+ 0.084491 0.730986 0.528292
+ 0.303545 0.782522 0.389282
+
+
+
+
+```octave
+inv(A*B)
+inv(B)*inv(A)
+
+inv(A')
+
+inv(A)'
+```
+
+ ans =
+
+ -182.185 125.738 40.598
+ -133.512 97.116 17.079
+ 282.422 -200.333 -46.861
+
+ ans =
+
+ -182.185 125.738 40.598
+ -133.512 97.116 17.079
+ 282.422 -200.333 -46.861
+
+ ans =
+
+ 41.5613 36.2130 -49.8356
+ -30.1783 -24.2201 36.1767
+ -3.8467 -8.8415 7.4460
+
+ ans =
+
+ 41.5613 36.2130 -49.8356
+ -30.1783 -24.2201 36.1767
+ -3.8467 -8.8415 7.4460
+
+
+
+### Orthogonal Matrices
+
+Vectors are *orthogonal* if $x^{T}$ y=0, and a vector is *normalized* if $||x||_{2}=1$. A
+square matrix is *orthogonal* if all its column vectors are orthogonal to each other and
+normalized. The column vectors are then called *orthonormal* and the following results
+
+$U^{T}U=I=UU^{T}$
+
+and
+
+$||Ux||_{2}=||x||_{2}$
+
+### Determinant
+
+The **determinant** of a matrix has 3 properties
+
+1. The determinant of the identity matrix is one, $|I|=1$
+
+2. If you multiply a single row by scalar $t$ then the determinant is $t|A|$:
+
+$t|A|=\left[ \begin{array}{cccc}
+tA_{11} & tA_{12} &...& tA_{1N} \\
+A_{21} & A_{22} &...& A_{2N} \\
+\vdots & \vdots &\ddots& \vdots \\
+A_{M1} & A_{M2} &...& A_{MN}\end{array} \right]$
+
+3. If you switch 2 rows, the determinant changes sign:
+
+
+$-|A|=\left[ \begin{array}{cccc}
+A_{21} & A_{22} &...& A_{2N} \\
+A_{11} & A_{12} &...& A_{1N} \\
+\vdots & \vdots &\ddots& \vdots \\
+A_{M1} & A_{M2} &...& A_{MN}\end{array} \right]$
+
+4. inverse of the determinant is the determinant of the inverse:
+
+$|A^{-1}|=\frac{1}{|A|}=|A|^{-1}$
+
+For a $2\times2$ matrix,
+
+$|A|=\left|\left[ \begin{array}{cc}
+A_{11} & A_{12} \\
+A_{21} & A_{22} \\
+\end{array} \right]\right| = A_{11}A_{22}-A_{21}A_{12}$
+
+For a $3\times3$ matrix,
+
+$|A|=\left|\left[ \begin{array}{ccc}
+A_{11} & A_{12} & A_{13} \\
+A_{21} & A_{22} & A_{23} \\
+A_{31} & A_{32} & A_{33}\end{array} \right]\right|=$
+
+$A_{11}A_{22}A_{33}+A_{12}A_{23}A_{31}+A_{13}A_{21}A_{32}
+-A_{31}A_{22}A_{13}-A_{32}A_{23}A_{11}-A_{33}A_{21}A_{12}$
+
+For larger matrices, the determinant is
+
+$|A|=
+\frac{1}{n!}
+\sum_{i_{r}}^{N}
+\sum_{j_{r}}^{N}
+\epsilon_{i_{1}...i_{N}}
+\epsilon_{j_{1}...j_{N}}
+A_{i_{1}j_{1}}
+A_{i_{2}j_{2}}
+...
+A_{i_{N}j_{N}}$
+
+Where the Levi-Cevita symbol is $\epsilon_{i_{1}i_{2}...i_{N}} = 1$ if it is an even
+permutation and $\epsilon_{i_{1}i_{2}...i_{N}} = -1$ if it is an odd permutation and
+$\epsilon_{i_{1}i_{2}...i_{N}} = 0$ if $i_{n}=i_{m}$ e.g. $i_{1}=i_{7}$
+
+![Levi-Cevita rule for even and odd permutations for an $N\times N$
+determinant](even_odd_perm.svg)
+
+So a $4\times4$ matrix determinant,
+
+$|A|=\left|\left[ \begin{array}{cccc}
+A_{11} & A_{12} & A_{13} & A_{14} \\
+A_{21} & A_{22} & A_{23} & A_{24} \\
+A_{31} & A_{32} & A_{33} & A_{34} \\
+A_{41} & A_{42} & A_{43} & A_{44} \end{array} \right]\right|$
+
+$=\epsilon_{1234}\epsilon_{1234}A_{11}A_{22}A_{33}A_{44}+
+\epsilon_{2341}\epsilon_{1234}A_{21}A_{32}A_{43}A_{14}+
+\epsilon_{3412}\epsilon_{1234}A_{31}A_{42}A_{13}A_{24}+
+\epsilon_{4123}\epsilon_{1234}A_{41}A_{12}A_{23}A_{34}+...
+\epsilon_{4321}\epsilon_{4321}A_{44}A_{33}A_{22}A_{11}$
+
+### Special Case for determinants
+
+The determinant of a diagonal matrix $|D|=D_{11}D_{22}D_{33}...D_{NN}$.
+
+Similarly, if a matrix is upper triangular (so all values of $A_{ij}=0$ when $j
+
+
+