• Stars
    star
    139
  • Rank 261,466 (Top 6 %)
  • Language
    Jupyter Notebook
  • License
    Apache License 2.0
  • Created over 2 years ago
  • Updated 20 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Class materials for computational physics course

Overview of Methods in Course

(Left to Right): Avalanche activity cascades in a sandpile automaton; a vortex street formed by flow past a cylinder; and Turing patterns in a reaction-diffusion model. All simulations from the course homeworks; a higher-resolution video may be viewed here

Computational Physics

Summary

Materials for UT Austin's graduate computational physics course, taught by William Gilpin.

This course aims to provide a very broad survey of computational methods that are particularly relevant to modern physics research. We will aim to cover efficient algorithm design and performance analysis, traditional numerical recipes such as integration and matrix manipulation, and emerging methods in data analysis and machine learning. Our goal by the end of the class will be to feel comfortable approaching diverse, open-ended computational problems that arise during research, and to be ready to design and share new algorithms with the broader research community.

The class website is located here. If you are enrolled in the course at UT, the syllabus and calendar are here

Contents

Many links below direct to Google Colaboratory, and can be run-in-browser without any installation as long as you are signed into a Google account. To download the raw source files, please refer to the GitHub repository

Homework Assignments

Lecture Slides

Notes

Laboratory Exercises

Example Final Projects

Usage and improvements

If you are teaching a similar course, please feel free to use any or all of these materials. If you have any suggestions for improvements or find any errors, I would very much appreciate any feedback.

For errors or typos, please consider opening an issue or submitting corrections as pull requests on GitHub.

For students, course-related questions are best posted on GitHub as Discussions or Issues on the course repository; for other issues, I can be reached via email

Requirements

We will primarily use Python 3 with the following packages

  • numpy
  • matplotlib
  • scipy
  • scikit-learn
  • jupyter

For projects and other parts of the class, you might also need

  • ipykernel
  • scikit-image
  • umap-learn
  • statsmodels
  • pytorch
  • jax
  • numba

Attributions

Portions of the material in this course are adapted or inspired by other open-source classes, including: Pankaj Mehta's Machine Learning for Physics Course, Chris Rycroft's Numerical Recipe's Course, Volodymyr Kuleshov's Applied Machine Learning course, Fei-Fei Li's Deep Learning for Computer Vision course, Lorena Barba's CFD course and Jim Crutchfield's Nonlinear Dynamics course

<script async src="https://www.googletagmanager.com/gtag/js?id=G-37RSFCXBQY"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-37RSFCXBQY'); </script>

More Repositories

1

dysts

More than a hundred strange attractors
Jupyter Notebook
391
star
2

pypdb

A Python API for the RCSB Protein Data Bank (PDB)
Python
306
star
3

fnn

Embed strange attractors using a regularizer for autoencoders
Jupyter Notebook
131
star
4

convoca

Predict and analyze cellular automata using convolutional neural networks
Python
79
star
5

portbalance

Determine optimal rebalancing of a passive stock portfolio.
Python
40
star
6

cfgen

Parse a text corpus and generate sentences in the same style using context-free grammar combined with a Markov chain.
Python
34
star
7

howto

How to do various tricky computer things
Python
13
star
8

shrec

Reconstructing shared causal drivers from noisy time series
Jupyter Notebook
10
star
9

flowtrace_python

Python implementation of time-resolved flow tracing.
Python
9
star
10

hspmc

Monte Carlo simulation of hard sphere packing using MATLAB
MATLAB
9
star
11

rk4

Numerically solve the Henon-Heiles problem and generate Poincare sections using a simple implementation of RK4 integration
Python
6
star
12

swimpy

Utilities for working with experimental fluid mechanics datasets
Python
5
star
13

diccor

A set of MATLAB routines for generating displacement vector fields from black and white time series of images.
MATLAB
5
star
14

fracdiff

A set of tools for simulation of fractional Brownian motion
Python
4
star
15

lagrange2d

A Mathematica package for Lagrangian analysis of fluid flows.
Mathematica
4
star
16

chaotic_ecosystem

Mathematica code for analysis of a chaotic ecosystem model
Mathematica
3
star
17

stdmap

Generation of phase space portraits illustrating the onset of chaos in the Chirikov standard map
Python
3
star
18

dysts_data

Data files for the main dysts repository
Jupyter Notebook
2
star
19

degas

Plotting utilities for matplotlib
Python
2
star
20

williamgilpin.github.io

HTML
2
star
21

alveoli

Oscillating alveoli model
Jupyter Notebook
2
star
22

flowtrace_imagej

ImageJ / Fiji implementation of time-resolved flow tracing.
2
star
23

netsim

Tools for analyzing Markov models using statistical physics and graph theory
Python
1
star
24

exrepo

An example Python repository
Python
1
star
25

kurep_paper

Code to create avalanches in a repulsive oscillator model.
Jupyter Notebook
1
star
26

flowtrace_matlab

MATLAB implementation of time-resolved flow tracing.
MATLAB
1
star
27

vergas

Simulation of a Lennard-Jones gas using Verlet integration. Calculation of autocorrelation and other descriptive statistics requiring dynamical information.
Python
1
star
28

illotka

Simulate the ill-conditioned Lotka-Volterra model
Jupyter Notebook
1
star