Sunday, May 7, 2017


Had a great time at the Construct3D conference at Duke University May 5-7, 2017. I gave a talk on printing chaotic dynamical systems. Here is a copy of the talk and of the three codes that I talked about. If you use them, send me an email and let me know how it goes!

Talk (pdf)
Iterated Function Systems Code (OpenSCAD)
Lorenz Attractors Code (Mathematica)
Mandelbrot and Julia Sets Code (Mathematica)
 List of all files talk and code

Thursday, April 20, 2017

Outreach: Workshops on 3D Printing in Mathematics

As part of our outreach activities, we hosted two workshops on 3D printing with  two goals. Our first goal was to spread awareness of how 3D printing can be used in mathematics, and the second being how we can use our knowledge of mathematics to create a 3D printable object. The designs created by all the workshop attendees were then printed at the Math MakerLab and are put on a display in the department.

The first workshop was open to all College of Science students at George Mason University, where the attendees were given an introduction to the lab, and then taught the basics of OpenSCAD. The students used basic geometric objects like cylinders and cubes to create an impossible key.

The attendees were also given a sophisticated piece of code to play with which illustrated the idea of fractals, in particular iterated function systems. 

Each attendee chose various parameters to come up with a design. Some of the designs they came up included those in the following image.

The second workshop was organized for high school students. GMU student chapter of Association for Women in Mathematics organized an outreach event for Centerville High School girls in which members from their Women in Math Society (WIMS) club visited George Mason University. The goal was to inspire these women to pursue active careers in STEM fields. Activities of the day included a workshop on using 3D printing in Mathematics, visit to the Mason Observatory, Magnetic Resonance Lab, and Neural Engineering Lab.

In the math segment, Evelyn Sander and Ratna Khatri ran the 3D printing workshop. WIMS students were given the same piece of basic code for an iterated function system (IFS) in OpenSCAD. They learned how to modify the file to create a 3D printed iterated function system, a type of fractal. Dr. Sander explained what each part of the code did, how the software worked, and what IFS and fractals are. The WIMS students were then asked to work in groups of three to design their own iterated function systems, which were printed that afternoon by Ratna Khatri at the GMU Math MakerLab and given to the students at the end of the day.

Overall the visit was a big success, and was thoroughly enjoyed by the WIMS students. We asked them to fill out a survey form, and they said, [I liked] learning the basics of how to print a 3D model using a 3D printer”, “[I liked learning] how to load something to be 3D printed - it was definitely harder than it looks to get it how you wanted!”, “the staff and students we talked to were very friendly. “told my family and friends how I am more interested in these [STEM] fields now. THANK YOU!!!

Friday, January 27, 2017

Dual Platonic Solids

Currently working on prints morphing between dual platonic solids. 

Progression between a tetrahedron and its dual.. which is also a tetrahedron

Here is a cube (yellow) with its dual octahedron (green)

Tuesday, November 22, 2016

Volume by Disc and Shell Methods

Volume by Disc and Shell Methods
6.3 Volume by slicing
6.4 Volume by shells

Note: Section numbers refers to Calculus, Early Transcendentals (2nd edition) by Briggs, Cochran, and Gillett.
These prints illustrate the disc method and the shell method for finding volumes of solids of  revolution.
The blue object is obtained by revolving the region between y-axis and the graph of:
The model on the left shows the solid. The one on the right is an approximation using 10 shells.
In the solid below (titled the Volumes of Hanoi) the piece on the left of the model is a solid of revolution obtained by rotating the region bounded by the graph of the function 

The rightmost set of pieces represents an approximation of volume of the center solid of revolution with four discs, and the middle set represents a different approximation of that solid with four shells. The discs each have the same height but their radii are determined by the function f(x). The shells each have the same thickness but their heights are determined by the function f(x).

On one side is the approximation of the volume using four disks, and on the other side is the approximation of the volume using four shells. To make it clear which is which, we have shown the same model with the pieces taken apart.

The next model is a solid obtained by revolving the region between the graph of 

The model on the left is  the exact region, and the one on the right is an approximation which uses 8 shells.

Volume by slicing

Volume by slicing

Sec 6.3 Volume by slicing, Q10, pg 430 

Note: Section number refers to Calculus, Early Transcendentals (2nd edition) by Briggs, Cochran, and Gillett.

For this solid, it is possible to find the volume by integration of the cross sectional area. The solid has a circular base of radius r. The cross sections perpendicular to the base and parallel to the z-axis are equilateral triangles.  

The solid
Circular base
A sliced version so that it is possible to see the equilateral triangles:


Four slice version by Evelyn Sander.

The 20 slice version Volume: 20 equilateral triangles on circular base, dennedesigns, Jun 29, 2015. 

Double Integrals over Rectangular Regions

Double Integrals over Rectangular Regions

Section 13.1Double Integrals over Rectangular Regions

Note: Section number refers to Calculus, Early Transcedentals (2nd edition) by Briggs, Cochran, and Gillett.

These 3D prints illustrate the concept of Riemann sums used for calculating volumes of solids. As the number of rectangles are increased, we get a better and better approximation of the double integral.

The double integral approximation for the function:
is demonstrated below. It is the Gaussian curve in 3 dimensions, generated using 100, 225, and 400 rectangular prisms, respectively on the interval [-2,2.5] x [-2,2]. The Mathematica code used to generate these models was based on Raouf Boules', Geoff Goodson's, Ohoe Kim's and Mike O'Leary's Calculus III Lab at Towson University, found here.

The integral approximator (code provided below) takes a function f on an interval [a1,b1]x[a2,b2] with n discretization points in both the x and y directions, therefore approximating the area under the function with n^2 rectangular prisms (cuboids in Mathematica). Just like in the 1-dimensional integral approximation methods, 
The x and y coordinates of the jth and kth rectangle are thus given by, 

Technical Details for Printing:

In Mathematica, Cuboid[{lower corner (x,y,z), upper corner (x,y,z)]. Here the lower corner is given by (x_j, y_k, 0), and the upper corner (x(j+1), y_(k+1), f(x_j, y_k)).
Mathematica code:

RD[f, {a1, b1}, {a2, b2}, n] := Show[Table[Graphics3D[Cuboid[{a1 + (b1 - a1)/nj, a2 + (b2 - a2)/nk, 0},

{a1 + (b1 - a1)/n(j + 1), a2 + (b2 - a2)/n(k + 1),f[a1 + (b1 - a1)/nj, a2 + (b2 - a2)/nk]}]], {j, 0, n - 1}, {k,0, n - 1}]]

Clear[f, x, y]

f[x, y] := 2*Exp[-x^2 - y^2]

print1 = RD[f, {-2, 2.5}, {-2, 2}, 10]


In the figure below, from left to right, we have n=10, 15, 20 and 50.

This code was created by Mae Markowski, in Mathematics through 3D Printing, taught by Dr. Evelyn Sander in Spring 2016, and printed at the Math Makerlab, GMU. 

Klein Bottle