%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Tutorial slides on Python. % % Author: FOSSEE % Copyright (c) 2005-2009, FOSSEE Team %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \documentclass[14pt,compress]{beamer} \mode { \useoutertheme{split} \setbeamercovered{transparent} } \definecolor{darkgreen}{rgb}{0,0.5,0} \usepackage{listings} \lstset{language=Python, basicstyle=\ttfamily\bfseries, commentstyle=\color{red}\itshape, stringstyle=\color{darkgreen}, showstringspaces=false, keywordstyle=\color{blue}\bfseries} \newcommand{\kwrd}[1]{ \texttt{\textbf{\color{blue}{#1}}} } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Macros \newcounter{qno} \setcounter{qno}{0} \newcommand{\incqno}{\addtocounter{qno}{1}{Question \theqno}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Title page \title[Basic Python]{Python for science and engineering: Day 2, Quiz 1} \author[FOSSEE Team] {FOSSEE} \institute[IIT Bombay] {Department of Aerospace Engineering\\IIT Bombay} \date[] {\today \\ Day 1, quiz 2} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{document} \begin{frame} \titlepage \end{frame} \begin{frame} \frametitle{Write your details...} On the top right hand corner please write down the following: \begin{itemize} \item Name: \item University/College/Company: \item Student/Teacher/Professional: \item Field of interest/study: \end{itemize} \end{frame} \begin{frame}[fragile] \frametitle{\incqno } \begin{lstlisting} In []: a = array([[1, 2], [3, 4]]) In []: a[1,0] = 0 \end{lstlisting} What is the resulting array? \end{frame} \begin{frame}[fragile] \frametitle{\incqno } \begin{lstlisting} In []: x = array(([1,2,3,4], [2,3,4,5])) In []: x[-2][-3] = 4 In []: print x \end{lstlisting} What will be printed? \end{frame} \begin{frame}[fragile] \frametitle{\incqno } \begin{lstlisting} In []: x = array([[1,2,3,4], [3,4,2,5]]) \end{lstlisting} What is the \lstinline+shape+ of this array? \end{frame} \begin{frame}[fragile] \frametitle{\incqno } \begin{lstlisting} In []: x = array([[1,2,3,4]]) \end{lstlisting} How to change \lstinline+x+ to \lstinline+array([[1,2,0,4]])+? \end{frame} \begin{frame}[fragile] \frametitle{\incqno } \begin{lstlisting} In []: x = array([[1,2,3,4], [3,4,2,5]]) \end{lstlisting} How do you get the following slice of \lstinline+x+? \begin{lstlisting} array([[2,3], [4,2]]) \end{lstlisting} \end{frame} \begin{frame}[fragile] \frametitle{\incqno } \begin{lstlisting} In []: x = array([[9,18,27], [30,60,90], [14,7,1]]) \end{lstlisting} What is the output of \lstinline+x[::3,::3]+ \end{frame} \begin{frame}[fragile] \frametitle{\incqno } \begin{lstlisting} In []: a = array([[1, 2], [3, 4]]) \end{lstlisting} How do you get the transpose of this array? \end{frame} \begin{frame}[fragile] \frametitle{\incqno } \begin{lstlisting} In []: a = array([[1, 2], [3, 4]]) In []: b = array([[1, 1], [2, 2]]) In []: a*b \end{lstlisting} What does this produce? \end{frame} \begin{frame} \frametitle{\incqno } What command do you use to find the inverse of a matrix and its eigenvalues? \end{frame} %% \begin{frame} %% \frametitle{\incqno } %% The file \lstinline+datafile.txt+ contains 3 columns of data. What %% command will you use to read the entire data file into an array? %% \end{frame} %% \begin{frame} %% \frametitle{\incqno } %% If the contents of the file \lstinline+datafile.txt+ is read into an %% $N\times3$ array called \lstinline+data+, how would you obtain the third %% column of this data? %% \end{frame} \begin{frame} \frametitle{\incqno } Given a 4x4 matrix \texttt{A} and a 4-vector \texttt{b}, what command do you use to solve for the equation \\ \texttt{Ax = b}? \end{frame} %% \begin{frame} %% \frametitle{\incqno } %% What command will you use if you wish to integrate a system of ODEs? %% \end{frame} \begin{frame} \frametitle{\incqno } How do you calculate the roots of the polynomial, $y = 1 + 6x + 8x^2 + x^3$? \end{frame} \begin{frame} \frametitle{\incqno } Two arrays \lstinline+a+ and \lstinline+b+ are numerically almost equal, what command do you use to check if this is true? \end{frame} %% \begin{frame}[fragile] %% \frametitle{\incqno } %% \begin{lstlisting} %% In []: x = arange(0, 1, 0.25) %% In []: print x %% \end{lstlisting} %% What will be printed? %% \end{frame} %% \begin{frame}[fragile] %% \frametitle{\incqno } %% \begin{lstlisting} %% from scipy.integrate import quad %% def f(x): %% res = x*cos(x) %% quad(f, 0, 1) %% \end{lstlisting} %% What changes will you make to the above code to make it work? %% \end{frame} %% \begin{frame} %% \frametitle{\incqno } %% What two commands will you use to create and evaluate a spline given %% some data? %% \end{frame} %% \begin{frame}[fragile] %% \frametitle{\incqno } %% What would be the result? %% \begin{lstlisting} %% In []: x %% array([[0, 1, 2], %% [3, 4, 5], %% [6, 7, 8]]) %% In []: x[::-1,:] %% \end{lstlisting} %% Hint: %% \begin{lstlisting} %% In []: x = arange(9) %% In []: x[::-1] %% array([8, 7, 6, 5, 4, 3, 2, 1, 0]) %% \end{lstlisting} %% \end{frame} %% \begin{frame}[fragile] %% \frametitle{\incqno } %% What would be the result? %% \begin{lstlisting} %% In []: y = arange(3) %% In []: x = linspace(0,3,3) %% In []: x-y %% \end{lstlisting} %% \end{frame} %% \begin{frame}[fragile] %% \frametitle{\incqno } %% \begin{lstlisting} %% In []: x %% array([[ 0, 1, 2, 3], %% [ 4, 5, 6, 7], %% [ 8, 9, 10, 11], %% [12, 13, 14, 15]]) %% \end{lstlisting} %% How will you get the following \lstinline+x+? %% \begin{lstlisting} %% array([[ 5, 7], %% [ 9, 11]]) %% \end{lstlisting} %% \end{frame} %% \begin{frame}[fragile] %% \frametitle{\incqno } %% What would be the output? %% \begin{lstlisting} %% In []: y = arange(4) %% In []: x = array(([1,2,3,2],[1,3,6,0])) %% In []: x + y %% \end{lstlisting} %% \end{frame} %% \begin{frame}[fragile] %% \frametitle{\incqno } %% \begin{lstlisting} %% In []: line = plot(x, sin(x)) %% \end{lstlisting} %% Use the \lstinline+set_linewidth+ method to set width of \lstinline+line+ to 2. %% \end{frame} %% \begin{frame}[fragile] %% \frametitle{\incqno } %% What would be the output? %% \begin{lstlisting} %% In []: x = arange(9) %% In []: y = arange(9.) %% In []: x == y %% \end{lstlisting} %% \end{frame} \end{document}