David Harper

David Harper

Physics Major | Aspiring Graduate Student

About Me

Currently pursuing a double major in Physics and Mathematics at Iowa State University (Class of 2026). I work at Ames National Laboratory, focusing on theoretical physics and modeling of metasurfaces. My research combines computational methods with fundamental physics to advance our understanding of optical phenomena.

I bring extensive experience in scientific computing, with particular expertise in Python, C++, and numerical methods. This technical foundation enables me to tackle complex physical simulations and computational challenges in both academic research and practical applications.

Projects

Here are some of my notable projects in physics and programming.

Laplacian Eigenfunction Visualization

\[\nabla^2\psi = k\psi, \quad \left. \psi \right|_{\heartsuit} = 0\]

Laplacian Eigenfunction Visualization

This visualization represents the eigenfunctions of the Laplacian operator, which I computed through custom numerical methods. The project was an attempt to create pretty art using newly learned physics knowledge, as I have never been good at conventional art techniques. This picture received 1400 upvotes and was the top post of the month on Reddit's r/math, where a UC Colorado Springs professor saw it and reached out to ask if he could adapt my small implementation for biophysics modeling.

\[H_{2^n} = \begin{bmatrix} H_{2^{n-1}} & H_{2^{n-1}} \\ H_{2^{n-1}} & -H_{2^{n-1}} \end{bmatrix}, \quad H_1 = [1]\]

Fast Hadamard Matrix Computation with GLSL

Developed a high-performance GLSL shader implementation for computing Hadamard matrices using bitwise operations. Traditional approaches rely on recursive algorithms, but this implementation achieves full parallelization through GPU computing. By leveraging binary arithmetic and the parallel nature of fragment shaders, the computation achieves maximum efficiency without the overhead of recursion. Click the visualization above to see higher-order Hadamard matrices rendered in real-time.

Picture of Japan and East Asian Geography recreated in Minecraft

Reverse Engineering Minecraft's World Format

In the summer between high school and college I spent a week writing a python library that could manipulate Minecraft's world storage format at a large scale. This taught me a lot about manipulating binary file formats. First, I utilized this library in conjunction with NASA's topographical data of the Earth to create a realistic geography in the game. I followed this up by creating a tool which converted STL files to blocks in the game, so any 3D object could be imported.

Contact

Get in touch! djharper2000@gmail.com

white paper