Advanced Python
===============

Module Objectives
-----------------

After successfully completing this module a participant will be able to:

* generate 2D plots                                              {Ap}
* Work with arrays and use them effectively                      {Ap}
* Solve linear, polynomial and other non-linear equations        {Ap}
* Solve ODEs                                                     {Ap}
* Write mid-sized programs that carry out typical                {Ap}
  engineering/numerical computations such as those that involve
  (basic) manipulation of large arrays in an efficient manner    

+---------+-----------------------------------+----------+
| Session | Topic                             | Duration |
+---------+-----------------------------------+----------+
|         | Interactive Plottin               | 5 min    |
|         | - -pylab                          |          |
|         | - plot, linspace                  |          |
|         |                                   |          |
|         | Embellishing plots                | 10 min   |
|         | - clf                             |          |
|         | - title                           |          |
|         | - xlabel, ylabel                  |          |
|         | - annotate                        |          |
|         | - xlim, ylim                      |          |
|         |                                   |          |
|         | Saving to scripts                 | 10 min   |
|         | - %hist                           |          |
|         | - %save                           |          |
|         | - %run                            |          |
|         |                                   |          |
|         | Saving plots                      |          |
|         |                                   |          |
|         | Multiple plots                    | 15 min   |
|         | - legend                          |          |
|         | - *figure*                        |          |
|         | - subplot                         |          |
|         |                                   |          |
|         | Plotting data                     | 10 min   |
|         | - loadtxt                         |          |
|         |                                   |          |
|         | Other plots                       | 10 min   |
|         | - bar,                            |          |
|         | - pie                             |          |
|         | - scatter                         |          |
|         | - loglog                          |          |
+---------+-----------------------------------+----------+
|         | Arrays - Introduction             | 15 min   |
|         | - creating from lists             |          |
|         | - special methods                 |          |
|         | - operations on arrays            |          |
|         |                                   |          |
|         | Accessing pieces of arrays        | 15 min   |
|         | - accessing and changing elements |          |
|         | - rows and columns                |          |
|         | - slicing and striding            |          |
|         |                                   |          |
|         | Matrix operations                 | 10 min   |
|         |                                   |          |
|         | Least square fit                  | 15 min   |
+---------+-----------------------------------+----------+
|         | Solving equations                 | 15 min   |
|         | - solve                           |          |
|         | - roots                           |          |
|         | - fsolve                          |          |
|         |                                   |          |
|         | ODEs                              | 20 min   |
|         | - 1st order                       |          |
|         | - 2nd order                       |          |
|         |                                   |          |
|         | python modules                    | 20 min   |
|         | - imports                         |          |
|         | - sys.path                        |          |
|         | - writing own modules             |          |
+---------+-----------------------------------+----------+