A picture of me
Mark Gillespie
About Me

Hi, I'm Mark. I'm a third year Computer Science PhD student at Carnegie Mellon University, advised by Keenan Crane. My research interests are in computer graphics and physical simulation. At the moment, I'm exploring connections between hyperbolic geometry and discrete conformal maps. In the past, I have looked at in variational integrators and the use of Discrete Exterior Calculus to discretize dynamical systems.

Here is a blog that I write with some friends. And here is my CV.

In my spare time, I like to fold origami and knit. You can find more here.

Email: mgillesp@andrew.cmu.edu

Magnetohydrodynamics (MHD) Simulation

Over the summer of 2017, I worked on simulating MHD using discrete exterior calculus. Following this paper by Kraus and Maj, I implemented a 2D MHD simulation in periodic domains. I then proved that the method conserves energy and cross-helicity, and I extended the method to domains with boundaries.

Below are some results of the simulation. The magnetic field strength is visualized by a glowing effect. You can see the fluid carrying the magnetic field upwards, where it collides with the container's boundary and starts to flow sideways.

I implemented the algorithm in HoudiniFX, and used Houdini to render these images.

Variational Integrators for Pendula

In the winter of 2016, I implemented a variational integrator for multiple pendula as a final project for a graphics class. I used the method of Marsden and West described here (also available here) to simulate a physical system with constraints.

Most of the work for this project was spent understanding the mathematical machinery that Marsden and West used to discretize classical mechanics. The algorithm was implemented in Mathematica.

Discrete Differential Geometry

Here are some interesting assignments that I implemented for a discrete differential geometry class in the fall of 2016.

I computed the normal modes of the discrete Laplacian on the Stanford bunny. Here are the first 4.

Using these normal modes, I numerically solved a Poisson equation to find the electric field induced by charges on the bunny's surface.

I also used the cotan Laplacian to perform mean curvature flow on surfaces. This creates surfaces with minimal surface area.
The largest project that I did in the class was computing smooth vector fields on surfaces using parallel transport via a trivial connection. I computed generators of the surface's homology using the tree-cotree algorithm. Then, I input the desired singularities and computed the Gaussian curvature on the surface. Using the Guassian curvature, I computed a trivial connection and then used the connection to transport the vector field across the surface.

Interval Analysis

Recently, I've been working with Professor Alan Barr on using Interval Analysis to solve root-finding and minimization problems. Interval analysis is the technique of doing computations with intervals representing uncertainty instead of regular real numbers. This provided guaranteed bounds on the accuracy of your results. Our code is available on GitHub.

Teaching Experience
Spring 2019

Teaching Assistant for CS 15-458/858: Discrete Differential Geometry (CMU)

Under Professor Keenan Crane, graded problem sets, held weekly office hours, delivered recitation lectures. Course website available here
Fall 2017

Teaching Assistant for CS 171: Introduction to Computer Graphics (Caltech)

Under Professor Alan Barr, graded problem sets, held weekly office hours, delivered recitation lectures
Spring 2016,2017

Teaching Assistant for CS 38: Algorithms (Caltech)

I graded problem sets every few weeks and held weekly office hours


NSF Graduate Research Fellowship


SIGGRAPH ACM Turing Award Celebration Grant

I was one of 10 students sponsored by SIGGRAPH to attend the ACM Turing Award Celebration.
2017, 2016

Arthur R. Adams SURF Fellowship

Fellowship to fund my summer research.

William Lowell Putnam Mathematics Competition

31 points (rank: 365/3214)



Carnegie Mellon University
  • PhD student in the Computer Science Department
California Institute of Technology
  • Majors: Computer Science, Mathematics
  • GPA: 4.1

Selected Talks Given
Oct. 2019

Origami and Geometry

Graphcs Lab Talk
1 hour talk overview of assorted algorithms for origami design, and how they relate to geometetry. Slides available here.
Jun. 2019

Hyperbolic Geometry and Discrete Conformal Maps

Graphcs Lab Talk
1 hour talk about discrete conformal maps, length cross ratios, and hyperbolic geometry. Slides available here.
Jan. 2019

Magnetohydrodynamics and the Geometry of Conservation Laws

Graphcs Lab Talk
1 hour talk on my previous summer research. Focused on general background about geometric mechanics and MHD. Slides available here.
Oct. 2017

2D Plasma Simulation via Discrete Exterior Calculus

Caltech Summer Research Seminar Day
15 minute presentation on the results of my summer research. Slides available here.
Sept. 2017

Combinatorics and the Probabilistic Method

Westfield High School Seminar in College Mathematics
30 minute presentation to a high school math class. Gave an introduction to elementary combinatorics and presented some simple applications of the probabilistic method. Notes available here.
Mar. 2017

Continuous and Discrete Mechanics for Variational Integrators

Caltech CS 177b
1.5 hour final presentation for a computer graphics class. Gave an overview of Hamiltonian and Lagrangian mechanics, and discussed how to discretize them to produce variational time integrators. Extended notes available here.