Colin Braley of Oakton, Va., a junior computer science major in the College of Engineering, Robert Hagan of Richmond, Va., a senior, double majoring in computer science and mathematics in the College of Science, and Yong Cao, assistant professor of computer science, are working with researchers at the University of California, Santa Barbara to create a software program that will produce real-time visualizations of large amounts of seismic simulation data using volume ray casting.
This is part one of the program, which gives an idea of what the final image will look like. The program is used to interactively move around and rotate the 3-D earthquake simulation data and see what it looks like interactively.
To understand how earthquakes propagate and what areas will be most damaged by earthquakes, Chen Ji and Ralph Archuletta, researchers and professors in the Department of Earth Science at University of California, Santa Barbara, have used sophisticated sensors to detect movement in earth’s crust in several areas around California. They have then filled in the gaps in this data using simulations run on a super computer at the San Diego Supercomputing Center.
According to Earthquake Country Alliance, southern California has thousands of earthquakes every year, some are damaging, but most are barely felt. It is therefore critical to be prepared for repercussions of these earthquakes, especially possible damage to buildings, homes, and other structures.
“For earthquake scientists, they really need such tools to make their work much easier (and) efficient to be able to do the research,” said Cao, who came to Virginia Tech in 2007. “There will be a big workflow change for these scientists on how to estimate their model and reboot their model again and again. They don’t need to wait two days for these things. They should get them instantly.”
University of California, Santa Barbara has “software they’ve written that generates really large data sets that tells you how fast the earth’s moving at a certain point,” said Braley, who is also pursuing minors in mathematics and sociology. “They are having trouble trying to visualize those on regular computers and they can’t deal with all the amounts of data, so we’re working on a program for them to visualize the data using some new technology and techniques.”
This is a semi-transparent volume rendering of a small bit of data that is similar
to the earthquake data received from the University of California, Santa Barbara. However, according to Braley, this data is much smaller and mush less complex.
Braley, Hagan, and Cao are writing a C++ application, which is a collection of programming functions, objects, and declarations, to visualize iso-surfaces in seismic data using volume ray casting.
Using this technique, “we can view how the earth’s surface changes over time and visualize the surface so they can see if there’s going to be an earthquake and what risks are involved there,” Hagan said.
Volume ray casting is a technique for computing two-dimensional images from sampled three-dimensional data. The data on the grid, or voxels, and the viewpoint, or the eye, are points in 3-D space. For each pixel on the image, a ray is cast into the voxel data and sampling points along the ray are selected. The vector magnitude is sampled using trilinear interpolation, which estimates the value of a point in the data linearly. The voxel value for each ray is mapped and colored using a diffuse shading model.
This is a test of seeing how well the program will create an image of a spherical iso-surface. According to Braley, the image looks very much like a sphere, but there are still some jagged lumpy lines, and the sphere does not look 100 percent smooth. Once it looks smooth, he will know the code he wrote is working better.
According to Cao, in this case, each data point on the grid represents earthquake wave velocity and direction. The ray will go through “and find out what this earthquake wave data looks like and where it will intersect with this earthquake wave and tell where it is,” he said.
The software program will hopefully “be able to visualize the big grid and show, maybe in red, the areas that are the most damaged, and green, the areas that aren’t going to be damaged as much,” Braley said. “Eventually, it will create little movies that will show which areas will be most damaged at certain times.”
Braley and Hagan have the prototype that runs an algorithm on the computational processing unit (CPU), almost working completely. The next step is to improve the performance by porting the CPU code onto the graphics processing unit (GPU) through the CUDA, the compiler and developmental tools developed by the NVIDIA Corporation.
“With the GPU research that we’re doing, if we can get a new algorithm going, it will vastly speed up volume rendering and help people visualize this data a lot quicker,” Hagan said. “This will help a lot because it will help people see how the earth’s surface is changing and help predict earthquakes.”
The Department of Computer Science in the College of Engineering has an accredited undergraduate program and a graduate program that was one of Computerworld’s “Top 10 IT Schools to Watch” in 2008.
Research is conducted in 10 labs, two centers, and within four facilities in 11 subject areas. Areas include
There are also 10 research groups in the department, including
Assistant professor Yong Cao received his bachelor of science in computer science from the University of Science and Technology of China, his master of science in pattern recognition and intelligence system from the Institute of Automation, Chinese Academy of Sciences, and his Ph.D. in computer science from the University of California, Los Angeles.
He has written and contributed to 15 publications over his career. Some include
Cao conducts research in five subject areas:
Watch demo videos of his research projects.
Take a look back at previous Spotlight features in our archive.