Howdy! I'm
While nearly all of my work is available on Github (and therefore open-source) these projects are heavily documented and/or made available on package managers so they can be easily used by others.
A toolbox for working with photoelastic methods, or more generally, just image analysis, in python. This includes particle tracking, photoelastic response simulation, and inverse force solving.
Source: https://github.com/Jfeatherstone/pepe
Library to help interface with the Thor Labs Beam Profiler model 209 in Python. Since this device has no native bindings in python, this involves running a C# server that forwards inputs to the python interface. The server and forwarding is all managed automatically in the background, and thus the library can be used as if you were using a regular API.
Source: https://github.com/Jfeatherstone/TLBP2Python
A research-grade simulation toolkit for relativistic collisions of hadrons, resulting in the production of the "color glass condensate" state. Developed together with Prof. Vladimir Skokov.
Source: https://github.com/Jfeatherstone/ColorGlass
Library for performing iterative 3D Hough transform for line detection in a point cloud.
While the extent of my projects can be found on my Github page, here are a few particularly cool ones!
Excluding projects that are directly tied to my active research, I still enjoy working on physics-related simulations and methods!
This lightweight physics engine implements automatic generation of collision boxes from sprites, specifically designed for game development. The detection of intersections of polygons of arbitrary concavity is done efficiently, including built-in ways to approximate shapes to boost performance.
This app simulates arbitrary regions of your screen as someone with various types of colorblindness would see it. This can be used to check presentations, scientific figures, etc. to make sure they are legible to everyone!
This is a simple CLI-based todo list made in Java that I continuously add features to as I find I personally need them. It currently supports different coloring schemes (including a compatability mode), task grouping, and fun messages upon completing a task!
One of the main reasons that I program so much is to create applications for my own personal use (and if others can use them too, all the better)!
Not-too-serious that I made as a way to learn a language, or just because I was bored!