THERMAL ENGINEERING · COMPUTATIONAL LAB

Tsunami Wave Arrival Time Calculator

Approximate arrival at a selected ocean location, with historical DART validation.

HOW TO USE THE CALCULATOR

Estimate tsunami-wave arrival at a selected ocean location

Choose a custom estimate to enter any earthquake-source and ocean-location coordinates, or choose historical validation to reproduce a documented tsunami–DART comparison. Step 1 downloads the matching bathymetry, Step 2 prepares the initial sea-surface displacement, Step 3 propagates the wave, and Step 4 reports a threshold-based arrival estimate. Complete the steps in order and interpret custom results only as rapid ocean-propagation screening calculations.

GENERAL-PURPOSE ESTIMATE

Use your own coordinates

Enter the tsunami source and a selected ocean-location latitude and longitude. The calculator builds a matching domain and estimates arrival at the nearest wet grid cell.

VALIDATION

Reproduce a documented case

Select a historical event and DART station, then compare the model with the quality-controlled observation using the same workflow.

Research and educational calculator. Provides approximate deep-ocean arrival estimates. Not an emergency-warning or coastal-inundation model. For an actual tsunami, follow official emergency-management and tsunami-warning authorities.

Device verification

Locked. Run the Python-reference tests on this device before propagation.

Load the same bathymetry and initial displacement used by Python. No online dataset is substituted.

MULTI-EVENT VALIDATION CATALOG

Run documented tsunami–DART cases

The selector shows every event on the NCEI recent/significant-events page. “Runnable validation” means this calculator has a compatible earthquake source, a verified DART station and a numerical residual record. Catalog-only entries remain visible but cannot be treated as validation until those inputs are verified. Volcanic, atmospheric, landslide-dominated and historic tide-gauge events are not forced through an incompatible earthquake-source model.

Event
Source
Gauge
Observation

Not loaded.

Model signalNot run
Model arrivalNot run
Quality-controlled observed arrivalLoad observations
Arrival differenceNot run
Quality-controlled RMSENot compared
Raw-record RMSENot compared
Noise-aware thresholdNot calculated
Pre-event noise sigmaNot calculated
Validation decisionNot run

Screening criteria: a nonzero model signal and sustained-threshold arrival within 15 minutes of the processed observation. RMSE is always reported. A pass does not establish full physical validation because the notebook source is a simplified source rather than an event-specific finite-fault displacement field.

STEP 1 · CUSTOM OR VALIDATION INPUT

Enter the tsunami source and destination

For a custom estimate, enter the earthquake or displacement-centre coordinates and the offshore destination. Longitude must be between −180° and 180° and latitude between −90° and 90°. The calculator requests a matching ETOPO1 bedrock subset, maps the destination to the nearest wet grid cell, and calculates a suitable screening duration. Loading a historical validation case fills these same fields automatically.

No online grid loaded.

The image is a display preview only. Computation never uses a resized canvas.

STEP 2

Select the notebook source

These notebooks contain three different source formulas. Loading a source file preserves that file; generating a source requires an explicit formula. The names below describe the supplied code, not an independently verified complete Okada model.

No source prepared.

STEP 3

Propagate with the Notebook 3 solver

The Python-faithful solver uses collocated eta, u, and v arrays, centred differences, float32 arithmetic, and SSPRK3 with boundary treatment after every stage. Its depth floor is also applied over land. No wetting/drying or shoreline impact prediction is added. The run stops without reporting an arrival if the CFL requirement falls below the selected minimum timestep or if surface elevation shows runaway numerical growth.

Default Python-faithful collocated eta, u and v arrays; centred spatial differences; SSPRK3 integration and notebook boundary treatment.

Load the geographic domain to calculate a suitable simulation horizon.

No run. Device verification and a prepared source are required.

Notebook diagnostic histories

These reproduce the Python notebook’s monitoring quantities. They are conservation and stability histories, not iterative equation residuals.

RUN INTERPRETATION

Simulation report

Research and educational calculator. Provides approximate deep-ocean arrival estimates. Not an emergency-warning or coastal-inundation model.

Complete a propagation run to generate a report from the calculated arrays.

GridNot run
IntegrationNot run
Maximum field elevationNot run
Maximum velocityNot run
Energy remaining in domainNot run
Net volume drift / initial |eta| volumeNot run

No numerical assessment is available.

STEP 4

Arrival at the selected ocean location

Only completed timestep samples are treated as physical times. A missing arrival stays missing; the final simulation time is never substituted. The notebook’s first-threshold sample and an additional sustained-threshold diagnostic are shown separately.

No completed run.

Time is measured from the event origin. Blue: model. Pale orange: unchanged raw DART residual. Dark orange: quality-controlled residual after pre-event baseline removal and isolated-spike rejection. No time shift is applied.

Required CSV header: time_s,eta_m. Event-relative negative times should include at least one hour before the earthquake so the quality-control workflow can estimate the baseline and noise. Raw samples remain available, and no time shift or event substitution is applied.

No observations loaded. No physical-validation score is assigned.

Consolidated validation results

Completed comparisons are stored in this browser and separated by numerical scheme.

EventStationSchemePredicted arrival, minObserved arrival, minAbsolute error, minPeak ratioRMSE, mResult

OPTIONAL EXPERIMENTAL CALIBRATION

ANFIS residual correction

ANFIS learns event-level arrival-time and peak-amplitude errors from completed model–DART comparisons. It never changes the propagation solution. Treat it as experimental until it improves earthquakes that were not used for fitting.

Dataset readiness

GroupStoredRequiredMissing
Training earthquakes055
Held-out earthquakes022
Event–station samples0Informational—

First complete and compare a tsunami case, or import previously saved datasets.

The built-in catalog contains fewer than seven independently usable earthquake groups. Additional quality-controlled event datasets are therefore required before the five-training plus two-validation gate can be reached.

View the complete ANFIS workflow
  1. Run an event and compare it with its matching DART record.
  2. Store the accepted comparison as training or held-out validation. Every station from the same earthquake must use the same role.
  3. Select several saved dataset JSON files at once to merge work from other sessions. Duplicate event–station samples are replaced, not counted twice.
  4. When the table reaches five training and two validation earthquake groups, train the Takagi–Sugeno ANFIS. Only the training groups are fitted.
  5. Inspect the untouched validation RMSE before applying or saving the correction model.

No accepted event–station comparison has been added in this session.

No trained ANFIS model loaded. The physics-only result remains authoritative.

REPRODUCIBLE DATA EXPORT

Export analysis dataset

After a completed run, download one NumPy NPZ archive for independent analysis, plotting or machine-learning preparation. The archive preserves the numerical arrays and the derived arrival results; it does not label the simulation as physically validated.

Grid and fieldsLongitude, latitude, signed bathymetry, solver depth, initial eta, final eta, u and v
Gauge resultsPhysical sample time, elevation, first and sustained arrivals, peak magnitude and peak time
Run healthSteps, duration, energy and mass histories, field maxima and final diagnostic changes
Validation dataRaw and quality-controlled DART samples when a comparison has been completed

Complete a propagation run to enable the archive.

Python example: data = numpy.load("file.npz", allow_pickle=False). Decode metadata_json_utf8 as UTF-8 JSON. Two-dimensional fields use C-order [latitude, longitude].

MODELLED RESULT INDICATOR

Possible arrival and water-surface amplitude

Possible arrival at selected cellRun the simulationNo screening threshold evaluated
Modelled maximum amplitudeNot availableNot a measured or shoreline wave height
Research screening classificationPendingComplete a propagation run
Very low model amplitude
< 0.01 m
Low model amplitude
0.01–0.10 m
Moderate model amplitude
0.10–0.50 m
High model amplitude
≥ 0.50 m

Research screening classification only. The colours are not official warning levels. This is not a real-time observation, shoreline wave height, run-up or inundation prediction. Follow official authorities during an actual event.