Teaching

"Sometimes I sit and [teach], and sometimes I just sit" --- Courtney Barnett

In development…

Physical machine learning

I’ve been slowly developing general scientific machine learning materials with Julia + Pluto notebooks. (These were originally developed in Sept 2021 for the MLBD MRes below, but a more modest Python + Pytorch neural network based set of lessons were delivered.)

https://jarvist.github.io/2021-PhysicsMachineLearningPracticum/02_GaussianProcessPotentialEnergySurface.html

https://jarvist.github.io/2021-PhysicsMachineLearningPracticum/04_IsingModel.html

Computational solid state physics

Based in the solid-state physics computational teaching I’ve undertaken on various MRes and CDTs, I’m starting to put together a general introductory course to bridge the gap between undergraduate solid state physics / chemistry, and then a research student level of running electronic structure calculations.

https://frost-group.github.io/ComputationalSolidStatePhysics/

2021–2022

Machine Learning and Big Data (MRes, Physics, Imperial)

In the ‘practical’ sessions I taught by a mix of lecturing and Jupyter notebooks, with an introduction to neural networks (including building a single neuron classifier by hand), and then a more intermediate introduction to Graph neural networks, and Ordinary Differential Equations nets.

My project was on trying to infer parameters for chaotic ODEs.

https://github.com/jarvist/2021-PhysicsMachineLearningPracticum/tree/main/2021-PythonJupyter

Solution processible electronics (MRes, Physics, Imperial)

For this I taught a lectured component on solid-state theory & electronic structure. (Very high level overview!)

A key concept was relating effective mass to band structures, the 2020 (Zoom, pre-recorded) derivations of which are available on YouTube:

https://youtu.be/XtvaDn9y1L4

https://youtu.be/NlAKF_xhimk

I also ran a computational workshop using ASE and GPAW within Jupyter notebooks

https://github.com/Frost-group/2021-SEM-MRes-MaterialStructureAndDynamics-ComputationalWorkshop

The aim of this workshop is to get some experience of running solid-state (periodic) electronic structure calculations. You should adapt the notebooks, which Jarvist wrote to calculate for CsPbI3 cubic-perovskite material, to your own semiconductor from the active learning component of the lectures. As you achieve calculations in the lab, copy and paste the results into the collective document as a record of what you’ve done.

We are using ASE (the Atomic Simulation Environment) in a Jupyter notebook. ASE is a python package which allows computational manipulation and calculation of solid-state structures. It can use multiple back-ends for doing the actual calculations.

In this lab we will be using the GPAW which is based in projector-augmented wave (PAW) density functional theory on a real-space grid.

Girls who Machine Learn (GirlsWhoML)

I delivered a guest lecturer (over Zoom) for Girls Who Machine Learn (GirlsWhoML), organised by Imperial’s Women in Physics and Women in Computing society, and attended voluntarily by students from across the Imperial faculties.

I mainly used the provided materials, but added some of the content on the single neuron classifier from the above MRes. I also added a couple of Mentimeter based quizzes for active learning. I can’t share the materials as I don’t own sole copyright, but I certainly recommend volunteering if you have the opportunity - it was very interesting and useful to try and deliver content to a different cohort.