JAMSTEC Report of Research and Development
Online ISSN : 2186-358X
Print ISSN : 1880-1153
ISSN-L : 1880-1153
CSMAP: Cross Section Selector and Tomogram Generator
Taewoon KimYoshio FukaoMasayuki Obayashi
Author information

2016 Volume 22 Pages 31-38


Seismic tomograms are the images of Earth's internal characteristics that help us understand geophysical phenomena. As a website at http://csmap.jamstec.go.jp, CSMAP provides an easy way to select and view Earth's seismic tomograms through a working web browser, acting as a graphical user interface to the underlying tomogram engine. The tomogram engine computes Earth's cross section tomograms with a depth range from Earth's surface to Core-Mantle Boundary (CMB) based on the seismic velocity perturbation model selected by the user from the three predefined models available in the website. Given a tomographic model and a cross section profile specified by two geocoordinates, CSMAP tells the engine to generate a tomogram. It sends the result back to the user in an HTML page, or as a PDF or Postscript file when the engine finishes computation.

Written mostly in Java, CSMAP is run by Apache Tomcat on a Linux server. It works with all major web browsers including Google Chrome, Firefox, and Microsoft Internet Explorer. The user interface was designed to be simple and intuitive, yet it provides necessary help texts in tooltips and introduction pages in more details. With its small footprint on the server, CSMAP is easy to install and maintain. Since its launch on a JAMSTEC's public server in June 2015, the site has been running constantly and reliably without any major problems.

In this report, we introduce CSMAP by presenting its background, system structure, and webpage layouts and usage. The usage statistics of the site for the initial 3 months are also presented.

1.  Introduction

For a given cross section profile, CSMAP generates a tomogram which is an image depicting Earth's internal structure from the surface to CMB in terms of seismic velocity variance. It relies on pre-computed seismic tomographic models, or Earth models, for the computation (Fig. 1).


CSMAP input and output. It accepts a cross section profile and an Earth model of user's choice as input parameters, and then computes a tomogram image as the output.

1.1  Tomogram

Seismic velocities increase in general with increasing depth. For example, P- and S-wave velocities at the top (Moho) of the mantle are about 8 and 4.5 km/s, whereas those at the core/mantle boundary (CMB) are about 14 and 7.5 km/s, respectively. Namely, as the depth increases from 30 to 2800 km, seismic velocities increase by about 70 % (Dziewonski and Anderson, 1981). On the other hand, seismic velocities on the same horizon change laterally by a few percent at most. This means that the Earth's mantle is essentially stratified vertically. The main reason for this feature is the liquid-like response of the mantle to the gravitational and centrifugal forces that have acted continually since the birth of the Earth. Any disturbances from this equilibrium figure cause flow to reduce resultant horizontal pressure gradients so that the mantle is always closely in a state of hydrostatic equilibrium. This in turn implies the possibility of inferring mantle flow (mantle convection) from the lateral heterogeneity of seismic velocities. Mantle convection, including plate motions in its shallowest part, is the major driving force of various tectonic processes including earthquakes and volcanic eruptions. Thus, comparison of laterally heterogeneous patterns of seismic velocities with any objects of geologic, geochemical and geophysical phenomena in the mantle may help us understand geodynamic significances of these phenomena. This is the reason why seismic tomography (e.g. Nolet, 2008) has attained so wide applications in so different fields.

For non-specialists in seismic tomography, however, it is not always easy to handle tomographic models as they wish. They might have some particular objects in the mantle to view from many different angles and, after many such trials, they might wish to use the best selected tomograms for presentations and/or publications. Teachers or lecturers might wish to show the deep structure and its relationship to the deep seismicity right beneath their classrooms or under the epicenters of the past great earthquakes. They might also wish to use data-based models rather than cartoon-like models to explain plate subduction versus mantle upwelling, lithosphere versus asthenosphere, and the shallowest versus deepest structures of the mantle. Students or audience might wish to slice the model mantle using their own PCs according to their own preferences or following suggestions by the teachers or lecturers. The software we developed is intended to meet these scientific and educational needs. Users need not implement the relevant program into their own PCs. What they need is only the internet-available environment. Once a user visit our website and specifies two endpoints of an arbitrary profile on the World map by Google Maps, they will be given the vertical cross-section of a tomographic model down to the CMB along the specified profile. We prepare at the time of writing three tomographic models as detailed in the next section, although other models can be equally implemented.

1.2  Earth Models

Users can choose either of the following three global tomographic models, the P wave velocity model GAP-P4 (Obayashi et al., 2013; Fukao and Obayashi, 2013) and the S wave velocity models S362ANI of Kustowski et al. (2008) and S40RTS of Ritsema et al. (2011). GAP-P4 describes P-wave velocity perturbations from the reference model obtained as a laterally averaged P-wave velocity distribution as given in Table 1. S362ANI documents S wave velocity perturbations from a laterally homogeneous model, STW105, which is a revised version of PREM (Dziewonski and Anderson, 1981) and its characteristics are shown in Figure 4 of Kustowski et al. (2008). The S362ANI and STW105 models are transversely isotropic in the upper 410 km depths, where SH and SV velocities are mutually different. We use the Voigt average of the SH and SV anomalies. S40RTS is a model of isotropic S wave velocity perturbations from PREM. In the display on our website, the mantle slices of P and S velocity perturbations are shown in full scales of 1.5 and 2.5 %, respectively. This scale ratio appears to be appropriate for comparative studies of P and S wave velocity models (e.g. Fukao and Obayashi, 2015). The ratio of 2.5 % to 1.5 % is close to a value of 1.7 obtained as the R-value at the top of the lower mantle (e.g. Bolton and Masters, 2001).

Table 1.

Reference model of GAP-P4

1.3  Development History

CSMAP started in July 2014 as a simple graphical geocoordinate picker for a command-line program written in Fortran that generates tomograms after reading a text configuration file. As the development continues, it encompassed more functions that users no longer need to interact with the Fortran program directly and became a complete wrapper to the tomogram engine, the Fortran program. In an effort to make it easier to access, CSMAP was moved to a web server and opened to the public in June 2015.

2.  Site Overview

2.1  Main Page

The main page is the first page users see at the site. Most user interaction takes place in this page which contains all the necessary interfaces for specifying cross section profiles and downloading tomograms. All elements are configured to resize themselves to the web browser window's width of the user's choice (Fig. 2).


Main page accessible at http://csmap.jamstec.go.jp

2.1.1  Title

The page title at the top that reads csmap: cross section selector and tomogram generator that explains the two major functions of the site: (1) cross section selector and (2) tomogram generator. CSMAP stands for cross section map.

2.1.2  Introduction Page Links

The links to the introduction pages are placed right below the title intending to draw user attention.

2.1.3  Cross Section Profile Selector

The cross section profile selector consists of a search box, map, and the two rows of input boxes decorated with the red and blue icons that are identical to the ones on the map connected by a black line. These red and blue markers, or placemarks, indicate the two end points of a cross section profile. A user can move the placemarks to specify a cross section on the map. The mouse cursor's geocoordinate gets updated constantly above the top-right corner of the map if the cursor is in the map area.

There are four different ways available for moving the placemarks. Naturally, drag-and-drop and double-click work. Note that double-clicking on the map moves the selected placemark, where a placemark is selected by checking the radio button next to it in one of the two input box rows below the map. Entering geocoordinates in decimal form to one of the input box rows and clicking the update red/blue marker button will also move the placemark. Lastly, if you enter a well-known place name to the search box above the map's top-left corner then click the search button, the selected placemark will move to the specified place.

The map is implemented using Google Maps. The Javascript and HTML codes for manipulating Google Maps are based on Dancsi's post in his blog. (Dansci, 2013)

2.1.4  Download Tomogram Button

This is the most important button in this site. It initiates the tomogram computation on the server and returns the result to the user's computer. The time it takes to complete these actions vary depending on the size and the location of the selected cross section.

2.1.5  Earth Model Option

The resulting tomogram may look different for the same cross section profile depending on the tomographic Earth model used in the computation. There are three Earth models available for users to choose (see 1.2 Earth Models).

(1) GAP-P4

P-velocity model by Obayashi, Fukao and others.

(2) S362ANI

S-velocity model by Dziewonski and others.

(3) S40RTS

S-velocity model by Ritsema and others.

2.1.6  Download Format Option

The resulting tomogram will be sent to user's web browser in the format of user's choice.

(1) HTML

This will show the result in a new browser tab. This is explained in detail in 2.2 Result Page.

There is an additional option, HTML Map Zoom Level that appears when the HTML download option is selected, with two choices: auto and manual. See 2.2.3 Cross Section Profile Map for details.

(2) PDF/ PS

Downloads the result in a Portable Document Format or Postscript file. The tomogram image in the PDF/PS naturally has a higher resolution than the one in HTML result page.

The cross section profile map in the PDF/PS is drawn by the tomogram engine's own map generation code, so the profile map in PDF/PS looks quite different than the HTML's. The code works well in most cases; however, it has an unidentified bug that results in an incomplete profile map with its profile line missing for some combinations of the two cross section endpoints. We recommend users to use HTML download format that has more stable profile maps drawn by Google Maps if a tomogram image of higher resolution is not a priority.

2.2  Result Page

This page shows after clicking the download tomogram button, with the HTML option checked (Fig. 3).


Result page opens in a new browser tab after user clicks the download tomogram button in the main page. It consists of the tomogram and cross section profile map images, and the helper text that explains the symbols and markings used in these images.

The tomogram image is a PNG of 956x580 pixels. The cross section profile map is drawn below the tomogram by Google Static Maps API. The tomogram image is sent to the user's web browser from CSMAP, but the profile map is from Google directly to the user. Under the cross section profile map, a section of reference text is placed that explains the markings on the two images above it.

PDF/PS option will download a file that contains the tomogram and a profile map. The profile map in this case is generated by the tomogram engine, while the one in HTML result is by Google Static Maps.

2.2.1  Title

The title of the result page reads: csmap: tomogram and cross section profile at the top which explains the contents of this page.

2.2.2  Tomogram

The red and blue placemarks placed above the tomogram indicate the orientation of the tomogram with respect to the cross section profile that is marked by the same placemarks on the profile map.

The tomogram is colored according to the velocity perturbation ranging ±1.5 or ±2.5% depending on the Earth Model used. This range is specified in the legend below the tomogram. The two depth lines indicate the top (410 km) and bottom (660 km) of the mantle transition zone. White dots that indicate earthquake hypocenters within a band 50 km wide on both sides of the section plane are also shown based on the EHB Bulletin published by ISC (http://www.isc.ac.uk/ehbbulletin) (Engdahl et al., 1998).

2.2.3  Cross Section Profile Map

Cross section profile map resembles the cross section profile selector in the main page but in a printable image format obtained from Google Static Maps. It gets downloaded directly from Google to user's web browser, not from the CSMAP server. Though Google imposes some restrictions to the number of Google Static Maps image requests that can be made in a given period of time, it should not be of any problem with the intended use of the site. As of September 2015, Google allows up to 25,000 Static Maps image requests a day for a free API Key subscriber (Google Static Maps API Usage Limits).

The zoom level of the cross section profile map is controlled by the HTML Map Zoom Level option found in the main page. When auto is chosen, which is by default, Google Maps decides the zoom level trying to best fit the two placemarks and the cross section profile into the map. In some extreme cases where the profile line gets too close to either North or South Pole, the line can be clipped out of the map. If this happens, user can try the manual option, with which the same zoom level of the cross section profile selector in the main page is used in the cross section profile map, implying that the zoom level of the profile map can be controlled by manipulating the profile selector's zoom level.

2.2.4  Image Legend

At the bottom of the result page, a section of text explains the markings found in the tomogram and the cross section profile map in the result page. It includes the geocoordinates of the two placemarks on the cross section profile map, how the depth boundaries and earthquake hypocenters are marked in the tomogram image, and the name of the Earth model used when generating the tomogram.

2.3  Introduction Pages

There are two versions, in English and in Japanese, of the introduction pages as they are linked in the main page. The two pages are identical in terms of the contents. It explains the usage of the site and how to read the tomogram. Users can also find the references to include in these pages if they wish to use the results from CSMAP in their official works.

2.4  User Workflow

When a user visits CSMAP, the main page opens. The user specifies a cross section profile using the on-screen cross section profile selector. If necessary, different Earth model and download format can be chosen. The user then clicks the download tomogram button to start computation and download the result upon its completion. With the HTML download format, the result page will open in a new browser tab, allowing users to go back to the main page tab and produce other result pages in separate tabs. This makes it possible to compare the tomograms from the three different Earth models on the same cross section profile by opening them in their own tabs and switching between those tabs.

Although the main page is designed to be intuitive and easy to use, users are encouraged to read the introduction page by following the link provided. It contains all the necessary information for using the site, while trying to be concise.

User sessions on the server will expire after 30 minutes of inactivity. When this happens, restart the session by reloading the page. A user session is related to a temporary work folder on the server, and in rare cases, this folder can be abruptly removed from the server resulting in an error message displayed in the user's web browser. To correct the error in this case, empty the browser cache, restart the browser, and then reopen CSMAP.

3.  System Components

3.1  Web Server

CSMAP's web pages are implemented as a web application hosted by Apache Tomcat running on a Linux server. The code was written in Java, consisting of five classes including the two major Java Servlet classes. These classes, together with several other JSP pages, are run by Tomcat to present users a dynamic website.

As the user interface to the tomogram engine, CSMAP accepts user inputs such as cross section profile, Earth model, and download format, run the tomogram engine, and then returns the results to the users. It also builds a Google Static Maps URL and inserts it to the result page, allowing user's web browser to retrieve the profile map from Google.

3.2  Tomogram Engine

Tomogram engine consists of two parts: a native binary executable that generates the actual tomogram images, and a wrapper shell script that enhances the usability of the binary.

3.2.1  The Binary Executable

The program to generate a PS file of a cross-section is written in Fortran. It reads seismic tomography data in ASCII format and the given two endpoints of a cross-section profile. The minor arc of the great circle connecting the endpoints is chosen as the cross-section profile. Then velocity perturbations for arbitrary points on the cross-section are obtained by interpolation from tomography data to select appropriate colors from the color map. The color scale ranges is fixed to ±1.5% and ±2.5% for P-wave and S-wave models, respectively. Data of a tomography model consists of (1) number of grids in latitude, longitude and depth, (2) depths of vertical grid points and (3) an array of seismic velocity perturbation values (percent). The velocity perturbations are assigned to uniformly divided grid points laterally. The depths of vertical grid points are specified to allow irregular spacing in depth. Earthquake hypocenters within a band 50 km wide on both sides of the section plane are extracted from the EHB (Engdahl-Hilst-Buland) Bulletins published from the International Seismological Centre (Engdahl et al., 1998) to plot hypocentral distribution.

3.2.2  Wrapper Shell Script

A shell scripts that acts as a wrapper for the binary executable was written in bash to process the input/output to/from the binary executable. It preprocesses and verifies user input values from the web server, and hands over the binary's outputs to the web server. It is also responsible for other miscellaneous tasks including error handling and setting up environment variables and creating input configuration files for the binary.

3.3  Google Maps

Google Maps is an important component of CSMAP, however, the web server does not interact directly with Google Maps. It sends Javascript code written in Google Maps API to the user's web browser, and this code makes the web browser talk to Google Maps over the Internet when the user interacts with the cross section profile selector in the main page.

For the HTML result page, the web server only embeds a Google Static Maps URL in the page so that the user's web browser can fetch the profile map image from Google (Fig. 4).


CSMAP-user-Google Maps interactions. CSMAP talks to user's web browser only, while the user's web browser interacts with Google Maps as well as CSMAP, to operate the cross section profile selector in the main page and to display the cross section profile map in the result page.

4.  Usage Statistics

Statistics are obtained via Google Analytics from June 10 to September 11, 2015. During this period, 2,419 users visited CSMAP, resulting 6,069 page views in 2,953 sessions. About 17.5% of users were returning visitors. The page view per session was 2.06, which is just above the number of the two major pages, the main and the result pages. The average session duration was 129 seconds. In the geographical session distribution list, Japan is at the top with nearly half the total sessions (48.0%), and then United States (17.5%), unknown (14.1%), China (3.4%), South Korea (1.5%), United Kingdom (1.5%), Germany (1.2%), Brazil (1.1%), France (1.0%), and Russia (1.0%) follow (Fig. 5).


Number of user sessions by countries, measured from June 10 to September 11, 2015. Japan has the highest number, 1,417, during this period.

5.  Closing Remarks

CSMAP provides a way to quickly browse tomograms from various Earth models requiring only a web browser. The site is compact and has small footprint thus making the installation and maintenance of the server easier.

Concerning the site's performance, one inherent limit should be noted that it internally uses a separate tomogram engine, an aging Fortran program, because the CSMAP project itself began as a simple graphical interface to utilize the Fortran program. We are planning to completely rewrite the engine in Java that is the native programming language of the system when the resources required for the task becomes available.

We distributed the site URL to selected groups of users with interests in tomograms including high school teachers and JMA observatory staffs, and received generally positive responses. It has been running solidly since the site started on a public server. We hope that more users would find the site useful as we improve and advertise the site.


We thank A.M. Dziewonski and J.A. Ritesema for allowing us to use their models, S362ANI and S40RTS respectively, in our openly accessible website.

© Japan Agency for Marine-Earth Science and Technology