#+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation] #+BEAMER_FRAME_LEVEL: 1 #+BEAMER_HEADER_EXTRA: \usetheme{Warsaw}\usecolortheme{default}\useoutertheme{infolines}\setbeamercovered{transparent} #+COLUMNS: %45ITEM %10BEAMER_env(Env) %10BEAMER_envargs(Env Args) %4BEAMER_col(Col) %8BEAMER_extra(Extra) #+PROPERTY: BEAMER_col_ALL 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 :ETC #+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation] #+LaTeX_HEADER: \usepackage[english]{babel} \usepackage{ae,aecompl} #+LaTeX_HEADER: \usepackage{mathpazo,courier,euler} \usepackage[scaled=.95]{helvet} #+LaTeX_HEADER: \usepackage{listings} #+LaTeX_HEADER: \usepackage{amsmath} #+LaTeX_HEADER:\lstset{language=Python, basicstyle=\ttfamily\bfseries, #+LaTeX_HEADER: commentstyle=\color{red}\itshape, stringstyle=\color{darkgreen}, #+LaTeX_HEADER: showstringspaces=false, keywordstyle=\color{blue}\bfseries} #+TITLE: #+AUTHOR: FOSSEE #+EMAIL: info@fossee.in #+DATE: #+DESCRIPTION: #+KEYWORDS: #+LANGUAGE: en #+OPTIONS: H:3 num:nil toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:nil skip:nil d:nil todo:nil pri:nil tags:not-in-toc * #+begin_latex \begin{center} \vspace{12pt} \textcolor{blue}{\huge Matrices} \end{center} \vspace{18pt} \begin{center} \vspace{10pt} \includegraphics[scale=0.95]{../images/fossee-logo.png}\\ \vspace{5pt} \scriptsize Developed by FOSSEE Team, IIT-Bombay. \\ \scriptsize Funded by National Mission on Education through ICT\\ \scriptsize MHRD,Govt. of India\\ \includegraphics[scale=0.30]{../images/iitb-logo.png}\\ \end{center} #+end_latex * Objectives At the end of this tutorial, you will be able to, - Create matrices using data. - Create matrices from lists. - Do basic matrix operations like addition,multiplication. - Perform operations to find out the -- - inverse of a matrix - determinant of a matrix - eigen values and eigen vectors of a matrix - norm of a matrix - singular value decomposition of a matrix. * Pre-requisite Spoken tutorial on - - Getting started with Lists. - Getting started with Arrays. - Accessing parts of Arrays. * Exercise 1 - Create a two dimensional matrix ~m3~ of order (2, 4) with elements 5, 6, 7, 8, 9, 10, 11, 12. * Recall from ~array~ The following functions can also be used with matrices - ~identity(n)~ - creates an identity matrix of order ~nXn~ - ~zeros((m,n))~ - creates a matrix of order ~mXn~ with 0's - ~zeros\_like(A)~ - creates a matrix with 0's similar to the shape of matrix ~A~ - ~ones((m,n))~ - creates a matrix of order ~mXn~ with 1's - ~ones\_like(A)~ - creates a matrix with 1's similar to the shape of matrix ~A~ * Exercise 2 : Frobenius norm \& inverse - Find out the Frobenius norm of inverse of a ~4 X 4~ matrix. : The matrix is : m5 = arange(1,17).reshape(4,4) - Inverse of A, - #+begin_latex $A^{-1} = inv(A)$ #+end_latex - Frobenius norm is defined as, - #+begin_latex $||A||_F = [\sum_{i,j} abs(a_{i,j})^2]^{1/2}$ #+end_latex * Exercise 3 : Infinity norm - Find the infinity norm of the matrix ~im5~ : - Infinity norm is defined as, #+begin_latex $max([\sum_{i} abs(a_{i})^2])$ #+end_latex * ~norm()~ method - Frobenius norm : In []: norm(im5) - Infinity norm : In []: norm(im5, ord=inf) * eigen values \& eigen vectors eigen values and eigen vectors - eig() Only eigen values - eigvals() * Singular Value Decomposition (~svd~) #+begin_latex $M = U \Sigma V^*$ #+end_latex - U, an ~mXm~ unitary matrix over K. - #+begin_latex $\Sigma$ #+end_latex , an ~mXn~ diagonal matrix with non-negative real numbers on diagonal. - #+begin_latex $V^*$ #+end_latex , an ~nXn~ unitary matrix over K, denotes the conjugate transpose of V. - SVD of matrix ~m5~ can be found out as, : In []: svd(m5) * Summary In this tutorial, we have learnt to, - Create matrices using arrays. - Add and multiply the elements of matrix. - Find out the inverse of a matrix,using the function ``inv()''. - Use the function ``det()'' to find the determinant of a matrix. - Calculate the norm of a matrix using the for loop and also using the function ``norm()''. - Find out the eigen vectors and eigen values of a matrix, using functions ``eig()'' and ``eigvals()''. - Calculate singular value decomposition(SVD) of a matrix using the function ``svd()''. * Evaluation 1. A and B are two array objects. Element wise multiplication in matrices are done by, - A * B - multiply(A, B) - dot(A, B) - element\_multiply(A,B) 2. ``eig(A)[ 1 ]'' and ``eigvals(A)'' are the same. - True - False 3. ``norm(A,ord='fro')'' is the same as ``norm(A)'' ? - True - False * Solutions 1. A * B 2. False 3. True * #+begin_latex \begin{block}{} \begin{center} \textcolor{blue}{\Large THANK YOU!} \end{center} \end{block} \begin{block}{} \begin{center} For more Information, visit our website\\ \url{http://fossee.in/} \end{center} \end{block} #+end_latex