Skip to content

Materials for the IPython/Jupyter workshop at the NGCM Summer Academy, at Southampton University, Boldrewood campus.

Notifications You must be signed in to change notification settings

michalkalkowski/ngcm-tutorial

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IPython/Jupyter Workshop at the NGCM Summer Academy

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.

Course content

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

Software Requirements

  • 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, the pandoc package, together with a latex 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.

Checking your installation

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.

Required knowledge

  • Basic Python,
  • some vague notion of html would be great.

The trainers

Infrastructure

About

Materials for the IPython/Jupyter workshop at the NGCM Summer Academy, at Southampton University, Boldrewood campus.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Jupyter Notebook 96.6%
  • HTML 2.8%
  • Other 0.6%