added outline file
authorNishanth <nishanth@fossee.in>
Wed, 22 Sep 2010 19:49:42 +0530
changeset 181 6c460c0cb353
parent 180 cb005c033fdb
child 183 c66ee1743d25
added outline file
outline_and_allocations.rst
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/outline_and_allocations.rst	Wed Sep 22 19:49:42 2010 +0530
@@ -0,0 +1,491 @@
+1 Module 1: Basic Plotting (16) 
+================================
+
+1.1 ABCD 
+---------
+* Audience 
+  + same 
+* Behaviour 
+  - should be able to generate plots with any combination of built-in
+    mathematical functions provided by pylab
+* Condition 
+  - being learnt in a self-study tutorial.
+  - have python setup in their machine
+* Degree 
+  - RBT - Ap
+  
+
+1.2 LO: getting started with =ipython= (2) [punch] 
+---------------------------------------------------
+* Objective 
+  Participants will be able to invoke and use basic features of ipython. 
+* ABCD 
+  + Condition 
+    - have =python= & =ipython= setup in their machine. no mention of =pylab=
+* Assessment Strategy 
+  Built-in interspersed exercises
+  - workbook
+    + errors, make connection with error message
+* Outline 
+  + invoking ipython 
+    if there's a problem, pre-requisites are not met. 
+  + getting out 
+  + explain the prompt 
+  + typing commands 
+    - 1+2 
+      * careful wording to differentiate from print 
+    - print 1+2 
+    - history (up, down arrows) 
+    - backspace, delete key 
+    - tab completion 
+      * ab 
+      * a 
+      * rou 
+      * ro 
+      * r 
+  + =abs?=, =round?= 
+  + handling typing errors 
+    - round(2.48,
+      + close it
+      + use ^C  
+
+1.3 LO: using the =plot= command interactively (2) [amit] 
+----------------------------------------------------------
+* Outline 
+  + ipython -pylab 
+    - pylab brings in the libraries necessary for Scientific Computing. 
+  + =linspace=, 
+  + =len= 
+  + =clf= 
+  + =plot= 
+  + using the plot ui 
+
+1.4 LO: embellishing a plot (2) [nishanth] 
+-------------------------------------------
+* Outline 
+  + [X]line width, color, style 
+  + [X]Title 
+  + [X]Label 
+  + [X]annotations 
+
+1.5 LO: saving plots (2) [anoop] 
+---------------------------------
+* Outline 
+  + basic savefig 
+  + png, pdf, ps, eps, svg 
+  + going to OS and looking at the file 
+
+1.6 LO: multiple plots (3) [madhu] 
+-----------------------------------
+* Outline 
+  + overlays 
+    - linspace 
+      * give one with very few points, more points 
+      * show smoothness of the curve 
+  + legend 
+  + figure 1, figure2 
+  + subplots 
+
+1.7 LO: additional features of IPython (2) [nishanth] 
+------------------------------------------------------
+* Outline 
+  + =%save=, =%history=, =%run= 
+
+1.8 LO: module level assessment (3) [madhu] 
+--------------------------------------------
+* 10-12 question, time the questions 
+* pause & and play when ready to look at answers 
+* show the answers 
+* one large or two medium questions 
+* ex: four_plot 
+  
+
+2 Module 2: Plotting Experimental Data (12) 
+============================================
+
+2.1 ABCD 
+---------
+* Audience 
+  + same 
+* Behaviour 
+  - should be able to generate plots with numeric data from files.
+* Condition 
+  - being learnt in a self-study tutorial.
+  - have python setup in their machine
+* Degree 
+  - Same
+
+2.2 LO: loading data from files (3) [punch] 
+--------------------------------------------
+* loadtxt with unpack=True 
+  + primes.list (one col) 
+  + pendulum.txt (two col) 
+
+2.3 LO: plotting the data (3) [amit] 
+-------------------------------------
+* plot L vs. T^2 
+  + using square function 
+* problem with 3 cols 
+  + 3rd column is error 
+  + error bar 
+
+2.4 LO: other types of plots (3) [anoop] 
+-----------------------------------------
+* scatter 
+* pie chart 
+* bar chart 
+* log 
+* illustration of other plots, matplotlib help 
+
+2.5 LO: module level assessment (3) [nishanth] 
+-----------------------------------------------
+* pos.txt is evaluation 
+  
+
+3 Module 3: Handling Large Data Files (17) 
+===========================================
+
+3.1 LO: getting started with lists (2) [amit] 
+----------------------------------------------
+* empty 
+* filled lists 
+  + heterogenity 
+* accessing 
+* len 
+* =append= elements 
+* del (+ remove) 
+
+3.2 LO: getting started with =for= (2) [anoop] 
+-----------------------------------------------
+* blocks in python 
+  + (indentation) 
+* blocks in ipython 
+  + ... prompt 
+  + hitting enter 
+* =for= with a list 
+* =range= function 
+
+3.3 LO: getting started with strings (2) [madhu] 
+-------------------------------------------------
+* strings 
+  + single, double, triple quoted 
+* accessing elements 
+* show immutability 
+* tell that there are methods for manipulation 
+
+3.4 LO: getting started with files (3) [punch] 
+-----------------------------------------------
+* show file object 
+* read the file with =read= 
+* closing the file 
+* for line in file: 
+* print a line 
+* append the lines to a list 
+
+3.5 LO: parsing data (3) [nishanth] 
+------------------------------------
+* explain what is parsing 
+* strip (with strings) 
+* split (with strings) 
+  + with delimiters 
+    - specify space as delimiter 
+* datatype conversion 
+* reading from files 
+  + do the same problem done with loadtxt (for pendulum) 
+  + basic parse sslc text 
+
+3.6 LO: statistics (2) [amit] 
+------------------------------
+* mean 
+  + summing 
+* median 
+* std 
+
+3.7 LO: module level assessment (3) [madhu] 
+--------------------------------------------
+* mean g 
+  
+
+4 Module 4: Arrays and Matrices (14) 
+=====================================
+
+4.1 LO: getting started with arrays (2) [anoop] 
+------------------------------------------------
+* why arrays 
+  + speed - simply say 
+  + array level operations 
+* creating arrays 
+  + direct data 
+  + list conversion 
+  + homogeneous 
+  + builtins - identitiy, zeros, 
+* array operations 
+  + =+ - * /= 
+
+4.2 LO: accessing parts of arrays (4) [punch] 
+----------------------------------------------
+* accessing individual elements 
+* slicing, striding 
+* image manipulation 
+
+4.3 LO: Matrices (3) [anoop] 
+-----------------------------
+* creating matrices 
+  + direct data 
+  + list conversion 
+  + builtins - identitiy, zeros, 
+* matrix operations 
+  + + - * / 
+  + dot 
+  + inv 
+  + det 
+  + eig 
+  + norm 
+  + svd 
+
+4.4 LO: Least square fit (2) [nishanth] 
+----------------------------------------
+* show pendulum 
+  + use loadtxt 
+* lstsq 
+
+4.5 LO: Assessment (3) [punch] 
+-------------------------------
+* extract faces from a group photograph 
+
+5 Module 5: using Sage (13) 
+============================
+
+5.1 LO: getting started with sage notebook (3) [madhu] 
+-------------------------------------------------------
+* about sage 
+  + ... 
+* starting the notebook server 
+* using the UI 
+  + typesetting & print 
+  + selecting language 
+    - sage 
+    - LaTeX 
+    - python 
+  + help 
+    - sum(<tab> 
+    - ? 
+
+5.2 LO: getting started with symbolics (3) [amit] 
+--------------------------------------------------
+* symbolic expressions 
+  + built-in constants & functions 
+  + algebraic expressions, 
+  + series 
+  + integration, differentiation 
+  + matrices 
+* symbolic functions 
+  + defining 
+* simplification 
+* finding roots & factors 
+* substituting expressions 
+* output formats 
+
+5.3 LO: using Sage (4) [punch] 
+-------------------------------
+* ABCD 
+  + Degree 
+    - RBT - U 
+* Calculus 
+  + limits 
+  + differentiation 
+  + integration 
+    - indefinite 
+    - definite 
+  + piece-wise functions 
+  + differential equations 
+  + maxima, minima 
+* Linear Algebra 
+  + Vectors and Matrices 
+    - constructions 
+  + Vector Operations 
+    - linear combination 
+    - dot 
+    - cross 
+    - pairwise 
+  + Matrix Operations 
+    - linear combination 
+    - matrix multiplication 
+    - inverse 
+    - transpose 
+    - adjoint 
+    - rank 
+    - determinant 
+    - trace 
+    - norm 
+  + Solving equations 
+  + Eigenvalues, eigenvectors 
+* Graph Theory 
+* Number Theory 
+
+5.4 LO: using sage to teach (3) [nishanth] 
+-------------------------------------------
+* @interact 
+* 2D, 3D graphics 
+* Graph Theory 
+* Share, Publish 
+* print 
+
+5.5 LO: Assessment (3) [anoop] 
+-------------------------------
+* 5 questions 
+* choice of exercises from one area 
+
+6 Module 6: Python Language: Basics (12)
+=======================================
+
+6.1 LO: basic datatypes & operators (4) [amit]
+----------------------------------------------
+* int 
+  + L, long 
+* float 
+  + repr, str 
+* complex
+  + methods like imag, real
+* boolean
+  + short circuit logic
+* conversion functions
+* sequence datatypes & mutability 
+  + list available sequence datatypes 
+    - string 
+    - list 
+    - tuple 
+  + mutability 
+  + conversion 
+  + common stuff 
+    - len 
+    - in 
+    - max, min, sum, sorted, reversed 
+    - accessing individual elements 
+    - slicing, striding 
+    - containership
+
+6.2 LO: I/O (1) [nishanth]
+--------------------------
+* print statement
+* raw_input
+
+6.3 LO: conditionals (2) [Madhu]
+--------------------------------
+* if, elif, else 
+* pass 
+* ternary operator
+
+6.4 LO: loops (2) [punch]
+-------------------------
+* while
+* for
+* pass, break, continue
+
+6.5 LO: Assessment (3) [Anoop]
+------------------------------
+* 10 Questions
+* One of collatz or armstrong numbers
+
+
+7 Module 7: Python Language: Datastructures (14)
+================================================
+
+7.1 LO: manipulating lists (3) [Madhu]
+--------------------------------------
+* concatenation
+* slicing
+* striding
+* .sort 
+* sorted 
+* .reverse 
+* reversed 
+
+7.2 LO: manipulating strings (2) [punch]
+----------------------------------------
+* upper, lower, 
+* replace 
+* slicing 
+* [::-1] 
+* reversed 
+* palindrome check 
+
+7.3 LO: getting started with tuples (2) [nishanth]
+--------------------------------------------------
+* immutability 
+* tuple packing, unpacking 
+  + a, b = b, a 
+* accessing individual elements 
+* slicing, striding 
+
+7.4 LO: dictionaries (2) [anoop]
+--------------------------------
+* empty 
+* filled 
+* accessing via keys 
+* .values(), .keys() 
+* in 
+* iteration
+
+7.5 LO: sets (2) [nishanth] 
+---------------------------
+* Operations
+  + Union
+  + Intersection
+  + Complement
+  + Symmetric Difference
+* Containership
+* Subset
+* len
+
+7.6 LO: Assessment (3) [amit]
+-----------------------------
+* 10 Questions
+* Anagrams for sets and dictionaries
+* A problem for lists and strings
+
+8 Module 8: Python Language: Advanced (16)
+==========================================
+
+8.1 LO: getting started with functions (3) [nishanth]
+-----------------------------------------------------
+* defining function
+* arguments
+* docstrings
+* return values
+  + can return multiple values
+* code reading exercises
+
+8.2 LO: advanced features of functions (3) [punch]
+--------------------------------------------------
+* default arguments
+* keyword arguments
+* built-in functions show off
+
+8.3 LO: using python modules (3) [anoop]
+----------------------------------------
+* executing python scripts from command line
+* import
+* scipy
+* pylab
+* sys
+* STDLIB modules show off
+
+8.4 LO: writing python scripts (2)  [nishanth]
+----------------------------------------------
+* importing our own modules
+* if __name__ == '__main__'
+
+8.5 LO: testing and debugging (2) [amit]
+----------------------------------------
+* Types of errors and exceptions
+* Strategy for debugging
+  + Using print
+
+8.6 LO: Assessment (3) [punch]
+------------------------------
+* 10 Questions
+* Find four digit numbers whose digits are all even
+* Write a script to use methods from pylab (like plot, show and other commands) and execute it as a stand-alone script
+
+