Data Services Products: syngineM On demand custom 3D AxiSEM synthetic seismograms


The Synthetics Engine (Syngine) service provides access to custom tailored synthetic seismograms for selected Earth and Mars models.


The IRIS Synthetics Engine (Syngine) is a webservice that quickly returns synthetic seismograms custom requested by the user. Syngine utilizes locally stored precalculated TB scale databases of Green’s Functions for several different 1D reference Earth models and selected Mars models from the ETH Zurich’s precomputed Green’s functions databases. The DMC Green’s Functions were generated by Tarje Nissen-Meyer & colleagues using AxiSEM (Nissen-Meyer et al., 2014), an axi-symmetric spectral element method for 3D (an-)elastic, anisotropic and acoustic wave propagation in spherical domains. It requires axisymmetric background models and runs within a 2D computational domain, thereby reaching all desired highest observable frequencies (up to 2Hz) in global seismology. The requested synthetic seismograms are calculated using Instaseis (van Driel et al., 2015), a python library built for storing wavefield databases with a fast extraction algorithm. By using Instaseis and obspy, Syngine provides users with fully customizable synthetic seismograms for any source-receiver combination with a variety of source options including point source or user supplied moment tensors (or GCMT, Earth models), support for finite-fault models (Earth models), variable width and custom source-time functions.

How do download synthetics

Building an http request, sample queries & documentation

Command line downloading with FetchSyn

Current Syngine Earth models stored at IRIS DMC

Model name resolution (s) database dt (s) default dt (s) length (s) source depths (m) components description database size 1D model
ak135f_1s 1-100 0.255 0.05 1815 0-750000 vertical AK135 with density & Q of Montagner & Kennet(1996) 1.4 TB link
ak135f_2s 2-100 0.525 0.1 3600 0-750000 vertical and horizontal AK135 with density & Q of Montagner & Kennet(1996) 1.3 TB link
ak135f_5s    (default) 5-100 1.278 0.25 3904 0-750000 vertical and horizontal AK135 with density & Q of Montagner & Kennet(1996) 121 GB link
iasp91_2s 2-100 0.483 0.1 3699 0-700000 vertical and horizontal IASP91 2.0 TB link
prem_i_2s 2-100 0.512 0.1 3610 0-750000 vertical and horizontal isotropic PREM 1.3 TB link
prem_a_2s 2-100 0.512 0.1 3610 0-750000 vertical and horizontal anisotropic PREM 1.4 TB link
prem_a_5s 5-100 1.295 0.25 3904 0-750000 vertical and horizontal anisotropic PREM 123 GB link
prem_a_10s 10-100 2.44 0.5 17999 0-700000 vertical and horizontal anisotropic PREM 86 GB link
prem_a_20s 20-100 4.869 1.0 1796 0-671000 vertical and horizontal anisotropic PREM 0.9 GB link

InSight Mars models from ETH Zurich database

The InSight mission presents 2 Syngine databases for Mars and based on the 3 Science papers on crust, mantle and core. The models are based on two different inversion methods taking into account constraints from mineralogy and thermodynamics. The inversion data are:

  1. body wave picks (P, S, PP, SS, PPP, SSS, ScS)
  2. Mean density of the planet and moment of inertia
  3. 2nd order tidal Love number k2
  4. Receiver function-derived crustal layering

The first model, InSight_KKS21GP, is based on a “geophysical” inversion allowing for 6 different bulk compositions, using an adiabatic temperature profile below the lithosphere (Khan et al. 2021). The second model, InSight_KKS21GD, is based on a “geodynamic” inversion that simulates 4 billion years of thermal convection, but is restricted to a single compositional model (described in SM8 in Stähler et al., 2021a). Both models show the same misfit against data, but are just two models out of 200 results of a MCMC (Mars Climate Modeling Center) run (for full dataset information see Stähler et al., 2021b). Since these inversions did not use receiver functions to constrain the crustal profile, a crust similar to that of Knapmeyer-Endrun et al., 2021) was added manually.

The attenuation structure has been fixed to:

  • Qmu=100 in the upper crustal layer 0-10 km (to suppress reverberations above the strong inner crustal boundary)
  • Qmu=300 between 10 km and 180 km
  • Qmu=600 in the mantle below 180 km
  • Qkappa=1e5
    at reference period of 1 second

Note that the synthetic data shows a relatively clear surface wave train up to the highest frequencies, which in reality would be suppressed by scattering.

Syngine model name ETH database name Model name resolution (s) database dt (s) default dt (s) length (s) components Model info
mars_insightkks21gd_2s InSight_KKS21_GD InSight_KKS21GD 1-100 0.472 0.1 3600 vertical and horizontal info
mars_insightkks21gp_2s InSight_KKS21_GP InSight_KKS21GP 1-100 0.496 0.1 3600 vertical and horizontal info

Selected Mars models from ETH Zurich database ( )

Syngine model name ETH database name Model name resolution (s) database dt (s) default dt (s) length (s) components Model info
mars_eh45tcold_1s EH45Tcold_1s EH45Tcold 2-100 0.25 0.05 1800 vertical and horizontal info
mars_eh45tcold_5s EH45Tcold_5s EH45Tcold 5-100 1.24 0.25 18000 vertical and horizontal info
mars_maak_1s MAAK_1s MAAK 1-100 0.245 0.05 1800 vertical and horizontal info
mars_maak_5s MAAK_5s MAAK 5-100 1.25 0.25 18000 vertical and horizontal info
mars_tayak_1s TAYAK_1s TAYAK 1-100 0.242 0.05 1800 vertical and horizontal info
mars_tayak_5s TAYAK_5s TAYAK 5-100 1.183 0.25 18000 vertical and horizontal info

Syngine AxiSEM synthetics are complete:

  • radiation pattern
  • attenuation
  • discontinuities appropriately honored

Syngine is flexible:

  • Supports both Earth and Mars models.
  • Any source-receiver combination for any source depth down to 700 km.
  • Accepted source types: moment tensor, double couple, forces
  • Vertical, North, East, Radial or Transverse components (or any combination)
  • displacement, velocity, or acceleration. (default is displacement in meters)
  • Fully loaded headers so users can mimic data, e.g. origin time & trace start time
  • zip archive of SAC files or miniseed output formats

Syngine is smart:

  • Given network and station name(s), syngine will use IRIS fedcatalog webservices to look up receiver location(s) across FDSN data centers.
  • Syngine can accept event IDs (e.g. from GCMT) for origin and moment tensor parameters for the Earth models and event IDS from the mars-event web service for the Mars models.
  • Syngine can window traces based on travel times for any phase.

Syngine is fast:

Since the databases for models are precomputed (for the Earth models, they a running “hot” on IRIS servers, explanation), only Green’s Function extraction, parameter look-ups and basic processing (e.g. resampling, source convolutions) are done. Requests can be fulfilled as fast as fractions of a second, though connection bandwidth, load from other user requests, and complexity of request can add significant time.

Building a request

Request details/parameters and a URL builder are available.
Example requests:

Example output: syngine-ak135f_5s-2002-11-03t22_13_28-myexample
Example SAC file:
note: location code = SE (Synthetics Engine)

Example output:
Example SAC file: MyExample_XB.ELYHK.SE.MXZ.sac
note: location code = SE (Synthetics Engine)

Choosing a new sampling rate (dt):

In order to avoid aliasing, downsampling from the database dt is not allowed by Instaseis, only upsampling. If a model has a database dt=0.5, dt=0.1 is allowed, dt=1.0 is not allowed. Detailed examples on resampling

Default source:

By default Instaseis returns the response to a very narrow Gaussian source time function with a full-width at half-max of approximately two-thirds the shortest period resolved, which is as close to a delta function as possible with AxiSEM.

Geodetic/Geocentric Latitudes:

AxiSEM and Instaseis, which drive Syngine, use geocentric latitudes. For the Earth models, station and earthquake coordinates use geodetic/geographic latitudes. It is common practice in seismology to convert from geodetic/geographic to geocentric latitudes in order to calculate distance using spherical geometry. Syngine does this conversion for the Earth models but maintains the geocentric latitudes for the Mars models.

Headers convention for SAC output

When output is chosen as saczip, the SAC files will have header values populated. Header fields of note for Syngine SAC files are:

SAC header name example description
AZ 106.196 azimuth based on geodetic coordinates for Earth and geocentric coordinates for Mars
BAZ 301.729 back azimuth based on geodetic coordinates for Earth and geocentric coordinates for Mars
DIST 9.269906e+03 Distance in km on a sphere
EVLA 28.08 Source latitude (geodetic for the Earth models and geocentric for the Mars models)
GCARC 8.327261e+01 Distance in degrees
KCMPNM BXE Convention for channel name is: sample rate – “X” for synthetics – component
KT6 Earth The model planet (Earth/Mars)
KUSER0 Syngine Who generated the synthetic trace
KUSER1 prem The name of the reference model
KUSER2 2s Model resolution limit (see the above tables)
OMARKER -621.5 Offset time (seconds) of the origin relative to the begin time (KZTIME)
STLA 4.50238 Receiver latitude (geodetic for the Earth models and geocentric for the Mars models)
USER0 1e-9 The SCALE parameter for amplitude scaling. Syngine default units are meters.


Using ObsPy to download and compare Syngine & data waveforms

Using FetchData and SAC to compare Syngine synthetics & data:
A small amount of post-processing is required if users wish to directly compare data and synthetics for a given earthquake. Synthetic seismograms from Syngine are calculated as displacement for a point-like source. Comparing to data requires correcting for instrument gain, a finite width source (not performed here), and sometimes filtering. The following example uses the 2010-05-24 Western Brazil 582km deep M6.5 event. FetchData is available here.

# Get data:
FetchData -N IU -S ANMO -C BHZ -L 00 -s 2010,05,24,16,18,28 -e 2010,05,24,17,18,28 -o data.mseed
mseed2sac data.mseed
mv IU.ANMO.00.BHZ.M.2010,144,16:18:28.SAC ANMO.M6.5.dataraw.sac
# Get RESP file:
FetchData -N IU -S ANMO -C BHZ -L 00 -s 2010,05,24,16,18,28 -e 2010,05,24,17,18,28 -rd .
# Get synthetic using the GCMT id:
wget -O ""
mv Tutorial_IU.ANMO.SE.BXZ.sac ANMO.M6.5.syn.sac
#--------- remove response of data trace to displacement -----
r ANMO.M6.5.dataraw.sac
w over
taper width 0.05
transfer from evalresp to none FREQLIMITS 0.005 0.01 4 8
w ANMO.M6.5.dataRESP.sac
#--------- plot the traces -----
r ANMO.M6.5.dataraw.sac ANMO.M6.5.dataRESP.sac ANMO.M6.5.syn.sac
bp co 0.1 1.0
qdp off
xlim 480 550

Comparison of traces from tutorial.

Downloading model databases:

Users can download the databases for entire models as .netcdf4 files. Within the model directories are PZ and PX folders for the vertical and horizontal databases, respectively, which have the ordered_output.nc4 files needed to run Instaseis locally.

# Create the appropriate directory structure for Instaseis
mkdir PX PZ PX/Data PZ/Data
# Download the databases
wget -O PZ/Data/ordered_output.nc4 ""
wget -O PX/Data/ordered_output.nc4 ""
# Get started using Instaseis with your database locally!
>>> import instaseis
>>> db = instaseis.open_db("/path/to/MYMODEL")
>>> print(db)
InstaseisDB reciprocal Green's function Database (v7) generated with these parameters:
	components           : vertical and horizontal
	velocity model       : prem_ani
	attenuation          : True
	dominant period      : 20.000 s
	dump type            : displ_only
	excitation type      : dipole
	time step            : 4.869 s
	sampling rate        : 0.205 Hz
	number of samples    : 370
	seismogram length    : 1796.8 s
	source time function : errorf
	source shift         : 34.085 s
	spatial order        : 4
	min/max radius       : 5700.0 - 6371.0 km
	Planet radius        : 6371.0 km
	min/max distance     : 0.0 - 180.0 deg
	time stepping scheme : newmark2
	compiler/user        : gfortran 4.9.1 by lion on
	directory/url        : MYMODEL
	size of netCDF files : 598.2 MB
	generated by AxiSEM version 60945ec at 2014-10-23T15:35:34.000000Z 

Update history:

  • Mars models 2021.03.01: Mars models added
  • ak135f_1s: from 2016.01.07 – 2016.02.08: rather than vertical seismograms, the zz-component of the strain tensor was given. (being recalculated as of 2016.02.08)
  • prem_a_5s: from 2015.12.10 – 2016.05.16: reference model used was ak135, not prem. (being recalculated as of 2016.05.16)

Citations and DOIs

To cite the IRIS DMC Data Products effort:

  • Hutko, A. R., M. Bahavar, C. Trabant, R. T. Weekly, M. Van Fossen, T. Ahern (2017), Data Products at the IRIS‐DMC: Growth and Usage, Seismological Research Letters, 88, no. 3,

To cite the source of this product:

  • Krischer, L., Hutko, A., van Driel, M., Stähler, S., Bahavar, M., Trabant, C., and Nissen‐Meyer, T. (2017). On‐demand custom broadband synthetic seismograms, Seismol. Res. Lett. 88, no. 4,
  • Nissen-Meyer, T., van Driel, M., Stähler, S. C., Hosseini, K., Hempel, S., Auer, L., Colombi, A., and Fournier, A.: AxiSEM: broadband 3-D seismic wavefields in axisymmetric media, Solid Earth, 5, 425-445,, 2014.
  • van Driel, M., Krischer, L., Stähler, S. C., Hosseini, K., and Nissen-Meyer, T.: Instaseis: instant global seismograms based on a broadband waveform database, Solid Earth, 6, 701-717,, 2015.
  • Clinton, J. F. , D. Giardini, P. Lognonné, B. Banerdt, M. van Driel, M. Drilleau, N. Murdoch, M. Panning, R. Garcia, D. Mimoun, M. Golombek, J. Tromp, R. Weber, M. Böse, S. Ceylan, I. Daubar, B. Kenda, A. Khan, L. Perrin, A. Spiga; Preparing for InSight: An Invitation to Participate in a Blind Test for Martian Seismicity. Seismological Research Letters 2017;; 88 (5): 1290–1302.

To cite the IRIS DMC Syngine or reference the use of it:


  • Tarje Nissen-Meyer (University of Oxford)
  • Martin van Driel (ETH Zürich)
  • John Clinton (ETH Zürich)
  • Lion Krischer (Munich University)
  • Simon Stähler (Munich University)
  • Kasra Hosseini (Munich University)
  • Alexander Hutko
  • ETH Zürich (Green’s functions databases for Mars)



15:44:16 v.ad6b513c