Support Options

Submit a Support Ticket

Home Groups Simulations and Computational Science
  • Discoverability Visible
  • Join Policy Open/Anyone
  • Created 01 Aug 2013

Go to the Education Page


Welcome to the Simulations and Computational Science group! If you are a student or practicing engineer or scientist who wants to learn more about computation and simulation or an instructor looking for materials to use in a course, you can find material here that includes complete courses and seminars on specialized topics.

Much of the material is freely accessible by any visitor, but by joining this group, you can participate in discussions on topics of interest to you, post items to the group wiki or even work on a project with other group members. Additionally, as a group member you may receive notifications about new materials and events of interest to the computation and simulation group members. Adding events to the group calendar is as easy as clicking on “add event”.

You can also contribute substantial resources to nanoHUB through the resource contribution process, and then send a message to the group manager so that links to those resources can be added to this group.

This group contains the following:

General Courses

Developing Tools for

By Michael McLennan
This presentation explains the benefits of running code on nanoHUB vs on a local computer, and gives pointers to getting started. Although some of the details of this 2008 presentation are dated, the basic message is timeless, and a fundamental reason for nanoHUB’s popularity. If you want to publish one of your own simulation tools on nanoHUB, the next step is to go through the Rappture Bootcamp training.

Rappture Bootcamp — 2014 Deploying Scientific Tools

Taught by Michael McLennan
This Bootcamp is a 3 to 4 day intensive series that is used to teach students how to use Rappture to make GUIs for simulation code that might not have a user-friendly interface, and is a rapid way to make a simulation tool ready for publication on nanoHUB. Some knowledge of programming is required (For example, MATLAB, C, Python, Fortran, Tcl, etc..).
Selected Topics: Rappture toolkit; nanoHUB workspace, scientific programming, advanced visualization, regression testing.

Rappture Bootcamp — Building and Deploying Tools on nanoHUB

Purdue University (2012) 12 Lectures.
Taught by Michael McLennan
This is an earlier version of the Rappture training, that includes video lectures. The 2014 version does not yet contain videos, but they will be added shortly (6/11/14).
Important Note —In order to see what is being typed on the screen, you must watch the YouTube version of the lectures. The screen capture is not always present or properly synced in the html version.

A Primer on Semiconductor Device Simulation

Purdue University (2006)
Taught by Mark Lundstrom
Computer simulation is now an essential tool for the research and development of semiconductor processes and devices, but to use a simulation tool intelligently, one must know what’s “under the hood.” This talk is a tutorial introduction designed for someone using semiconductor device simulation for the first time.

nanoHUB-U Course

From Atoms to Materials— Predictive Theory and Simulations

Purdue University (2013) 30 Lectures
Taught by Alejandro Strachan
Selected Topics: quantum mechanics, quantum well, quantization, optic processes, hydrogen atoms,bonding of molecules, bonding of crystals, simple hydrides, orbitals, crystals, band structures, MD simulations, covalent interactions, phonons, micro/macro, harmonic solids, isothermal, isobaric, case studies

Graduate Courses

Overview of Computational Nanoscience

UC Berkeley (2008) 29 Lectures
Taught by Jeffrey C. Grossman and Elif Ertekin
Selected Topics: molecular dynamics, geometry optimization, Monte Carlo simulation, phase transitions, Ising model, Hartree-Fock calculations, tight-binding, solid modeling, band structure, morphological evolution, electron correlations, excitations, tunneling, verification, validation.

Computational Materials Science and Engineering

MSE 498 at the University of Illinois at Urbana-Champaign (2015). 19 Lectures.
Taught by Andrew Ferguson

This new course will give students hands-on experience with popular computational materials science and engineering software through a series of projects in: electronic structure calculation (e.g., VASP), molecular simulation (e.g., GROMACS), phase diagram modeling (e.g., Thermo-Calc), finite element modeling (e.g., OOF2), and materials selection. The course will familiarize students with a broad survey of software tools in computational materials science, scientific computing, and prioritize the physical principles underlying the software to confer an understanding of their applicability and limitations.

Numerical Simulations for Energy Applications

ECE 595E at Purdue University (Spring 2013) 36 Lectures
Taught by Peter Bermel
Selected Topics: Computability, NP-hardness, Optimization and Eigenvalues, Solving Quantum Wavefunctions, FFTs, FFTW, Beam Propagation Method, Bandstruture simulation, Transfer Matrix Methods, S-Matrix Methods, Eigenmode Layered computations (CAMFR), Coupled Mode Theory, Finite-Difference Time-Domain simulations, MEEP Tutorial.

Poisson Equation Solvers - General Considerations

By Dragica Vasileska

We describe the need for numerical modeling, the finite difference method, the conversion from continuous set to set of matrix equations, types of solvers for solving sparse matrix equations of the form Ax=b that result, for example, from the finite difference discretization of the Poisson Equation.

Modeling Materials

Atomistic Materials Science

Purdue University (2011) 2 Tutorials
Taught by Alejandro Strachan
Selected Topics: ab initio simulations, molecular dynamics simulations, Schrodinger equation, Hartree Fock, density functional theory, state of the art interatomic potentials, materials problems

Atomic-Scale Simulation

Phys 466 at University of Illinois at Urbana-Champaign (2013). 32 Lectures
Taught by David M. Ceperley
Selected Topics: mechanical statistics, molecular dynamics, Monte Carlo, molecular dynamics, Markov chains, Brownian dynamics, PIMC, fermions

Atomic-Scale Simulation — older version

Physics 466/CSE485 at University of Illinois at Urbana-Champaign (2009). 19 Lectures
Taught by David M. Ceperley
Selected Topics: Moore’s law, statistical mechanics, microcanonical, Maxwell-Boltzmann, molecular dynamics, Verlet, interatomic potentials, scalar properties, static correlations, dynamic correlations, transport coefficients, sampling, brownian dynamics, Kinetic Monte Carlo (KMC), Ising model

Molecular Dynamics

An Introduction to Molecular Dynamics

MSE 597G at Purdue University (2008). 10 Lectures
Taught by Alejandro Strachan
Selected Topics: classical mechanics, statistical mechanics, nano-materials simulation toolkit, interatomic potentials, molecular dynamics simulations, reaction zone model, VKML

Molecular Dynamics Modeling of Materials— older version

Purdue University (2007) 4 Lectures
Taught by Alejandro Strachan
Selected Topics: molecular dynamics simulations, mesodynamics, classical mechanics, statistical mechanics, canonical ensemble, thermodynamics, quantum effects, Verlet algorithm

Short Course on Molecular Dynamics Simulation

Purdue University (2009) 10 Lectures
Taught by Ashlie Martini
Selected Topics: potential energy functions, integration algorithms, temperature control, boundary conditions, neighbor lists, initialization, equilibrium, static properties, dynamic properties, non equilibrium MD

Density Functional Theory

Materials Simulation by First-Principles Density Functional Theory

NCN@Purdue Summer School: Electronics from the Bottom Up (2010). 2 Lectures
Taught by Umesh V. Waghmare
Selected Topics: computational physics, phonons, vibrational spectra, phonon dispersion, ab initio, energy functions, density functional theory, DFT, materials science, molecular dynamics, Kohn-Sham, parallelization, quasicontinuum methodology.

Computational Electronics

Computational Electronics

Arizona State University (2006) 11 Lectures.
Taught by Dragica Vasileska
Selected Topics: semi-classical semiconductor device modeling, computational electronics, simplified band structure model, empirical pseudopotential method, distribution function selection, relaxation time, scattering mechanisms,drift-diffusion model, PADRE, silvaco, MOS capacitors, CMOS technology.

Monte Carlo Simulations

Bulk Monte Carlo Learning Materials

Taught By Dragica Vasileska, Gerhard Klimeck, Mark Lundstrom, Stephen M. Goodnick
Selected Topics: carrier mobility, drift velocity, semi-classical transport, Boltzmann transport equation, Gunn effect

Numerical Simulations for Energy Applications

ECE 595E at Purdue University (2013). 36 Lectures.
Taught by Peter Bermel
Selected Topics: numerical simulations, NP-hardness, linear algebra, optimization, Eigenvalues, quantum wavefunctions, fast Fourier transforms, beam propagation, bandstructure, bandgaps, matrix methods, MEEP

Programming Massively Parallel Processors

ECE 498AL at University of Illinois Urbana-Champaign (2009). 15 Lectures.
Taught by Wen-Mei W Hwu
Selected Topics: CUDA programming model, CUDA threads, GPU, threading hardware in G80, memory hardware in G80, control flow, parallel algorithms, reductions

NEMO5 Tutorials

ECE at Purdue University (2012). 7 Lectures.
Taught by James Fonseca, Tillmann Kubis, Michael Povolotskyi, Jean Michel D Sellier, Parijat Sengupta, Junzhe Geng, Mehdi Salmani Jelodar, Seung Hyun Park, Gerhard Klimeck
Selected Topics: NEMO5, input, output, models, graphene nanostructures, python solvers, quantum dots, transport, GaSb/InAs tunneling, insulator behavior

Computational Optoelectronics Course

Taught By: Dragica Vasileska and Gerhard Klimeck
Selected Topics: quantum mechanics, bound states, open systems, heterostructures, superlattices, Fortran code, MATLAB, solar cells, light-emitting diodes, photodetectors, VCSELS, band structure calculation, K P method, tight-binding, crystalline silicon, SILVACO, lasers


Excellence in Computer Simulation

The successes of computational science and engineering (CSE) over the past two-three decades have been substantial, but at the beginning of a new century, it is useful to reflect on what has been accomplished, on how computational science and engineering are evolving, and on how we can be even more successful in the future.

Excellence in Computer Simulation brought together experts who have made strong contributions to CSE and thought deeply about the field. The one-day event consisted of individual talks followed by short discussions. Each presentation was recorded for dissemination on the nanoHUB to provide a resource for students preparing for careers in science and engineering and to simulate a broader discussion within the NCN and across the national and international research community.


NEMO5 Tutorials (2012 Summer School)  

NCN's 2012 Electronics from the Bottom Up (EBU) Summer School, co-sponsored by Intel, was a weeklong event to introduce students to new ways of thinking about electronic materials and devices. The second half of the week included a hands-on workshop for the nanoelectronics modeling tool, NEMO5, developed in Prof. Gerhard Klimeck's research group.  Those videos and slides are available at the link above and can be used to gain an understanding of NEMO5's capabilities in general, but for up to date information, please see


Supplementary Material

Is Seeing Believing? How to Think Visually and Analyze with Both your Eyes and Briain

Purdue University (2007)
By David Ebert
Visualization is an important technique for dealing with large datasets, such as might be generated from a simulation. In this tutorial, learn about different types of visualizations that can be created from scientific data sets, interactive visual analysis, how visualization can help people think critically, how to reason over space and time, what not to do in visualization, common techniques that are used, and some of the specialized visualization work done at Purdue.

MATLAB Scripts for Quantum Transport- Atom to Transistor

Purdue University (2005)
Taught by Supriyo Datta
Selected Topics: quantum transport models, code

How to Make High Quality Plots in MATLAB

Purdue Univerisity (2011)
Taught By Mehdi Salmani Jelodar
This presentation is a tutorial for plotting higher quality figures by MATLAB. Basic elements of plots are introduced and the way to manipulate these elements by coding is explained. Two methods for dual axis plotting is described., a resource for nanoscience and nanotechnology, is supported by the National Science Foundation and other funding agencies. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.