summaryrefslogtreecommitdiff
path: root/day1
diff options
context:
space:
mode:
Diffstat (limited to 'day1')
-rw-r--r--day1/session4.tex64
1 files changed, 51 insertions, 13 deletions
diff --git a/day1/session4.tex b/day1/session4.tex
index c01c20e..67988de 100644
--- a/day1/session4.tex
+++ b/day1/session4.tex
@@ -210,8 +210,59 @@ Example problem: Consider the set of equations
\end{lstlisting}
\end{frame}
+
\section{Integration}
+\subsection{Quadrature}
+
+\begin{frame}[fragile]
+\frametitle{Quadrature}
+\begin{itemize}
+\item We wish to find area under a curve
+\item Area under $(sin(x) + x^2)$ in $(0,1)$
+\item scipy has functions to do that
+\end{itemize}
+\small{\typ{In []: from scipy.integrate import quad}}
+\begin{itemize}
+\item Inputs - function to integrate, limits
+\end{itemize}
+\begin{lstlisting}
+In []: x = 0
+In []: integrate.quad(sin(x)+x**2, 0, 1)
+\end{lstlisting}
+\alert{\typ{error:}}
+\typ{First argument must be a callable function.}
+\end{frame}
+
+\begin{frame}[fragile]
+\frametitle{Functions - Definition}
+\begin{lstlisting}
+In []: def f(x):
+ return sin(x)+x**2
+In []: integrate.quad(f, 0, 1)
+\end{lstlisting}
+\begin{itemize}
+\item \typ{def}
+\item arguments
+\item \typ{return}
+\end{itemize}
+\end{frame}
+
+\begin{frame}[fragile]
+ \frametitle{More on functions}
+ \begin{itemize}
+ \item Support default and keyword arguments
+ \item Scope of variables in the function is local
+ \item Mutable items are \alert{passed by reference}
+ \item First line after definition may be a documentation string
+ (\alert{recommended!})
+ \item Function definition and execution defines a name bound to the
+ function
+ \item You \emph{can} assign a variable to a function!
+ \end{itemize}
+\end{frame}
+
+
\subsection{ODEs}
\begin{frame}[fragile]
@@ -272,18 +323,5 @@ In []: pend_sol = odeint(pend_int,
\end{lstlisting}
\end{frame}
-\subsection{Quadrature}
-
-\begin{frame}[fragile]
-\frametitle{Quadrature}
-Calculate the area under $(sin(x) + x^2)$ in the range $(0,1)$
-\small{\typ{In []: from scipy.integrate import quad}}
- \begin{lstlisting}
-In []: f(x):
- return sin(x)+x**2
-In []: integrate.quad(f, 0, 1)
- \end{lstlisting}
-\end{frame}
-
\end{document}