The Finite Element Method on
the Sierpinski Gasket

Cornell REU 2002
Kevin Coletta

* Note: This page has been constructed purely with the intent of getting my content available on the web. Over the next few months, improvements will be made.


My work this summer has been with the finite element method on the Sierpinski gasket. Quite a bit had already been done, mostly by Michael Gibbons and Arjun Raj, who have an excellent website. To save time, rather than repeat the background information, I'll simply suggest readers look at their overview and code outline. A limitation of their programs, however, was that they were only designed to use regular subdivisions of the gasket when making the spline basis. The bulk of my work was in expanding their code to be able to handle arbitrary subdivisions. These we could use to "zoom in" on interesting areas of the things we were approximating, thus gaining more insight into what was going on at a relatively low computational cost. Specifically, irregular grid approximations were used to look at the eigenvalue problem with square well potentials and solutions to the wave equation.

The Subdivision Scheme

In order to do arbitrary grids, there had to be a way to describe an irregular subdivision. For regular grids all that needed to be specified was the level at which we wanted to approximate. Instead, for arbitrary grids, we use a word list. We assume we will always want at least level 1 points. We use Gibbons' and Raj's numbering of the boundary (0 on top, 1 on the lower right, and 2 on the lower left) and consider the word 0 to represent subdividing the 0 triangle, that is, the top one. The word 10 then represents subdividing the 10 triangle, which is a level 2 cell. You can think of each word as representing one of the upside down triangles in the graph of the grid. Each word added to the list adds 3 vertices. As an example, a regular grid of level 3 can be done as the word list {0, 1, 2, 00, 01, 02, 10, 11, 12, 20, 21, 22}.

The Code

There are 2 files which contain all of the necessary Maple code. The first is everything.mws, which has all of Gibbons' and Raj's code. The second is new_stuff.mws, which is all the code I wrote. Much of the code I "wrote" I actually simply modified from code Gibbons and Raj developed, so there are a lot of functions in everything.mws that are not necessary for irregular grids. At some point in the future all the Maple code will be consolidated for the convenience of those trying to use it.

There are several files used for the Matlab portions, but they are all small. You can download them all in matlab_code.tar. To see how to use all of these procedures to actually produce useful things, check out the examples in worksheets.tar.

Eigenvalue Problem

As mentioned, we used irregular FEM approximations to look at solutions to the eigenvalue problem including square well potential terms. The square well we used was on the 02 cell of the gasket. You can see it (with a size of 1) here. For our subdivision, we used level 3 as a base and then zoomed in around the three boundary points of the square well. You can download eigenfunctions for a square well of -100 and 100. We also looked at how the first 3 eigenvalues varied as we changed the size of the square well. Take a look at those results.

The Wave Equation

Our other focus has been on the wave equation. We've been using the initial conditions of zero function value everywhere, and an initial velocity of a delta function (actually an approximation of one). There are all sorts of things we are still in the process of examining, but we have generated some cool pictures. This is the first 1 second of time using a basis which is level 3 plus 4 zooms toward our impulse point, and this is the first .03 seconds of time using a basis which is level 3 plus 10 zooms toward our impulse point. The second graph has also been zoomed in 4 times toward the impulse point, and the vertical scale has been restricted on both graphs, since the spikes around the impulse point make it hard to see the behavior elsewhere.

My Presentation

If you click here you can see the slides from my talk at the Undergraduate Research Forum. These contain notes on a lot of the background, as well as many cool pictures. Unfortunately, there 2 errors in these notes which I do not know if I'll have a chance to correct, so I will mention them here. The left side of the wave equation should simply read Laplacian u, not negative Laplacian u. Secondly, the statement that the sequence of finite energies is monotonically increasing in m is actually only true when u = v.