A collection of edX XBlock components for numerical simulations.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


XBlock components for numerical simulation

Copyright (C) 2013 Harish Narayanan

This project is released under the GNU Affero General Public License. Please read LICENSE.txt for the complete terms.


This project aims to create a collection of XBlocks that allow students to carry out simulations in mathematical physics and instructors to pose exercises within this context. It does this by connecting to thinkbot, a computing service which offers a selection of scientific computing software through a RESTful API.

In particular, the project initially aims to build three kinds of XBlock components:

  1. A component that allows students to interact with the results of a precomputed numerical solution. Such demonstrations are used to motivate the theoretical material covered in classes.

  2. A component that allows students to dynamically interact in simple ways with a numerical simulation, such as changing parameters.

  3. A component that presents students with interactive programming exercises tied to computational science.

Interacting with the solution of a PDE


  1. Install the XBlock component architecture project

  2. Source the corresponding venv, if you installed it in a virtual environment (which you should have!)

  3. Install the thinkbot related Xblocks from this project's root folder:

    $ pip install -e thinkbot
  4. Run the Django development server for the XBlock workbench:

    $ python manage.py runserver
  5. Open a web browser to: and find a link to the thinkbot XBlock

Contact info

If you're interested in finding out more about how to use this project in your own course or are interested in contributing to it, please write to me:

Harish Narayanan mail@harishnarayanan.org