Materials for the IPython/Jupyter workshop at the Next-Generation Computational Modeling Summer Academy:
- 2-day course
- 27 and 28 June 2017
- At Southampton University, Boldrewood campus
Course URL: http://ngcm.soton.ac.uk/summer-academy/ipython.html
Teaching is from 10am to 6pm, broken up by half-hour tea breaks morning and afternoon, and an hour lunch break. See the programme for details.
Jupyter and IPython provide tools for interactive and parallel computing that are widely used in scientific computing. We will show some uses of IPython for scientific applications, focusing on exciting recent developments, web-based notebooks with code, graphics, and rich HTML.
Day 1 morning: Core Jupyter and IPython
- Notebook Basics
- IPython - beyond plain python
- Markdown Cells
- Rich Display System
- Beyond Python: the Jupyter architecture with Julia and R
Day 1 afternoon: Working with notebook files
- Converting notebooks to other formats with nbconvert
- Using notebooks in version control, with git and nbdime
- Sharing notebooks online using nbviewer
- Notebooks in continuous integration with nbval
Day 2 morning: Interactive widgets in notebooks
- Using interact() to explore a function
- Creating widgets manually and connecting them to Python functions
- Laying out widgets on the page
- The architecture of interactive widgets
Day 2 afternoon: Parallel computing with IPython
- Overview of the ipyparallel model
- Controller and engines
- Basics of remote execution
- Direct vs task execution
- Integration with MPI codes
- Handling dependencies between tasks
- Performance considerations
- Python 3.x
- Jupyter, including the Notebook and IPython. It should be available through the usual distribution channels, such as Anaconda.
- Your favorite text editor.
- If you have trouble installing Anaconda, this blog entry may help.
- For the material related to
nbconvert
, thepandoc
package, together with alatex
installation, would be useful.
To install the packages required for this course and the Pandas course in a new environment with Anaconda, run:
conda create -n ngcm python=3 numpy scipy jupyter ipywidgets pandas matplotlib requests scikit-image sympy
Then, to use this environment, enter:
source activate ngcm
On Windows, this command is just activate ngcm
.
You can download and run this
version_check.py
script, and execute it using python version_check.py
to check
you have fulfilled the installation requirements.
- Basic Python,
- some vague notion of html would be great.