Seismic tomography: the easy way

When I was an undergrad, I had to take a year of geophysics, and on the first day, the professor explained that geophysics meant finding things underground without digging.  The rest of my lab group here at the UW are all marine geophysicists, and they routinely have to find things underground without digging, but with the added complication of having to get through a couple of kilometers of water, too.

You may remember my interview with Rob Weekly a few weeks back. This week’s interview is with my office-mate, Dax Soule. Dax studies marine geology and geophysics in the School of Oceanography at the University of Washington. Like Rob, he focuses on active source seismology. In fact, he’s looking at some of the same data as Rob, just different parts. And since we already went over a lot of the basic background in Rob’s post, I’m going to jump right into some fun tomography stuff. In a nutshell, tomography means building up a 3D picture of what’s underground by measuring how long it takes for seismic waves to travel through. In tomography, you’re not sampling the material directly, but you’re measuring how the seismic velocity varies. Seismic velocity is a measure of how quickly a seismic wave can travel through a certain type of rock, so if you know the velocity structure you can make inferences about the geological structure.

Imaging the earth’s crust

When you’re doing seismic tomography, it’s a bit like peeling back the layers of an onion: you have to figure out the shallow stuff before the deep. Rob’s work focused on obtaining a three-dimensional seismic velocity structure from the seafloor down to about 2.5-3 km depth. Dax is taking Rob’s results and extending downward to include the entire depth of the crust. He’s looking between the seafloor and the Mohorovicic discontinuity, or the “Moho”, which is the boundary between the earth’s crust and the mantle.

In seafloor maps of the region, you can see that there’s a bathymetric high – a plateau where the water depth is shallower than the surrounding seafloor. A seismic reflection study a few years back [1] showed that this plateau likely corresponds to a thickening of the oceanic crust at this location. Dax’s tomography work will help to clarify exactly what’s going on, and will give a more detailed picture of how the crustal thickness varies in the area.

Dax explained that measuring crustal thickness variations near a mid-ocean spreading center can tell you about how that crust was produced – was a episodic or constant? And where was the source of new crust – was it on the axis of the ridge, or off-axis?

How the experiment works

Here’s a little cartoon showing the basic geometry of the seismic experiment.SeismicRays_600px

A seismic source is generated near the sea surface, and the energy travels through the water column and into the sea floor. Once in the earth’s crust, the energy is converted into to types of waves: primary waves (p-waves) and secondary waves (s-waves). There are many different types of paths that these waves can take as they travel through the earth, and each type of path is known as a “phase”. In the above figure, the two phases that are shown are Pg and PmP. Rob used the Pg phase arrivals to image the upper portion of the crust. Dax looks at the PmP phases, which are the ones that bounce off the Moho.

Dax goes through the data and manually picks out the PmP phase arrival times. This part of the job is not the most exciting, but someone’s got to do it! Fortunately, all that work does pay off, and once Dax has his picks, he can start digging into the tomography part of his work.

Five easy steps
Here’s a handy-dandy summary of the steps that Dax goes through to build up a tomographic inversion.


So that’s what my office-mate does… good to know!  Dax is still working through the data and the very complex inversion code, so stay tuned for a future post on what he finds deep in the crust, and what the crustal thickness can tell us about seafloor production at the Endeavour Ridge.

[1] Carbotte, Suzanne M., Mladen R. Nedimović, Juan Pablo Canales, Graham M. Kent, Alistair J. Harding, and Milena Marjanović. “Variable crustal structure along the Juan de Fuca Ridge: Influence of on‐axis hot spots and absolute plate motions.” Geochemistry, Geophysics, Geosystems 9, no. 8 (2008).

Marine seismology with Robert Weekly

Introducing our very own Robert Weekly – that’s right, he’s the first science+comics interviewee from within our “quakes and whales” lab group!

Name: Robert Weekly
Job: Graduate student – Marine Geology & Geophysics, University of Washington School of Oceanography
Research: Marine geophysics, mid-ocean ridge processes

Fifty-some years ago, if you’d assumed that the seafloor was a vast and immovable backdrop to the rolling sea above, you wouldn’t have been alone. It wasn’t until the mid-1960s that scientists started seeing evidence that tectonic plates were shifting entire continents and ocean basins. Part of the reason that it wasn’t more obvious before was the incredibly slow rate of new crust formation: we’re talking a few centimeters per year, about the same speed that your fingernails grow.


Oceanic crust is constantly being created and destroyed at plate boundaries. Many of us who live near subduction zones are familiar with the effects of oceanic lithosphere plunging under continental or oceanic crust – and the resulting large volcanoes and devastating earthquakes that put many people at risk. The creation of new seafloor, on the other hand, happens along a vast mid-ocean ridge system, snaking its way around the globe, like stitches on a really messed up baseball (see figure above). At these mid-ocean ridges, hot material from deep within the earth’s mantle leaks towards the surface and pools into magma chambers just below the seafloor. This magma inevitably forces its way up through cracks in the seafloor, ever so slowly forcing entire slabs of lithosphere apart. This intruded magma eventually cools and hardens, becoming the newest addition to the ocean crust.


In a lot of ways, the seafloor is similar to a desert: barren, stark landscapes without much in the way of life-sustaining features. Mid-ocean ridges, on the other hand, are basically an oasis – an explosion of life driven by a heat source from below. But, although we are learning more all the time, no one really understands how the underlying magma “plumbing” helps drive the system.

That’s where Robert’s research comes in. In a nutshell, Robert is trying to figure out what’s going on underneath mid ocean ridges and how that contributes to the formation of new oceanic crust. He does that by looking at how seismic waves travel through the seafloor – you can think of it like a giant CT scan for the earth – except, WAY harder because you can only look at it from one side, and it’s HUMONGOUS. Imagine a CT scanner that needed to be a hundred kilometers long. Woah.

There are two ways that he can take a peek under the seafloor (you know, without going down and digging a massive hole): using active or passive seismic experiments. And he’s done a bit of both up at the Endeavour segment of the Juan de Fuca Ridge, which is a hydrothermally active chunk of mid ocean ridge that’s just a couple hundred kilometers off the coast of Vancouver Island.

Passive-source seismology
Rob spent a long time looking at one of the largest seismic datasets out there: three years worth of continuously recorded data on eight different seismometers on the seafloor. By listening for earthquakes, it was possible to put together a picture of what was happening, in fairly high resolution, near the center of the Endeavour segment. There is a magma chamber directly under the Endeavour, feeding the hydrothermal system and supplying magma to the ridge. What you’d expect is that the magma would spread outward from that central chamber. But instead, Robert saw an unexpected intrusion of magma coming down from another ridge segment to the north!


Active-source seismology
This research gave some fascinating results, but ultimately brought up even more questions. And to answer those, Robert needed to look at a larger area. For that, he used an active-source seismic dataset collected in September 2009 over the same region. Active-source seismology means that instead of listening for a source, you generate your own source. In this case, it meant a sound source on a ship.

Here’s a diagram to describe how it works:


First, an airgun is set off near the sea surface, which sends a sound wave through the water column and then down into the seafloor. The waves travel through the seafloor, taking different paths depending on the structure of the underlying crustal material. Robert can then use the signals recorded on each of the instruments to create an image of the subsurface.

All of this work brings us a little bit closer to understanding the complex geologic processes controlling the formation of oceanic crust and the accompanying biological and chemical processes that produce incredible mid-ocean ridge environments.


Look for Rob’s paper coming out in a special edition of G-Cubed in the next few months!

Q: How loud are fin whale calls?

A:  Really loud!

Now that I’ve finally descended from my little soapbox (see this post), I guess it’s time to take my own advice.  I was inspired to go for it yesterday when I came across this blog post by Jessica Carilli: Why Geochemistry is Awesome.

Just last week(ish) my very first paper was published.  (Huzzah!)  If you feel so inclined, you can check it out for yourself here.  However, even I’ll admit that it’s a bit technical for someone who really just wants to get a big picture overview.  Here goes nothing!

“Source levels of fin whale 20 Hz pulses measured in the Northeast Pacific Ocean”

If you follow my blog, you probably already know that I’m pretty into fin whales.  They’re amazing and huge and, unfortunately, endangered.  And if we want to monitor their recovery and to avoid further risks from things like ship noise, ship strikes, and fishing activity, we need to have an idea of where they are and how they move around. (photo by Lori Mazzuca) (photo by Lori Mazzuca)

Problem is, despite being the second largest animal in the entire world, they are tough to keep track of.  They spend a lot of time far from the coast and a lot of time under water.  There are a few different techniques people use to study fin whales (and other whales, for that matter).  These include  visual surveys (from a boat or plane or land), radio and satellite tagging, and (of course) acoustics.  Each of these methods has its pros and cons. Passive acoustic monitoring is good because you can deploy instruments that can monitor for long time periods (months and even years), and you don’t need to worry about conditions at a certain time of year, or whether the animals are visible at the surface.

Let’s imagine for a moment that you have a hydrophone (which is an underwater microphone, essentially) and you want to listen to some fin whales.


There you are, hydrophone off the side of the boat, and you get lucky – you record a fin whale call!  Woo hoo!  Just hearing it is great.  But something else that is extremely useful is to be able to say how far away that whale was when it made the call (R in the picture).  That’s where some basic acoustics comes in.  If you measure how loud the call is at the hydrophone, and you know how loud the call was when it was generated, and you know something about the acoustic properties of the water, you can figure out how far away it was.  You can think of it like this: if you’re in a big room, and you shut your eyes, and someone else in the room starts talking, you can tell roughly how far away they are just by how loud their voice sounds in your ears.

Here’s the math, dead simple, I promise:

ML = SL - TL     (EQ 1)

In that equation, ML is “measured level”, SL is “source level”, and TL is “transmission loss”.  If you re-arrange the equation solving for TL, you get:

TL = SL - ML        (EQ 2)

What’s the deal with transmission loss?  Well, it accounts for the acoustic energy that is lost between the source (the whale) and the receiver (the hydrophone).  And it’s dependent on the range – the further apart the source and receiver, the greater the transmission loss.  Here’s the equation for transmission loss:

TL = 20 \log_{10}(R).         (EQ 3)

What all this boils down to is that if you know the source level (SL) and measure the receive level (ML), you can calculate transmission loss (TL), which you can then use to calculate range.  Awesome!  Except for one thing… source levels of fin whale calls are not really well known.  There have been very few published papers reporting fin whale source levels (e.g. [1],[2],[3]).  These results are useful, but because of the difficulties inherent in estimating source levels, relatively few calls were used in the final estimates (at most, 83).


This is where a BIG FAT DATASET really comes in handy.  And that’s just what we have:  a three year ocean bottom seismometer (OBS) deployment off the coast of Vancouver Island.  That’s 8 seismometers, collecting data for three years, at 128 samples every second.  And we see TONS of fin whale calls, especially during the winter months.

Fin whales have a very distinctive call.  It’s very low frequency, very loud, and only lasts for about a second.  And typically, a fin whale will make this call about one time every 25 seconds (although it does vary by location).  A couple of things make this call particularly handy for me.  First of all, they are so low frequency that they get picked up on OBSs.  Second, they are very similar from one call to the next, making an automatic detection algorithm relatively straightforward.  That means I can write code to tell my computer what the call looks like, and it will run through the data and find instances where that call shows up.  With hundreds of thousands of calls on 8 instruments, searching for the calls manually would take a hundred graduate students like a hundred years.  Okay, that’s an exaggeration, but it would take a LONG time.

How do we use this data to get at source levels?  The thing that makes it possible is that, in the first year of this three year dataset, we actually know where the whale is at the time of the call.  This is because my office mate, Dax, did his masters work on tracking whales near the OBS network.  Since we know where each call was generated, and we know where the seismometers are, we can calculate the range between source and receiver.


If you look back up to Equation 3, you can see that if we know the range, R, we can calculate the transmission loss.  And with TL and ML, we can estimate source level!  See, that wasn’t so bad…

A Slight Complication

If you know a bit about acoustics or seismology, you might have seen this coming:  OBSs don’t measure acoustic pressure level (ML) directly.  They actually measure ground velocity.  The amplitude of the ground velocity is definitely related to ML, but it’s dependent on what the seafloor is made of at that location, and angle at which the incoming sound hits the seafloor.  I would say that this is the most technical and complicated part of my paper, and since it is not critical to understanding the results, and also because it would take a long time, I will leave this for a separate blog post at some future date.  (if you’re especially curious, I encourage you to check it out in the actual paper).

The moment you’ve all been waiting for…

Or, um, you know.  Maybe not…  Anyway – the results!  A total of 1241 calls on 32 whale tracks were used to estimate source levels.  The mean source level was estimated to be 189.9 +/-5.8 dB re 1uPa @ 1m (see below for an explanation of this notation).  This is within the range of previous estimates, although slightly in the loud side.  The most recently published results were in 2008, where fin whale call source levels were measured in the Southern Ocean [1].  They found a mean source level of 189 +/- 4 dB, based on a total of 83 calls.

As part of the analysis, we looked at the variation of source levels over the duration of a dive and also between tracks.  We were surprised that we didn’t see any obvious trend over a dive – we expected that maybe as the whales ran out of breath, their calls would get progressively quieter, but we didn’t see any evidence of that.

Where the slop comes from

Part of reporting scientific results includes keeping track of where the uncertainties in the results come from.  The biggest contributors in this analysis were:  1) uncertainties in the location of the whales at the time of the call and 2) interference between the direct path acoustic arrival, and the “echo” that bounced off the sea surface.  Other potential sources of error include: estimated seafloor properties used to convert ground velocity to acoustic pressure level, sound speed profile, differences in the coupling between the seismic instruments and the seafloor.

The end… for now

And there you have it – that’s the gist of my paper.  I would love to dig into more of the analysis of the amplitude variations along tracks, and between individuals.  Maybe an even bigger “big fat dataset” would allow me to tease out additional clues…


** In my explanation above, I reported results as 189 dB re 1uPa @ 1m.  If you don’t study acoustics, that will probably look pretty mysterious.  Here’s what it means:  dB is decibels, which is a measure of loudness.  Decibels are measured as a logarithmic ratio of pressures:

dB = 20log_{10}\left(\frac{P_{meas}}{P_{ref}}\right)

Pmeas is the pressure you’re measuring, and Pref is a reference pressure. The reference pressure in water is 1uPa (micro Pascal) at a distance of 1 meter from the sound source.


[1]  Širović, Ana, John A. Hildebrand, and Sean M. Wiggins. “Blue and fin whale call source levels and propagation range in the Southern Ocean.” The Journal of the Acoustical Society of America 122 (2007): 1208.

[2] Charif, Russell A., et al. “Estimated source levels of fin whale (Balaenoptera physalus) vocalizations: Adjustments for surface interference.” Marine Mammal Science 18.1 (2002): 81-98.

[3] Watkins, William A., et al. “The 20‐Hz signals of finback whales (Balaenoptera physalus).” The Journal of the Acoustical Society of America 82 (1987): 1901.

Fin whales: where are they?

When I first started learning about fin whales, I found it really hard to believe that we (humans, scientists, animal lovers, etc.) still don’t really know where they hung out.  What their migration patterns are. If they even migrate!  As you know, these animals are enormous.  The second largest in the world.  How can we not know everything there is to know about the second largest animal in the world??

Well, the answer is pretty straightforward, actually.  Firstly, they spend most of their time underwater.  Where we can’t see them.  Second, the move fast – did you know their nickname is the “greyhound of the sea”  – they swim at speeds in excess of 20 knots!  It just boils down to the fact that they are really tough to observe for long periods of time.

This is a problem for us – humans did, after all, basically cause the severe endangerment of most large whale species, including fin whales.  And now that commercial whaling has been banned, we want to be able to protect them from further harm arising from human activities.  Large baleen whales are still at risk from ship strikes, low frequency noise (from ships or active seismic experiments), and entanglement in fishing gear.  If we want to protect them, it’s important that we have an idea of where they are in the ocean at any given time.


Probably the most common method that scientist use to assess fin whale distributions is by using visual surveys.  This is a whole topic unto itself, a very interesting one, but I’m going to jump past it fairly quickly in this post.  Suffice to say that visual surveys are hampered by a couple of things:  they are restricted by weather conditions, you can only see whales at the surface, and in order to conduct a thorough survey, it can become very expensive.

Enter, acoustics! (as if you didn’t know that was coming)

Passive acoustic monitoring (PAM) is popular because you don’t have to bother the animals, you can record continuously for weeks or months, maybe even years.  You don’t need to worry about weather.  Some things you *do* need to worry about:  how often do they call? Which animals are calling? Is it only males producing calls as a breeding display?  Does calling activity increase near increased food sources?

Up until this point, I had been focusing on a little dataset up on the Endeavour segment of the Juan de Fuca ridge.  A teensy little dataset consisting of 8 instruments, each collecting 128 samples per second continuously for three years (that was sarcasm, it’s a ridiculously large dataset).  This little dataset (see a bit more here) has been great – I have used it to develop a couple of automatic detectors, and also to measure source levels.  But there’s a new dataset on the horizon – the Cascadia Experiment (dun dun!!).  This dataset consists of 70 OBSs, spanning the entire length and width of the Juan de Fuca plate, from Vancouver Island to Cape Mendocino, and out to the boundary with the Pacific plate.  As far as I know, it is the largest offshore seismic network ever deployed by the United States.  The image below shows a map of the coverage.

I’ll try to post some more blog posts discussing a few more details about how we plan on using this dataset to learn about what fin whales are doing – more specifically, what controls fin whale distributions in this area – is it food sources?  Is it water depth? Is it related to specific breeding or calving areas?  Hopefully we’ll be able to answer some of these questions!

Antelope and Python

Now that I’m (somewhat) on my way to getting ObsPy up and running, it sort of makes sense to figure out if I could realistically use it to do my work. You know, not just to play around and make pictures. Right now my data is pretty much all in a couple of Datascope databases, and I access it using Matlab. But a bit of Google searching led me to the Antelope Users Group on Github, where they have user-contributed software designed for Antelope and Datascope.  And from what I can tell, there’s a Python interface somewhere in there.

Here are the steps for getting the Antelope Users Group contributed code:

1.  Download and unzip the contributed code.  It will look something like this:


2. Create a directory for the Antelope contrib files, and copy them here:


3. Navigate to the directory with the Python stuff:

cd $ANTELOPE/src/contrib/data/python/datascope/

4. Compile:

make include
make install

I haven’t tried it yet, but hopefully will have a chance soon…

Kickball and Mathematica

Yes, I got to experience both kickball AND Mathematica in one spectacular day. As with many things, I am unskilled yet enthusiastic about both of these.

Also – if you don’t have access to Mathematica (okay, I don’t even have it right now, working on it though), you should check out – it’s really fun!  (no, seriously.  it is).

Adventures in ObsPy

I finally got around to trying out ObsPy… well, okay, I am still trying to figure out how to install it properly. Finally made some headway though. I followed the instructions on the ObsPy installation page.  I thought everything was going smoothly.  For starters, I had all of the dependencies – most importantly Python, SciPy, NumPy, and Matplotlib.  I also had the Easy_install package already from when I was installing Mercurial.

The installations all seemed to go just fine, I was getting messages telling me it was all good.  But then it just didn’t work.  I opened up iPython, tried to give it a whirl, and it just didn’t recognize those packages at all.  Turns out the default installation location was not actually in the Python path.  It sounds like it should be pretty easy to fix, but it took me a long time to figure it out.

So, normally, if you want to import from a Python library, you would use something like this:

from numpy import *

But when I tried importing obspy.core, like this:

from obspy.core import read

it couldn’t find the library. After much searching, I finally figured out how to add to my python path. First, say in iPython, import sys, and check the path:

import sys

This will list what’s in the path. So for me, it was:


To add to that path, I just used:


And it worked! Although I’m still not sure how to change it permanently. But until I figure that out, at least I can play with ObsPy.