Skip to content

Computing GFs for tide gauges, GPS buoys, OBPs, etc.

Diego Melgar edited this page Sep 10, 2017 · 12 revisions

This is not nearly as streamlined as for the other data types and could you use some refactoring. Currently it's a 3 stage process

  1. Produce displacement GFs and synthetics for a grid of seafloor points.
  2. Assemble those GFs into GeoClaw dtopo files for the seafloor deformation associated with each subfault.
  3. Make a system call and run one GeoClaw simulation for each subfault.

1. Produce displacement GFs and synthetics for a grid of seafloor points

Nothing mysterious about this, make a grid of points on the seafloor, regular or irregular, then create a .gflist file for those points and request displacement waveform GFs and synthetics the same way you would for a regular inversion. To reduce computation time use temporally coarse GF and synthetics, for example you could try setting NFFT=64; dt=5.0

2. Assemble those GFs into GeoClaw dtopo files for the seafloor deformation associated with each subfault.

For this step use mudpy.inverse.make_tgf_dtopo. It's almost an exact copy of forward.move_seafloor which is used to produce GeoClaw .dtopo files for tsunami initial conditions. Here you need to create a strike-slip and dip-slip .dtopo file for each subfault. Check out the setting up a seafloor forward model wiki for more information. Youw ill need to assemble a coastline file and topography gradient files for the advection effect. Once you ahve these you can run make_tgf_dtopo

3. Make a system call and run one GeoClaw simulation for each subfault.

Create a template GeoClaw setrun.py and Makefile and save them in the station_info subfolder of your project folder. Make sure you've ensured the wave gauge locations have good enough topo/bathy around them and that they are actually on the water! Then you can run mudpy.inverse.tsunami_gfs this will make the GeoClaw system calls.

Once this is complete you need to convert from the GeoClaw binary output format to SAC. For this you can simply run mudpy.inverse.tsunami2sac