Difference between revisions of "Tsunami simulation"

From ccrmwiki
Jump to: navigation, search
Line 1: Line 1:
A sample tsunami run (impact of Alaska tsunami waves on Cannon Beach, OR) can be downloaded [http://www.ccrm.vims.edu/yinglong/wiki_files/tsunami_ex15.tgz here].
+
A sample tsunami run (impact of Alaska tsunami waves on Cannon Beach, OR) can be downloaded [http://www.ccrm.vims.edu/yinglong/wiki_files/tsunami_ex15.tgz here]. Note that the files are compatible with the serial version of SELFE, but the idea for parallel version is similar.
  
 
Typically you need to follow these 2 steps in tsunami simulations:
 
Typically you need to follow these 2 steps in tsunami simulations:
Line 7: Line 7:
 
       specifies the total seafloor deformation. We typically run this stage for 10 sec duration and
 
       specifies the total seafloor deformation. We typically run this stage for 10 sec duration and
 
       at the end of the run you'll find an output files called 10_hotstart which is then used as
 
       at the end of the run you'll find an output files called 10_hotstart which is then used as
       hotstart.in for the next stage. In addition, use mod_depth.f, which takes info in bdef.gr3 and
+
       hotstart.in for the next (propagation and inundation) stage. In addition, use mod_depth.f (inside the bundle), which takes info in bdef.gr3 and
 
       hgrid.gr3 (pre-earthquake depths) to generate hgrid.new (post-earthquake depths). The latter
 
       hgrid.gr3 (pre-earthquake depths) to generate hgrid.new (post-earthquake depths). The latter
 
       is used in the next stage. For completeness you need to attach the boundary condition
 
       is used in the next stage. For completeness you need to attach the boundary condition
Line 15: Line 15:
 
       to the Def/ run, but be careful of differences in hgrid.gr3 (linked to Def/hgrid.new) and param.in
 
       to the Def/ run, but be careful of differences in hgrid.gr3 (linked to Def/hgrid.new) and param.in
 
       (imm=0 etc). For this run we also turn off the advection in the open ocean (up to say 20m isobath) because it's negligible
 
       (imm=0 etc). For this run we also turn off the advection in the open ocean (up to say 20m isobath) because it's negligible
       there (adv.gr3). Also note that hotstart.in is from the previous stage. A relatively small
+
       there (adv.gr3) - see for info on CFL number. Also note that hotstart.in is from the previous stage. A relatively small
 
       time step of 1 sec (by SELFE standard) is used because of the constraint from inundation stage.
 
       time step of 1 sec (by SELFE standard) is used because of the constraint from inundation stage.
 
       The operational time step for tsunami applications is generally in the range of a few seconds.
 
       The operational time step for tsunami applications is generally in the range of a few seconds.
Line 21: Line 21:
 
       Also since only 2 S layers are used in the vertical (quasi-2D mode) we set the bottom friction to 0.
 
       Also since only 2 S layers are used in the vertical (quasi-2D mode) we set the bottom friction to 0.
 
     If you have to use non-zero friction you'll need to use more layers and make sure the bottom boundary
 
     If you have to use non-zero friction you'll need to use more layers and make sure the bottom boundary
     layer is resolved.
+
     layer is resolved. If you use the recent parallel version, you can simply use a 2D model.
 
   * After the run is done you can look at global outputs (elevation, depth-averaged velocity etc).
 
   * After the run is done you can look at global outputs (elevation, depth-averaged velocity etc).
 
       The maximum elevation (maxelev.gr3) and depth-averaged velocity (maxdahv.gr3) are also part of the
 
       The maximum elevation (maxelev.gr3) and depth-averaged velocity (maxdahv.gr3) are also part of the
       outputs. The maximum inundation can be computed from maxelev.gr3.
+
       outputs (for parallel versions, use trunk/src/Utility/Combining_Scripts/combine_gr3.f90). The maximum inundation can be computed from maxelev.gr3.

Revision as of 13:05, 23 July 2013

A sample tsunami run (impact of Alaska tsunami waves on Cannon Beach, OR) can be downloaded here. Note that the files are compatible with the serial version of SELFE, but the idea for parallel version is similar.

Typically you need to follow these 2 steps in tsunami simulations:

 * Deformation run (EX15/Def/ in the sample run): this simulates the earthquake and the set-up of the initial surface
      waves. For this you need bdef.gr3 (refer to the user manual) which
      specifies the total seafloor deformation. We typically run this stage for 10 sec duration and
      at the end of the run you'll find an output files called 10_hotstart which is then used as
      hotstart.in for the next (propagation and inundation) stage. In addition, use mod_depth.f (inside the bundle), which takes info in bdef.gr3 and
      hgrid.gr3 (pre-earthquake depths) to generate hgrid.new (post-earthquake depths). The latter
      is used in the next stage. For completeness you need to attach the boundary condition
      part (b.tmp) of hgrid.gr3 to the end of hgrid.new;
 * Propagation and inundation stage (EX15/ in the sample run): this run continues from the deformation
     run above with no further seafloor movement. You'll notice that many input files are identical
     to the Def/ run, but be careful of differences in hgrid.gr3 (linked to Def/hgrid.new) and param.in
     (imm=0 etc). For this run we also turn off the advection in the open ocean (up to say 20m isobath) because it's negligible
     there (adv.gr3) - see for info on CFL number. Also note that hotstart.in is from the previous stage. A relatively small
     time step of 1 sec (by SELFE standard) is used because of the constraint from inundation stage.
     The operational time step for tsunami applications is generally in the range of a few seconds.
     The inundation results may also be sensitive to the min. depth used in the run (1cm in this example).
     Also since only 2 S layers are used in the vertical (quasi-2D mode) we set the bottom friction to 0.
    If you have to use non-zero friction you'll need to use more layers and make sure the bottom boundary
    layer is resolved. If you use the recent parallel version, you can simply use a 2D model.
 * After the run is done you can look at global outputs (elevation, depth-averaged velocity etc).
      The maximum elevation (maxelev.gr3) and depth-averaged velocity (maxdahv.gr3) are also part of the
      outputs (for parallel versions, use trunk/src/Utility/Combining_Scripts/combine_gr3.f90). The maximum inundation can be computed from maxelev.gr3.