Welcome to my physics corner! Below are some of the projects, personal and research, that I have worked on! Feel free to contact me if you have any questions about them.
Some aren't yet linked while I polish up the GitHub repositories. Coming soon!
-Kyle
Ising_GUI - A graphical interface for square lattice Ising model simulation, built in Python. See the lattice update in real time and adjust parameters on the fly! A great tool for teaching those who are looking to get familiar with classical lattice models.
XY_GUI - Similar to Ising_GUI, but for the square lattice XY model.
Ising_Model - A collection of 2D square lattice Ising model simulations using the Metropolis, Wolff, and Worm algorithms written in Python. Comparisons of results between the different algorithms and a discussion on the benefits and pitfalls of each.
XY_Model - A collection of 2D square lattice XY model simulations using the Metropolis, Wolff, and Worm algorithms written in Python. Also includes an additional limited-change method for the XY model, which can save runtimes at low temperatures by shrinking the new angle proposal window, which drastically increases acceptance rates.
Hubbard_1D - Two implementations of a 1D chain geometry applied to the Fermi-Hubbard model, simulated using Determinant Quantum Monte Carlo (DQMC). I implemented one from scratch using Python, and the other using Julia and my fork of SmoQyDQMC.
1D_TFIM - An exact diagonalization approach to solving the 1D transverse field Ising model. Used to show the D to D+1 correspondence between quantum and classical systems, where the 1D TFIM shows a discrete phase transition similar to the 2D classical Ising model.
Square_Hubbard - A DQMC approach to the square lattice Fermi-Hubbard model using SmoQyDQMC
Kagome_Hubbard - A DQMC approach to the Kagome lattice Fermi-Hubbard model using SmoQyDQMC, where my research group was able to show evidence of Ferromagnetic behavior in a certain domain of density, temperature, and energy.
SmoQy_Saver - A Python tool for gathering outputs from SmoQyDQMC.jl and calculating their averages and error bars. Condenses the results of hundreds or thousands of individual runs into just a few files that can easily be used for data analysis.
SmoQyDQMC.jl - A fork of the powerful SmoQyDQMC.jl package, where I removed the necessity for large amounts of file reads/writes. This leads to significantly faster runtimes and is still fully compatible with code written for the base version of SmoQyDQMC.