--- a/getting-started-with-lists/questions.rst Wed Oct 20 16:19:55 2010 +0530
+++ b/getting-started-with-lists/questions.rst Thu Oct 21 00:22:42 2010 +0530
@@ -43,5 +43,8 @@
.. A minimum of 2 questions here (along with answers)
-1. Question 1
-2. Question 2
+1. Add all elemets of seq1=['e','f','g','h']
+to the sequence seq=['a','b','c','d']
+
+2. Delete all elements of seq1=[3,5,6] from sequence
+ seq=[1,2,3,4,5,6,7,8,9]
--- a/getting-started-with-lists/quickref.tex Wed Oct 20 16:19:55 2010 +0530
+++ b/getting-started-with-lists/quickref.tex Thu Oct 21 00:22:42 2010 +0530
@@ -1,8 +1,19 @@
-Creating a linear array:\\
-{\ex \lstinline| x = linspace(0, 2*pi, 50)|}
+Creating an list\\
+{\ex \lstinline| empty=[]|}
+
+Create a filled list\\
+{\ex \lstinline| nonempty = ['spam', 'eggs', 100, 1.234] |}
+
+Accessing a list\\
+{\ex \lstinline| nonempty[0] |}
+{\ex \lstinline| nonempty[-1] |}
-Plotting two variables:\\
-{\ex \lstinline| plot(x, sin(x))|}
+Length of a list\\
+{\ex \lstinline| len(nonempty) |}
-Plotting two lists of equal length x, y:\\
-{\ex \lstinline| plot(x, y)|}
+Append an element to a list\\
+{\ex \lstinline| nonempty.append('python') |}
+
+Remove elements of a list\\
+{\ex \lstinline| del(nonempty[1] |}
+{\ex \lstinline| nonempty.remove(100) |}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/getting-started-with-lists/script.rst Thu Oct 21 00:22:42 2010 +0530
@@ -0,0 +1,137 @@
+Hello friends and welcome to the tutorial on getting started with
+lists.
+
+ {{{ Show the slide containing title }}}
+
+ {{{ Show the slide containing the outline slide }}}
+
+In this tutorial we will be getting acquainted with a python data
+structure called lists. We will learn ::
+
+ * How to create lists
+ * Structure of lists
+ * Access list elements
+ * Append elements to lists
+ * Deleting elements from lists
+
+List is a compound data type, it can contain data of other data
+types. List is also a sequence data type, all the elements are in
+order and there order has a meaning.
+
+We will first create an empty list with no elements. On your IPython
+shell type ::
+
+ empty = []
+ type(empty)
+
+
+This is an empty list without any elements.
+
+* Filled lists
+
+Lets now define a list, nonempty and fill it with some random elements.
+
+nonempty = ['spam', 'eggs', 100, 1.234]
+
+Thus the simplest way of creating a list is typing out a sequence
+of comma-separated values (items) between square brackets.
+All the list items need not have the same data type.
+
+
+
+As we can see lists can contain different kinds of data. In the
+previous example 'spam' and 'eggs' are strings and 100 and 1.234
+integer and float. Thus we can put elements of heterogenous types in
+lists. Thus list themselves can be one of the element types possible
+in lists. Thus lists can also contain other lists. Example ::
+
+ list_in_list=[[4,2,3,4],'and', 1, 2, 3, 4]
+
+We access list elements using the number of index. The
+index begins from 0. So for list nonempty, nonempty[0] gives the
+first element, nonempty[1] the second element and so on and
+nonempty[3] the last element. ::
+
+ nonempty[0]
+ nonempty[1]
+ nonempty[3]
+
+We can also access the elememts from the end using negative indices ::
+
+ nonempty[-1]
+ nonempty[-2]
+ nonempty[-4]
+
+-1 gives the last element which is the 4th element , -2 second to last and -4 gives the fourth
+from last element which is first element.
+
+We can append elements to the end of a list using append command. ::
+
+ nonempty.append('onemore')
+ nonempty
+ nonempty.append(6)
+ nonempty
+
+As we can see non empty appends 'onemore' and 6 at the end.
+
+
+
+Using len function we can check the number of elements in the list
+nonempty. In this case it being 6 ::
+
+ len(nonempty)
+
+
+
+Just like we can append elements to a list we can also remove them.
+There are two ways of doing it. One is by using index. ::
+
+ del(nonempty[1])
+
+
+
+deletes the element at index 1, i.e the second element of the
+list, 'eggs'. The other way is removing element by content. Lets say
+one wishes to delete 100 from nonempty list the syntax of the command
+should be ::
+
+ nonempty.remove(100)
+
+but what if their were two 100's. To check that lets do a small
+experiment. ::
+
+ nonempty.append('python')
+ nonempty
+ nonempty.remove('python')
+ nonempty
+
+If we check a now we will see that the first occurence 'spam' is removed
+thus remove removes the first occurence of the element in the sequence
+and leaves others untouched.
+
+
+{{{Slide for Summary }}}
+
+
+In this tutorial we came across a sequence data type called lists. ::
+
+ * We learned how to create lists.
+ * How to access lists.
+ * Append elements to list.
+ * Delete Element from list.
+ * And Checking list length.
+
+
+
+{{{ Sponsored by Fossee Slide }}}
+
+This tutorial was created as a part of FOSSEE project.
+
+I hope you found this tutorial useful.
+
+Thank You
+
+
+ * Author : Amit Sethi
+ * First Reviewer :
+ * Second Reviewer : Nishanth
--- a/plotui/questions.rst Wed Oct 20 16:19:55 2010 +0530
+++ b/plotui/questions.rst Thu Oct 21 00:22:42 2010 +0530
@@ -47,5 +47,5 @@
.. A minimum of 2 questions here (along with answers)
-1. Question 1
-2. Question 2
+1. Use '?' and explain the similarities and difference between linpace and logspace?
+2. Describe one by one all the buttons in UI of plot and their meaning?
--- a/plotui/quickref.tex Wed Oct 20 16:19:55 2010 +0530
+++ b/plotui/quickref.tex Thu Oct 21 00:22:42 2010 +0530
@@ -4,5 +4,11 @@
Plotting two variables:\\
{\ex \lstinline| plot(x, sin(x))|}
-Plotting two lists of equal length x, y:\\
-{\ex \lstinline| plot(x, y)|}
+Saving Plot\\
+{\includegraphics[width=60mm]{save.png}}
+
+Zooming into a part of the plot\\
+{\includegraphics[width=60mm]{zoom.png}}
+
+Move the plot\\
+{\includegraphics[width=60mm]{move.png}}
--- a/plotui/script.rst Wed Oct 20 16:19:55 2010 +0530
+++ b/plotui/script.rst Thu Oct 21 00:22:42 2010 +0530
@@ -26,6 +26,9 @@
{{{ Slide with Error written on it }}}
+
+
+
Then you have to install matplotlib and run this command again.
Now type in your ipython shell ::
@@ -103,6 +106,8 @@
The Window on which the plot appears can be used to study it better.
+{{{ Show the slide with all the buttons on it }}}
+
First of all moving the mouse around gives us the point where mouse
points at.
@@ -157,9 +162,9 @@
4. Clearing drawing area using clf
-5. Using the UI of plot for studying it better . Using functionalities like save , zoom , moving the plots on x and y axis
+5. Using the UI of plot for studying it better . Using functionalities like save , zoom and moving the plots on x and y axis
-etc ..
+
--- a/plotui/slides.tex Wed Oct 20 16:19:55 2010 +0530
+++ b/plotui/slides.tex Thu Oct 21 00:22:42 2010 +0530
@@ -1,106 +1,71 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%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<presentation>
-{
- \usetheme{Warsaw}
- \useoutertheme{infolines}
- \setbeamercovered{transparent}
-}
-
-\usepackage[english]{babel}
+% Created 2010-10-20 Wed 21:57
+\documentclass[presentation]{beamer}
+\usetheme{Warsaw}\useoutertheme{infolines}\usecolortheme{default}\setbeamercovered{transparent}
\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{graphicx}
+\usepackage{longtable}
+\usepackage{float}
+\usepackage{wrapfig}
+\usepackage{soul}
+\usepackage{amssymb}
+\usepackage{hyperref}
-\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}}
+\title{Plotting Data }
+\author{FOSSEE}
+\date{2010-09-14 Tue}
-\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}
+\maketitle
+
\begin{frame}
- \maketitle
-\end{frame}
+\frametitle{Tutorial Plan}
+\label{sec-1}
+\begin{itemize}
-\begin{frame}[fragile]
- \frametitle{Outline}
- \begin{itemize}
- \item
- \end{itemize}
+\item Creating a simple plot\\
+\label{sec-1.1}%
+\item Use the buttons on window to study the plot\\
+\label{sec-1.2}%
+\end{itemize} % ends low level
+\end{frame}
+\begin{frame}
+\frametitle{Error if Ipython not installed}
+\label{sec-2}
+\begin{itemize}
+
+\item `ERROR: matplotlib could NOT be imported! Starting normal IPython.`\\
+\label{sec-2.1}%
+\end{itemize} % ends low level
+\end{frame}
+\begin{frame}
+\frametitle{Plot UI}
+\label{sec-3}
+\begin{frame}
+ \begin{center}
+ \includegraphics[height=1.0in,width=4.2in]{buttons.png}
+ \end{center}
\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}
+\frametitle{Summary}
+\label{sec-4}
+\begin{itemize}
-\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}
+\item Start Ipython with pylab\\
+\label{sec-4.1}%
+\item Using linspace\\
+\label{sec-4.2}%
+\item Finding length of sequnces using len.\\
+\label{sec-4.3}%
+\item Plotting mathematical functions using plot.\\
+\label{sec-4.4}%
+\item Clearing drawing area using clf\\
+\label{sec-4.5}%
+\item Using the UI of plot\\
+\label{sec-4.6}%
+\end{itemize} % ends low level
\end{frame}
\end{document}
--- a/symbolics/questions.rst Wed Oct 20 16:19:55 2010 +0530
+++ b/symbolics/questions.rst Thu Oct 21 00:22:42 2010 +0530
@@ -49,5 +49,13 @@
.. A minimum of 2 questions here (along with answers)
+1.Find the points of intersection of the circles
-2. Question 2
+ x^2 + y^2 - 4x = 1
+ x^2 + y^2 - 2y = 9
+
+2. Integrate the function
+
+x^2*cos(x)
+
+between 1 to 3.
--- a/symbolics/script.rst Wed Oct 20 16:19:55 2010 +0530
+++ b/symbolics/script.rst Thu Oct 21 00:22:42 2010 +0530
@@ -3,43 +3,23 @@
Hello friends and welcome to the tutorial on symbolics with sage.
-
-.. #[Madhu: Sounds more or less like an ad!]
-
-{{{ Part of Notebook with title }}}
+{{{ Show welcome slide }}}
-.. #[Madhu: Please make your instructions, instructional. While
- recording if I have to read this, think what you are actually
- meaning it will take a lot of time]
-
-We would be using simple mathematical functions on the sage notebook
-for this tutorial.
.. #[Madhu: What is this line doing here. I don't see much use of it]
During the course of the tutorial we will learn
-{{{ Part of Notebook with outline }}}
-
-To define symbolic expressions in sage. Use built-in costants and
-function. Integration, differentiation using sage. Defining
-matrices. Defining Symbolic functions. Simplifying and solving
-symbolic expressions and functions.
+{{{ Show outline slide }}}
-.. #[Nishanth]: The formatting is all messed up
- First fix the formatting and compile the rst
- The I shall review
-.. #[Madhu: Please make the above items full english sentences, not
- the slides like points. The person recording should be able to
- read your script as is. It can read something like "we will learn
- how to define symbolic expressions in Sage, using built-in ..."]
+* Defining symbolic expressions in sage.
+* Using built-in costants and functions.
+* Performing Integration, differentiation using sage.
+* Defining matrices.
+* Defining Symbolic functions.
+* Simplifying and solving symbolic expressions and functions.
-Using sage we can perform mathematical operations on symbols.
-
-.. #[Madhu: Same mistake with period symbols! Please get the
- punctuation right. Also you may have to rephrase the above
- sentence as "We can use Sage to perform sybmolic mathematical
- operations" or such]
+We can use Sage for symbolic maths.
On the sage notebook type::
@@ -48,7 +28,7 @@
It raises a name error saying that y is not defined. But in sage we
can declare y as a symbol using var function.
-.. #[Madhu: But is not required]
+
::
var('y')
@@ -56,66 +36,56 @@
sin(y)
- sage simply returns the expression .
+sage simply returns the expression.
+
-.. #[Madhu: Why is this line indented? Also full stop. When will you
- learn? Yes we can correct you. But corrections are for you to
- learn. If you don't learn from your mistakes, I don't know what
- to say]
+Thus sage treats sin(y) as a symbolic expression . We can use
+this to do symbolic maths using sage's built-in constants and
+expressions..
-thus now sage treats sin(y) as a symbolic expression . You can use
-this to do a lot of symbolic maths using sage's built-in constants and
-expressions .
-.. #[Madhu: "Thus now"? It sounds like Dus and Nou, i.e 10 and 9 in
- Hindi! Full stop again. "a lot" doesn't mean anything until you
- quantify it or give examples.]
-
-Try out
+So let us try ::
+
+ var('x,alpha,y,beta')
+ x^2/alpha^2+y^2/beta^2
+
+taking another example
+
+ var('theta')
+ sin^2(theta)+cos^2(theta)
-.. #[Madhu: "So let us try" sounds better]
- ::
-
- var('x,alpha,y,beta') x^2/alpha^2+y^2/beta^2
-
-Similarly , we can define many algebraic and trigonometric expressions
+
+Similarly, we can define many algebraic and trigonometric expressions
using sage .
-.. #[Madhu: comma again. Show some more examples?]
-
Sage also provides a few built-in constants which are commonly used in
mathematics .
-example : pi,e,oo , Function n gives the numerical values of all these
+example : pi,e,infinity , Function n gives the numerical values of all these
constants.
-.. #[Madhu: This doesn't sound like scripts. How will I read this
- while recording. Also if I were recording I would have read your
- third constant as Oh-Oh i.e. double O. It took me at least 30
- seconds to figure out it is infinity]
-
-For instance::
+{{{ Type n(pi)
+ n(e)
+ n(oo)
+ On the sage notebook }}}
- n(e)
-
- 2.71828182845905
+
-gives numerical value of e.
-
-If you look into the documentation of n by doing
+If you look into the documentation of function "n" by doing
.. #[Madhu: "documentation of the function "n"?]
::
n(<Tab>
-You will see what all arguments it can take etc .. It will be very
-helpful if you look at the documentation of all functions introduced
+You will see what all arguments it takes and what it returns. It will be very
+helpful if you look at the documentation of all functions introduced through
+this script.
-.. #[Madhu: What does etc .. mean in a script?]
+
-Also we can define the no of digits we wish to use in the numerical
+Also we can define the no. of digits we wish to use in the numerical
value . For this we have to pass an argument digits. Type
.. #[Madhu: "no of digits"? Also "We wish to obtain" than "we wish to
@@ -125,10 +95,10 @@
n(pi, digits = 10)
Apart from the constants sage also has a lot of builtin functions like
-sin,cos,sinh,cosh,log,factorial,gamma,exp,arcsin,arccos,arctan etc ...
-lets try some out on the sage notebook.
+sin,cos,log,factorial,gamma,exp,arcsin etc ...
+lets try some of them out on the sage notebook.
-.. #[Madhu: Here "a lot" makes sense]
+
::
sin(pi/2)
@@ -141,12 +111,9 @@
Given that we have defined variables like x,y etc .. , We can define
an arbitrary function with desired name in the following way.::
- var('x') function(<tab> {{{ Just to show the documentation
- extend this line }}} function('f',x)
+ var('x')
+ function('f',x)
-.. #[Madhu: What will the person recording show in the documentation
- without a script for it? Please don't assume recorder can cook up
- things while recording. It is impractical]
Here f is the name of the function and x is the independent variable .
Now we can define f(x) to be ::
@@ -158,186 +125,153 @@
f(pi)
We can also define functions that are not continuous but defined
-piecewise. We will be using a function which is a parabola between 0
-to 1 and a constant from 1 to 2 . type the following as given on the
+piecewise. Let us define a function which is a parabola between 0
+to 1 and a constant from 1 to 2 . Type the following as given on the
screen
-.. #[Madhu: Instead of "We will be using ..." how about "Let us define
- a function ..."]
::
- var('x') h(x)=x^2 g(x)=1 f=Piecewise(<Tab> {{{ Just to show the
- documentation extend this line }}}
+ var('x')
+ h(x)=x^2 g(x)=1
+ f=Piecewise(<Tab>
+
+{{{ Show the documentation of Piecewise }}}
+
+::
f=Piecewise([[(0,1),h(x)],[(1,2),g(x)]],x) f
-Checking f at 0.4, 1.4 and 3 :: f(0.4) f(1.4) f(3)
-.. #[Madhu: Again this doesn't sound like a script]
-
-for f(3) it raises a value not defined in domain error .
-Apart from operations on expressions and functions one can also use
-them for series .
+We can also define functions which are series
-.. #[Madhu: I am not able to understand this line. "Use them as
-.. series". Use what as series?]
We first define a function f(n) in the way discussed above.::
- var('n') function('f', n)
+ var('n')
+ function('f', n)
-.. #[Madhu: Shouldn't this be on 2 separate lines?]
To sum the function for a range of discrete values of n, we use the
sage function sum.
For a convergent series , f(n)=1/n^2 we can say ::
- var('n') function('f', n)
+ var('n')
+ function('f', n)
f(n) = 1/n^2
sum(f(n), n, 1, oo)
-For the famous Madhava series :: var('n') function('f', n)
+
+Lets us now try another series ::
-.. #[Madhu: What is this? your double colon says it must be code block
- but where is the indentation and other things. How will the
- recorder know about it?]
f(n) = (-1)^(n-1)*1/(2*n - 1)
-
-This series converges to pi/4. It was used by ancient Indians to
-interpret pi.
-
-.. #[Madhu: I am losing the context. Please add something to bring
- this thing to the context]
+ sum(f(n), n, 1, oo)
-For a divergent series, sum would raise a an error 'Sum is
-divergent' ::
-
- var('n')
- function('f', n)
- f(n) = 1/n sum(f(n), n,1, oo)
+This series converges to pi/4.
-
-We can perform simple calculus operation using sage
+Moving on let us see how to perform simple calculus operations using Sage
-.. #[Madhu: When you switch to irrelevant topics make sure you use
- some connectors in English like "Moving on let us see how to
- perform simple calculus operations using Sage" or something like
- that]
For example lets try an expression first ::
- diff(x**2+sin(x),x) 2x+cos(x)
+ diff(x**2+sin(x),x)
+ 2x+cos(x)
-The diff function differentiates an expression or a function . Its
+The diff function differentiates an expression or a function. Its
first argument is expression or function and second argument is the
-independent variable .
-
-.. #[Madhu: Full stop, Full stop, Full stop]
+independent variable.
We have already tried an expression now lets try a function ::
- f=exp(x^2)+arcsin(x) diff(f(x),x)
+ f=exp(x^2)+arcsin(x)
+ diff(f(x),x)
-To get a higher order differentiation we need to add an extra argument
+To get a higher order differential we need to add an extra third argument
for order ::
diff(<tab> diff(f(x),x,3)
-.. #[Madhu: Please try to be more explicit saying third argument]
-
in this case it is 3.
Just like differentiation of expression you can also integrate them ::
- x = var('x') s = integral(1/(1 + (tan(x))**2),x) s
-
-.. #[Madhu: Two separate lines.]
+ x = var('x')
+ s = integral(1/(1 + (tan(x))**2),x)
+ s
-To find the factors of an expression use the "factor" function
+
-.. #[Madhu: See the diff]
+Many a times we need to find factors of an expression ,we can use the "factor" function
::
- factor(<tab> y = (x^100 - x^70)*(cos(x)^2 + cos(x)^2*tan(x)^2) f =
- factor(y)
+ factor(<tab>
+ y = (x^100 - x^70)*(cos(x)^2 + cos(x)^2*tan(x)^2)
+ f = factor(y)
-One can also simplify complicated expression using sage ::
+One can simplify complicated expression ::
+
f.simplify_full()
-This simplifies the expression fully . You can also do simplification
+This simplifies the expression fully . We can also do simplification
of just the algebraic part and the trigonometric part ::
- f.simplify_exp() f.simplify_trig()
+ f.simplify_exp()
+ f.simplify_trig()
-.. #[Madhu: Separate lines?]
+
One can also find roots of an equation by using find_root function::
- phi = var('phi') find_root(cos(phi)==sin(phi),0,pi/2)
-
-.. #[Madhu: Separate lines?]
+ phi = var('phi')
+ find_root(cos(phi)==sin(phi),0,pi/2)
Lets substitute this solution into the equation and see we were
correct ::
- var('phi') f(phi)=cos(phi)-sin(phi)
- root=find_root(f(phi)==0,0,pi/2) f.substitute(phi=root)
-
-.. #[Madhu: Separate lines?]
+ var('phi')
+ f(phi)=cos(phi)-sin(phi)
+ root=find_root(f(phi)==0,0,pi/2)
+ f.substitute(phi=root)
-as we can see the solution is almost equal to zero .
+as we can see when we substitute the value the answer is almost = 0 showing
+the solution we got was correct.
-.. #[Madhu: So what?]
-
-We can also define symbolic matrices ::
- var('a,b,c,d') A=matrix([[a,1,0],[0,b,0],[0,c,d]]) A
+Lets us now try some matrix algebra symbolically ::
+
+
-.. #[Madhu: Why don't you break the lines?]
+ var('a,b,c,d')
+ A=matrix([[a,1,0],[0,b,0],[0,c,d]])
+ A
Now lets do some of the matrix operations on this matrix
-.. #[Madhu: Why don't you break the lines? Also how do you connect
- this up? Use some transformation keywords in English]
-::
- A.det() A.inverse()
-
-.. #[Madhu: Why don't you break the lines?]
-You can do ::
-
- A.<Tab>
+::
+ A.det()
+ A.inverse()
-To see what all operations are available
-.. #[Madhu: Sounds very abrupt]
{{{ Part of the notebook with summary }}}
So in this tutorial we learnt how to
-We learnt about defining symbolic expression and functions .
-And some built-in constants and functions .
-Getting value of built-in constants using n function.
-Using Tab to see the documentation.
-Also we learnt how to sum a series using sum function.
-diff() and integrate() for calculus operations .
-Finding roots , factors and simplifying expression using find_root(),
-factor() , simplify_full, simplify_exp , simplify_trig .
-Substituting values in expression using substitute function.
-And finally creating symbolic matrices and performing operation on them .
+* We learnt about defining symbolic expression and functions.
+* Using built-in constants and functions.
+* Using <Tab> to see the documentation of a function.
+* Simple calculus operations .
+* Substituting values in expression using substitute function.
+* Creating symbolic matrices and performing operation on them .
-.. #[Madhu: See what Nishanth is doing. He has written this as
- points. So easy to read out while recording. You may want to
- reorganize like that]
--- a/symbolics/slides.tex Wed Oct 20 16:19:55 2010 +0530
+++ b/symbolics/slides.tex Thu Oct 21 00:22:42 2010 +0530
@@ -1,106 +1,67 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%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<presentation>
-{
- \usetheme{Warsaw}
- \useoutertheme{infolines}
- \setbeamercovered{transparent}
-}
-
-\usepackage[english]{babel}
+% Created 2010-10-21 Thu 00:06
+\documentclass[presentation]{beamer}
+\usetheme{Warsaw}\useoutertheme{infolines}\usecolortheme{default}\setbeamercovered{transparent}
\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{graphicx}
+\usepackage{longtable}
+\usepackage{float}
+\usepackage{wrapfig}
+\usepackage{soul}
+\usepackage{amssymb}
+\usepackage{hyperref}
-\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}}
+\title{Plotting Data }
+\author{FOSSEE}
+\date{2010-09-14 Tue}
-\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}
+\maketitle
-\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}
+\frametitle{Tutorial Plan}
+\label{sec-1}
+\begin{itemize}
+
+\item Defining symbolic expressions in sage.\\
+\label{sec-1.1}%
+\item Using built-in costants and functions.\\
+\label{sec-1.2}%
+\item Performing Integration, differentiation using sage.\\
+\label{sec-1.3}%
+\item Defining matrices.\\
+\label{sec-1.4}%
+\item Defining Symbolic functions.\\
+\label{sec-1.5}%
+\item Simplifying and solving symbolic expressions and functions.\\
+\label{sec-1.6}%
+\end{itemize} % ends low level
+\end{frame}
+\begin{frame}
+\frametitle{Summary}
+\label{sec-2}
+\begin{itemize}
+
+\item We learnt about defining symbolic expression and functions.\\
+\label{sec-2.1}%
+\item Using built-in constants and functions.\\
+\label{sec-2.2}%
+\item Using <Tab> to see the documentation of a function.\\
+\label{sec-2.3}%
+\item Simple calculus operations .\\
+\label{sec-2.4}%
+\item Substituting values in expression using substitute function.\\
+\label{sec-2.5}%
+\item Creating symbolic matrices and performing operation on them .\\
+\label{sec-2.6}%
+\end{itemize} % ends low level
\end{frame}
\end{document}