pyrocko.dataset.crust2x2

Interface to use CRUST2.0 model by Laske, Masters and Reif.

All functions defined in this module return SI units (m, m/s, kg/m^3).

Citation

If you use this model, please refer to the REM web site or cite:

Bassin, C., Laske, G. and Masters, G., The Current Limits of Resolution for Surface Wave Tomography in North America, EOS Trans AGU, 81, F897, 2000. A description of CRUST 5.1 can be found in: Mooney, Laske and Masters, Crust 5.1: a global crustal model at 5x5 degrees, JGR, 103, 727-747, 1998.

Usage

>>> from pyrocko import crust2x2
>>> p = crust2x2.get_profile(10., 20.)
>>> print p
type, name:              G2, Archean 0.5 km seds.
elevation:                           529
crustal thickness:                 38500
average vp, vs, rho:              6460.7          3665.1          2867.5
mantle ave. vp, vs, rho:            8200            4700            3400

          0            3810            1940             920   ice
          0            1500               0            1020   water
        500            2500            1200            2100   soft sed.
          0            4000            2100            2400   hard sed.
      12500            6200            3600            2800   upper crust
      13000            6400            3600            2850   middle crust
      13000            6800            3800            2950   lower crust
>>> print p.get_weeded()
[[     0.    500.    500.  13000.  13000.  26000.  26000.  39000.  39000.]
 [  2500.   2500.   6200.   6200.   6400.   6400.   6800.   6800.   8200.]
 [  1200.   1200.   3600.   3600.   3600.   3600.   3800.   3800.   4700.]
 [  2100.   2100.   2800.   2800.   2850.   2850.   2950.   2950.   3400.]]

Constants

Layer id

Layer name

LICE

ice

LWATER

water

LSOFTSED

soft sediments

LHARDSED

hard sediments

LUPPERCRUST

upper crust

LMIDDLECRUST

middle crust

LLOWERCRUST

lower crust

LBELOWCRUST

below crust

Functions

get_profile(*args, **kwargs)

Get Crust2x2 profile for given location or profile key.

get_profile_keys()

Get list of all profile keys.

plot_crustal_thickness([crust2, filename])

Create a quick and dirty plot of the crustal thicknesses defined in CRUST2.0.

plot_vp_belowcrust([crust2, filename])

Create a quick and dirty plot of vp below the crust, as defined in CRUST2.0.

Classes

Crust2([directory])

Access CRUST2.0 model.

Crust2Profile(ident, name, vp, vs, rho, ...)

Representation of a CRUST2.0 key profile.

class Crust2Profile(ident, name, vp, vs, rho, thickness, elevation)[source]

Bases: object

Representation of a CRUST2.0 key profile.

get_weeded(include_waterlayer=False)[source]

Get layers used in the profile.

Parameters:

include_waterlayer – include water layer if True. Default is False

Returns:

NumPy array with rows depth, vp, vs, density

get_layer(ilayer)[source]

Get parameters for a layer.

Parameters:

ilayer – id of layer

Returns:

thickness, vp, vs, density

crustal_thickness()[source]

Get total crustal thickness.

Takes into account ice layer. Does not take into account water layer.

averages()[source]

Get crustal averages for vp, vs, density and total crustal thickness.

Takes into account ice layer. Does not take into account water layer.

class Crust2(directory=None)[source]

Bases: object

Access CRUST2.0 model.

param directory:

Directory with the data files which contain the CRUST2.0 model data. If this is set to None, builtin CRUST2.0 files are used.

get_profile(*args, **kwargs)[source]

Get crustal profile at a specific location or raw profile for given key.

Get profile for location (lat, lon), or raw profile for given string key.

Return type:

instance of Crust2Profile

static instance()[source]

Get the global default Crust2 instance.

get_profile_keys()[source]

Get list of all profile keys.

get_profile(*args, **kwargs)[source]

Get Crust2x2 profile for given location or profile key.

Get profile for (lat,lon) or raw profile for given string key.

plot_crustal_thickness(crust2=None, filename='crustal_thickness.pdf')[source]

Create a quick and dirty plot of the crustal thicknesses defined in CRUST2.0.

plot_vp_belowcrust(crust2=None, filename='vp_below_crust.pdf')[source]

Create a quick and dirty plot of vp below the crust, as defined in CRUST2.0.