Shodor

a national resource for computational science education

HOME UPEP Shodor Blue Waters

Parallel Numerical Simulation of Boltzmann Transport in Single-Walled Carbon Nanotubes

By Zlatan Aksamija
University of Wisconsin-Madison, Madison, Wisconsin

This module teaches:

  • The basic principles of semi-classical transport simulation based on the time-dependent Boltzmann transport equation (BTE) formalism.
  • Performance considerations for parallel implementations of multi-dimensional transport simulation.
  • Numerical methods for efficient and accurate solution of the BTE for both electronic and thermal transport using the simple finite difference discretization and the stable upwind method.

Upon completion of this module students should be able to:

  • Identify problems that would be suited to simulation based on the semi-classical paradigm and the Boltzmann transport equation (BTE).
  • Understand the principles behind the dual (phase) space representation of transport (position and momentum) and the trade-offs of using this approach.
  • Implement a serial BTE solution, possibly with extensions to other structures which have charge or thermal transport in two- and three-dimensional space.
  • Parallelize a BTE implementation, and characterize its scaling behavior.
  • Understand the trade-offs in parallel performance between a division of phase-space into strips along either the momentum or position coordinate, as well as dual decomposition into patches in the combined position/momentum space.
  • Debug, tune and optimize a parallel BTE solution for execution on large compute clusters.

The documents can be downloaded individually, or as a zip archive containing all of the documents below:

Resources:

Module Document : The module document in PDF format.

Module Slides : Slides accompanying this module in PDF format.

Guide to Student Assessment : The guide to student assessment accompanying this module in .docx file format.

Matlab Code : A zip file containing the Matlab code accompanying this module.

MPI Code : A zip file containing the MPI code accompanying this module.