Skip to content

Quakeworx

Fabio Silva edited this page Nov 6, 2025 · 1 revision

The Statewide California Earthquake Center’s Broadband Platform (BBP) is now available on the Quakeworx Science Gateway. The BBP is a well-established open-source software system for simulating broadband (0–20+ Hz) ground motions for both historical and scenario earthquakes in regions including California, Eastern North America, and Japan. Through Quakeworx, users can now run BBP validation and scenario simulations directly from their web browser, without installing software or managing dependencies. The Quakeworx web application provides access to all current BBP validation events and allows users to upload custom source and station files for scenario runs. Researchers are invited to log in to the Quakeworx Gateway, explore the Broadband Platform, and use it to advance their seismological studies.

Running the Broadband Platform on Quakeworx

By following the steps below, users can run the Broadband Platform on Quakeworx using a web application. Both validation and scenario simulations can be run at SDSC's Expanse cluster.

Step 1: Logging into Quakeworx

To get started, users should navigate to the Quakeworx Gateway, and then click the "Login" button at the top-right corner of the window. Quakeworx supports Single Sign-On and academic users can log into the Gateway using their institution Single Sign-On information. If your institution is not listed, please use the link to request access to the Quakeworx Gateway.

Step 2: Starting the Broadband Platform application

After logging in, users can select the "Apps" tab, and select "Curated apps" from the menu. A list of applications will appear and users should select the "Broadband Platform" application. A new page will open and users will be able to click on a "Launch app" button on the right of the screen.

Starting Broadband Application Starting the Broadband Platform application

Step 3: Setting up a Broadband Platform Simulation

Users can run two different types of Broadband Platform simulations on Quakeworx: Validation and Scenario simulations. For running a validation simulation, follow step 3A below. For scenario simulations, skip to step 3B.

Step 3A: Running a Validation Simulation

Validation simulations allow users to run one of the simulation methods available on the Broadband Platform to calculate synthetic seismograms for a historical event, and then compare the results against recorded data. For this tutorial, we will run a single realization for the 1994 Northridge earthquake. To begin, users should first select the "Validation Simulation" mode, as indicated below:

Select validation simulation Selecting the validation simulation mode

Selecting Validation Event

After users select the validation mode, the next step is to select the simulation parameters. For validation simulations, the first parameter is the validation event that will be used (in our case the 1994 Northridge event). The Broadband Platform includes a number of validation events, as shown below:

Select validation event Selecting validation event

Selecting Simulation Method

Users will also select the simulation method they would like to use. For our example, we will pick the Graves & Pitarka (GP) method:

Select simulation method Selecting simulation method

Once the simulation event and method are set, users can specify a few other simulation parameters.

Selecting Additional Simulation Parameters

The number of simulations indicate how many different realizations to run. Each realization is a variation of the simulation where a different random number seed is used. This will cause some parameters like the rupture slip distribution and rupture speed to vary. Each realization is calculated separately from each other and will include a complete set of results.

Select validation parameters Selecting validation parameters

When the hypocenter randomization option is selected, the hypocenter location provided in the event SRC file is ignored and the hypocenter will be randomly placed in the fault plane. Different realizations (see option above) will have their hypocenters in different places.

For our tutorial, we will choose a single realization, and disable the hypocenter randomization feature.

Selecting the Site Response Module

The site response option causes the synthetic timeseries to be corrected for local conditions according to the Vs30 values provided in the station list. When this option is disabled, the synthetic timeseries will have the Vs30 value used in the calculation of the Greens Functions (500m/s for most regions).

Select site response Selecting site response

In our case, we will select the Graves & Pitarka site response module.

GMPE Comparison

Users can select the "Generate GMPE Comparison" button and then pick an to select a set of models that will be used to generate the GMPE comparison.

Select GMPE comparison Selecting GMPE comparison

The Broadband Platform will calculate the GMPE values for the event selected, and will create a Goodness-of-Fit comparison of these GMPE values against the recorded data. Users can check the "Generate GMPE Comparison" button, and select the NGA-West 2 option.

Goodness-of-Fit Plots

Finally, users can request a Goodness-of-Fit plot that shows how the calculated seismograms compare against the recorded data for this historical event. To do that, first select the "Generate GoF Comparison" button, and then pick the type of comparison the Broadband Platform should generate.

Select GOF comparison Selecting GOF comparison

In our case, we will check the "Generate GoF Comparison" box, and select the GP (Graves & Pitarka) goodness-of-fit plots.

Setting up the Computing Environment Parameters

The final two parameters to check before starting a job are the job name and job runtime. For our tutorial, we can replace the pre-filled job name with our preference, here we are using "Northridge-Validation" as our job name:

Select job name Selecting job name

Lastly, we should scroll down and select the maximum runtime (in minuted) we are requesting for the job. The default value is 120 minutes and it should be sufficient to run this simulation:

Select maximum runtime Selecting maximum runtime

Now, skip to step 4 to start the run!

Step 3B: Running a Scenario Simulation

Scenario simulations allow users to run one of the simulation methods available on the Broadband Platform to calculate synthetic seismograms for a hypothetical scenario at locations specified by the user. To run a scenario simulation, users must first select the "Scenario Simulation" mode, as indicated below:

Select scenario simulation Select the scenario simulation mode

Selecting Simulation Method

As the first step in running a scenario simulation, users will select the simulation method they would like to use. In our case, we will pick the Graves & Pitarka (GP) method:

Select simulation method Selecting simulation method

Selecting Simulation Region

The next step involves selecting the simulation region. For our tutorial, please select the Los Angeles Basin (LABasin500) option, as shown below:

Select velocity model Selecting the velocty model

Selecting Additional Simulation Parameters

The number of simulations indicate how many different realizations to run. Each realization is a variation of the simulation where a different random number seed is used. This will cause some parameters like the rupture slip distribution and rupture speed to vary. Each realization is calculated separately from each other and will include a complete set of results.

Select scenario parameters Selecting scenario parameters

When the hypocenter randomization option is selected, the hypocenter location provided in the event SRC file is ignored and the hypocenter will be randomly placed in the fault plane. Different realizations (see option above) will have their hypocenters in different places.

For our tutorial, we will choose a single realization, and disable the hypocenter randomization feature.

Defining a Scenario Simulation

When running a scenario simulation, users will need to provide their own rupture definition and station list. Please refer to the BBP File Format Guide for details on how to create these files.

Select scenario definition Selecting scenario definition

The rupture definition, also known as source description, is provided by a SRC file, which contains fault location, mechanism, magnitude, along with other simulation parameters. For this tutorial, users can use the source description file below. Create a plain text file using your favorite text editor, copy the text below, and save as scenario_source.src. Then select the "Choose File" botton inside the "Source Description" box and submit the SRC file to the Quakeworx gateway.

#
# BBP Scenario source file
#
MAGNITUDE = 5.89
FAULT_LENGTH = 10.00
FAULT_WIDTH = 10.00
DEPTH_TO_TOP = 12.00
STRIKE = 280
RAKE = 90.00
DIP = 30
LAT_TOP_CENTER = 34.012
LON_TOP_CENTER = -118.0885
HYPO_ALONG_STK = 0.0
HYPO_DOWN_DIP =  5.20
#
# Model specific parameters
#
DWID = 0.2
DLEN = 0.2
#
# Alternative SEEDS create alternative .srf
#
SEED = 2379646

The station list is a file that contains the locations for where the Broadband Platform will calculate synthetic seismograms. For our tutorial, we will use a station file with 3 stations. please open your favorite text editor and create a plain text file with the following content:

# BBP Scenario Station List
# Lon    Lat     StationId     Vs30(m/s) HP_Freq(Hz)   LP_Freq(Hz)
-118.120 34.140  5001-A-LUR   341 0.2500  32.0000
-118.230 34.004  5002-A-VER   283 0.1750  23.9998
-118.093 34.091  5003-A-GRN   401 0.1250  20.0000

Save the file as scenario_stations.stl. Then select the "Choose File" botton inside the "Station List" box and submit the STL file to the Quakeworx gateway.

Select scenario definition selected Scenario definition selected

Selecting the Site Response Module

The site response option causes the synthetic timeseries to be corrected for local conditions according to the Vs30 values provided in the station list. When this option is disabled, the synthetic timeseries will have the Vs30 value used in the calculation of the Greens Functions (500m/s for most regions).

Select site response Selecting site response

In our case, we will select the Graves & Pitarka site response module.

Setting up the Computing Environment Parameters

The final two parameters to check before starting a job are the job name and job runtime. For our tutorial, we can replace the pre-filled job name with our preference, here we are using "Broadband-Scenario" as our job name:

Select job name Selecting job name

Lastly, we should scroll down and select the maximum runtime (in minuted) we are requesting for the job. The default value is 120 minutes and it should be sufficient to run this simulation:

Select maximum runtime Selecting maximum runtime

Step 4: Starting the Simulation

Once all simulation parameters are set, it is time to start the simulation. Users can scroll down to the bottom of the page and click on the "Submit" button. This will bring us to another page where users can follow the job progress and it goes through the staging and running steps. Here's an example of a job running:

Job running on Quakeworx Job running

Depending on the simulation size, the job will run for a time ranging from a few minutes to several hours. The page updates as the job goes from one stage to the next, but users can always reload the page for the latest status. After a while, the job will finish and users should see the "Finished" status:

Job finished on Quakeworx Job completed

Step 5: Looking at Results

Omce the simulation is finished, we can look at the results by clicking in the "Outputs" tab. Below you will see the output of the validation simulation described in Step 3A above. The results for a scenario simulation (as described in Step 3B) will be similar, but since scenario runs are hypothetical earthquakes, they will not include comparisons to recorded data.

Checking a job's results Viewing the output tab

Users can expand the "outputs" folder to get to the Broadband Platform results:

Checking a job's results Finding Broadband Platform output

Then, users can expand the "bbp_sims" folder and browse simulation results including timeseries, plots, etc. The tar.gz file contains all the results (for all realizations) and can be downloaded from the Quakeworx gateway as a single file.

Looking into the "bbp_sims" folder, we find the individual results:

Checking a job's results Browsing through the Broadband Platform results

After navigating to the "bbp_sims" folder, users will find the results in the "Sims/outdata" folder. Users familiar with the Broadband Platform will recognize the directory structure as it is the same used when running the BBP directly. The "outdata" folder contains simulation results, and each numerical folder inside "outdata" represents a different realization. In our example, we only have a single realization (10000000).

Below are examples of some of the files that are found inside each realization folder. Users will find a slip distribution plot; the generated broadband timeseries (both velocity and acceleration files), along with plots; per-station PSA comparisons of the synthetic timeseries against recorded data; and a goodness-of-fit plot comparing the aggregate results of all stations against the data. An example of each of these plots is shown below;

Slip distribution Slip distribution on the rupture plane

Timeseries Acceleration timeseries for one station

PSA Comparison PSA comparison for one station

Goodness-of-Fit Plot PSA Goodness-of-Fit Plot

The PSA and FAS Goodness-of-Fit (GoF) plots show how simulated data compares against recorded data at different periods. The solid red line shows the mean, the narrow band is the 90% confidence interval of the mean, and the wide band shows the standard deviation centered around the mean. When the red line is close to zero, it shows the two sets (calculated and recorded data) are quite similar. For periods where the red line dips below zero, it signals the simulated data is overpredicting the recorded data, and for periods where the red line is above zero it indicates simulated data is underpredicting the data.

Clone this wiki locally