From 8f629313fdb1ed609b7c18928616c994f58b7576 Mon Sep 17 00:00:00 2001 From: Puneeth Chaganti Date: Wed, 6 Oct 2010 15:16:09 +0530 Subject: Changed structure of my scripts. --- using-sage/quickref.tex | 8 ++ using-sage/script.rst | 197 ++++++++++++++++++++++++++++++++++++++++++++++++ using-sage/slides.tex | 106 ++++++++++++++++++++++++++ 3 files changed, 311 insertions(+) create mode 100644 using-sage/quickref.tex create mode 100644 using-sage/script.rst create mode 100644 using-sage/slides.tex (limited to 'using-sage') diff --git a/using-sage/quickref.tex b/using-sage/quickref.tex new file mode 100644 index 0000000..b26d168 --- /dev/null +++ b/using-sage/quickref.tex @@ -0,0 +1,8 @@ +Creating a linear array:\\ +{\ex \lstinline| x = linspace(0, 2*pi, 50)|} + +Plotting two variables:\\ +{\ex \lstinline| plot(x, sin(x))|} + +Plotting two lists of equal length x, y:\\ +{\ex \lstinline| plot(x, y)|} diff --git a/using-sage/script.rst b/using-sage/script.rst new file mode 100644 index 0000000..351953b --- /dev/null +++ b/using-sage/script.rst @@ -0,0 +1,197 @@ +======== + Script +======== + +{{{ show the welcome slide }}} + +Welcome to this tutorial on using Sage. + +{{{ show the slide with outline }}} + +In this tutorial we shall quickly look at a few examples of the areas +(name the areas, here) in which Sage can be used and how it can be +used. + +{{{ show the slide with Calculus outline }}} + +Let us begin with Calculus. We shall be looking at limits, +differentiation, integration, and Taylor polynomial. + +{{{ show sage notebook }}} + +We have our Sage notebook running. In case, you don't have it running, +start is using the command, ``sage --notebook``. + +To find the limit of the function x*sin(1/x), at x=0, we say +:: + + lim(x*sin(1/x), x=0) + +We get the limit to be 0, as expected. + +It is also possible to the limit at a point from one direction. For +example, let us find the limit of 1/x at x=0, when approaching from +the positive side. +:: + + lim(1/x, x=0, dir='above') + +To find the limit from the negative side, we say, +:: + + lim(1/x, x=0, dir='above') + +Let us now see how to differentiate, using Sage. We shall find the +differential of the expression ``exp(sin(x^2))/x`` w.r.t ``x``. We +shall first define the expression, and then use the ``diff`` function +to obtain the differential of the expression. +:: + + var('x') + f = exp(sin(x^2))/x + + diff(f, x) + +We can also obtain the partial differentiation of an expression w.r.t +one of the variables. Let us differentiate the expression +``exp(sin(y - x^2))/x`` w.r.t x and y. +:: + + var('x y') + f = exp(sin(y - x^2))/x + + diff(f, x) + + diff(f, y) + +Now, let us look at integration. We shall use the expression obtained +from the differentiation that we did before, ``diff(f, y)`` --- +``e^(sin(-x^2 + y))*cos(-x^2 + y)/x``. The ``integrate`` command is +used to obtain the integral of an expression or function. +:: + + integrate(e^(sin(-x^2 + y))*cos(-x^2 + y)/x, y) + +We get back the correct expression. The minus sign being inside or +outside the ``sin`` function doesn't change much. + +Now, let us find the value of the integral between the limits 0 and +pi/2. +:: + + integral(e^(sin(-x^2 + y))*cos(-x^2 + y)/x, y, 0, pi/2) + +Let us now see how to obtain the Taylor expansion of an expression +using sage. Let us obtain the Taylor expansion of ``(x + 1)^n`` up to +degree 4 about 0. +:: + + var('x n') + taylor((x+1)^n, x, 0, 4) + +This brings us to the end of the features of Sage for Calculus, that +we will be looking at. For more, look at the Calculus quick-ref from +the Sage Wiki. + +Next let us move on to Matrix Algebra. + +{{{ show the equation on the slides }}} + +Let us begin with solving the equation ``Ax = v``, where A is the +matrix ``matrix([[1,2],[3,4]])`` and v is the vector +``vector([1,2])``. + +To solve the equation, ``Ax = v`` we simply say +:: + + x = solve_right(A, v) + +To solve the equation, ``xA = v`` we simply say +:: + + x = solve_left(A, v) + +The left and right here, denote the position of ``A``, relative to x. + +#[Puneeth]: any suggestions on what more to add? + +Now, let us look at Graph Theory in Sage. + +We shall look at some ways to create graphs and some of the graph +families available in Sage. + +The simplest way to define an arbitrary graph is to use a dictionary +of lists. We create a simple graph by +:: + + G = Graph({0:[1,2,3], 2:[4]}) + +We say +:: + + G.show() + +to view the visualization of the graph. + +Similarly, we can obtain a directed graph using the ``DiGraph`` +function. +:: + + G = DiGraph({0:[1,2,3], 2:[4]}) + + +Sage also provides a lot of graph families which can be viewed by +typing ``graph.``. Let us obtain a complete graph with 5 vertices +and then show the graph. +:: + + G = graphs.CompleteGraph(5) + + G.show() + + +Sage provides other functions for Number theory and +Combinatorics. Let's have a glimpse of a few of them. + + +:: + + prime_range(100, 200) + +gives primes in the range 100 to 200. + +:: + + is_prime(1999) + +checks if 1999 is a prime number or not. + +:: + + factor(2001) + +gives the factorized form of 2001. + +:: + + C = Permutations([1, 2, 3, 4]) + C.list() + +gives the permutations of ``[1, 2, 3, 4]`` + +:: + + C = Combinations([1, 2, 3, 4]) + C.list() + +gives all the combinations of ``[1, 2, 3, 4]`` + +That brings us to the end of this session showing various features +available in Sage. + +{{{ Show summary slide }}} + +We have looked at some of the functions available for Linear Algebra, +Calculus, Graph Theory and Number theory. + +Thank You! diff --git a/using-sage/slides.tex b/using-sage/slides.tex new file mode 100644 index 0000000..df1462c --- /dev/null +++ b/using-sage/slides.tex @@ -0,0 +1,106 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%Tutorial slides on Python. +% +% Author: FOSSEE +% Copyright (c) 2009, FOSSEE, IIT Bombay +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\documentclass[14pt,compress]{beamer} +%\documentclass[draft]{beamer} +%\documentclass[compress,handout]{beamer} +%\usepackage{pgfpages} +%\pgfpagesuselayout{2 on 1}[a4paper,border shrink=5mm] + +% Modified from: generic-ornate-15min-45min.de.tex +\mode +{ + \usetheme{Warsaw} + \useoutertheme{infolines} + \setbeamercovered{transparent} +} + +\usepackage[english]{babel} +\usepackage[latin1]{inputenc} +%\usepackage{times} +\usepackage[T1]{fontenc} + +\usepackage{ae,aecompl} +\usepackage{mathpazo,courier,euler} +\usepackage[scaled=.95]{helvet} + +\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} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Macros +\setbeamercolor{emphbar}{bg=blue!20, fg=black} +\newcommand{\emphbar}[1] +{\begin{beamercolorbox}[rounded=true]{emphbar} + {#1} + \end{beamercolorbox} +} +\newcounter{time} +\setcounter{time}{0} +\newcommand{\inctime}[1]{\addtocounter{time}{#1}{\tiny \thetime\ m}} + +\newcommand{\typ}[1]{\lstinline{#1}} + +\newcommand{\kwrd}[1]{ \texttt{\textbf{\color{blue}{#1}}} } + +% Title page +\title{Your Title Here} + +\author[FOSSEE] {FOSSEE} + +\institute[IIT Bombay] {Department of Aerospace Engineering\\IIT Bombay} +\date{} + +% DOCUMENT STARTS +\begin{document} + +\begin{frame} + \maketitle +\end{frame} + +\begin{frame}[fragile] + \frametitle{Outline} + \begin{itemize} + \item + \end{itemize} +\end{frame} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% All other slides here. %% +%% The same slides will be used in a classroom setting. %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{frame}[fragile] + \frametitle{Summary} + \begin{itemize} + \item + \end{itemize} +\end{frame} + +\begin{frame} + \frametitle{Thank you!} + \begin{block}{} + \begin{center} + This spoken tutorial has been produced by the + \textcolor{blue}{FOSSEE} team, which is funded by the + \end{center} + \begin{center} + \textcolor{blue}{National Mission on Education through \\ + Information \& Communication Technology \\ + MHRD, Govt. of India}. + \end{center} + \end{block} +\end{frame} + +\end{document} -- cgit