Purdue Graduation

This May I finished my Masters’ in Computer Science at Purdue University.  Here are some photos from the night of graduation.

CS530 Visualization Projects

This is a collection of projects I created for CS 530: Introduction to Computer Visualization. Each project required an HTML writeup, so I figured it would be easiest to keep a collection of links here…

Project 1: First Steps with VTK

shapeimage_2To get acquainted with the Visualization Toolkit (VTK), we used bathymetry (sea depth) and topography information from NASA to visualize the earth in a few different ways. We also implemented a Sea Rise simulation that shows how land masses on Earth change as the sea level rises.

LINK to project 1

Project 2: Color Mapping

shapeimage_3This project focused on choosing the right color maps to visualize different types of data. The two types of data we looked at were MRI scans and a topographical map of the western U.S. With these data sets, we were tasked with creating appropriate color maps in both continuous and discrete styles.

LINK to project 2

Project 3: Isosurfaces

shapeimage_4Isosurfacing allows the medical industry to convert 2-dimensional slices, such as the CT slices used in this project, to 3-dimensional surface in space. This project explored different techniques of building isosurfaces and mapping colors to them.

LINK to project 3

Project 4: Direct Volume Rendering

shapeimage_5Although isosurfacing can generate a surface in 3D, the medical industry often uses raycast volume rendering instead because it better reflects the ambiguity and imprecision of the measurement. Rather than creating a geometry from data, volume rendering uses rays emitted from the object, adding opacity and color along the way. This project dealt with two data sets, the CT scan from the previous project, and vorticity surrounding a delta wing on an aircraft.

LINK to project 4

Project 4 Bonus: Multidimensional Transfer Function

shapeimage_6Using the programs created for the last project, I added a 2nd component to rendering using the gradient magnitude files generated from the same data set.

LINK to project 4 bonus

Project 5: Vector Field/Flow Visualization

p5_t2_h_sThis final project explored vector field visualization of velocity data surrounding a delta wing dataset. I visualize the vector field in different ways: plane slices showing the velocity data with arrow glyphs, streamlines, stream tubes, and a stream surface. Finally, I present the streamlines with the isosurface that makes up the magnitude of the vortices for reference.

LINK to project 5

Wind Turbine Analysis



For our final project for CS 59000: Embedded Systems, a partner and I implemented several tests on a small-scale wind turbine using the Texas Instruments MSP430 board. We use the Analog to Digital Converter (ADC) to gather information on voltage generated by the turbine and rotations per minute calculated with the help of an optical tachometer. We then send these values to a Java-based user interface to report in real-time on an attached computer.

For the final part of our project, we designed a wind turbine stand on springs that we can use, along with the MSP430, to measure accelerometer data from the wind turbine under stress. We also send the real-time data to the user interface on an attached computer.


Power Coefficient (Cp)

10ee302faa559afbeabbf9f6e403151a (Wiki link)

We measured the following characteristics of the wind turbine at LOW fan speed:

  • AT = 0.134614 m2
  • V3 = (2.101 m/sec)3 = 9.275
  • ρ = 1.2041 kg/m3 at 20°C (from Wikipedia)

The average voltage reported by our program at LOW fan speed was 2.304 volts. Resistance was set at 330 Ω.

Using these values, we found the power coefficient, Cp, to be:

Cp = 0.00929 or 0.01

Tip-Speed Ratio

(Wiki Link)

This part of the project required the use of the optical tachometer connected to the MSP430 board. The tachometer will output a high value when no blade blocks the beam, and a low value (close to zero) when a blade is in front. We read this information and convert the rate at which blades are passing in the beam to compute a rotations per minute (RPM) value.

The average RPM we measured at a given time was: 55 RPM

We measured the radius of a blade, and found R = 20.7 cm or 0.207 meters.

At LOW fan speed, the velocity of wind was recorded as V = 2.101 m/sec * 60 s= 126.06 m/min.

Using these values, we found the Tip-Speed Ratio to be:
λ = .567 rotations

Accelerometer Data


We constructed a special stand for the wind turbine that allows the turbine and MSP board to move in unison, while still being flexible to allow natural movement due to the wind.

For this part of the project, we modified the provided Java program to also display accelerometer data in the X- and Y-axes. We track and record this data in real-time, which gives some insight into how the wind turbine is moving as the speed and direction of wind changes.

Although we are not able to give a unit for these values, the magnitude of change can indicate what is happening in the physical system. For instance, when we see X values change from near-zero to negative, we know that stress is being placed in the wind turbine in the negative X direction (see diagram below — blue values represent negative readings).

Screen Shot 2013-01-24 at 12.12.48 AM