Code Portfolio

SCIENTIFIC · 2020

High-performance, user-friendly, and expandable pseudo-spectral Schrödinger-Poisson solver for cosmological simulations with ultralight dark matter.

Built upon Numpy and PyFFTW.

Status

Active Maintenance. MIT License.


SCIENTIFIC | MISCELLANEOUS · 2023

Originally designed as a component of PyUltraLight, this is a collection of matplotlib functions that effectively visualise 3D location and motion of particles.

Status

Active Maintenance. MIT License.


SCIENTIFIC | Teaching · 2021

Written shortly after a few hours of JavaScript crash course.

It is a small playground of bouncing masses that allows students taking University of Auckland Physics 100G to explore the efficacy and limits of mathematical modeling (compared to a real air hockey table).

Status

Live.


SCIENTIFIC | Teaching · 2021

BoxGas.JS is an interactive simulation of the behavior of particles at thermal equilibrium. Building upon the engine that powers AirHockey, this program offers a microscopic peek into the kinetic dance of gas molecules.

What sets this tool apart is the integration of adaptive histograms—a sophisticated feature that doesn’t just display statistics but allows students to engage with the data, witnessing in real time how varying conditions affect particle distribution.

Status

Live.


SCIENTIFIC | Teaching · 2022

I have produced a series of Python scripts using OpenCV that assist with data processing. An example is shown here.

The Cavendish Experiment offered at Auckland Physics Advanced Lab makes use of a laser pointed at the torsional balance. By tracing the reflected light spot, the gravitational forces damping the balance could be accurately determined.

Status

Live. GPL license.


SCIENTIFIC | MISCELLANEOUS · 2020

Part of my output during the 2020 McGill Physics Hackathon. This project used Blender 3D as my IDE, and visualised expolanet orbits. A procedural shader accentuates the radial motion.

Status

Archived.


SCIENTIFIC | MISCELLANEOUS · 2018

A MATLAB application that allows users to explore the world of triangular billiards, with helper functions that help determine the periodicity of orbits and other properties.

Written during the summer of 2018, this was my first attempt to produce a nontrivial user interface. While the subject investigated is ultimately abstract, TrgPO laid the foundation of my programming and design process for years to come.

Status

Archived.


artistic · 2023

Light Util. eXpts. WaterMark Tools.

A small Python app to batch-process my photographs for social media posts and archiving that makes use of the images’ EXIF data and dominant colours. Runs on all platforms.

Status

Archived. MIT License.


artistic · 2022

Generate patterns that resemble star-trail images from ANY short exposure photo, where the lengths and fadeoffs are customisable.

A future version will automatically detect stars and mask them with the landscape.

Status

Archived. MIT License.


artistic | Meme · 2022

New Zealand Flag (as at 2022) with gravity between the stars. An expansion pack with other flags and a rotational degree of freedom is planned.

Status

MIT License.


artistic | HACKATHON · 2017

This website itself has been a coding playground!

First constructed during Cal Hacks 4.0, FWPhys.com itself has been built upon an extensively modified WordPress template, with custom CSS …

almost everywhere.

Status

Live, hopefully.


Page updated: 13 Jan 2024