Skip to content

Geoclaw examples

Donna Calhoun edited this page Aug 4, 2019 · 21 revisions

GeoClaw, a module in the Clawpack suite of tools, is designed for solving depth-averaged flows arising from geophysical flow problems. Problems which have been successfully modeled using GeoClaw include tsunami modeling, debris flows, landslides, dam break problems, flooding, and storm surges.

The GeoClaw extension of ForestClaw uses most of the main GeoClaw single grid routines, but replaces the adaptive mesh infrastructure with the ForestClaw quadtree infrastructure. Here are notable features of the GeoClaw extension of ForestClaw.

  • Relevant GeoClaw routines from the Clawpack suite of packages are included with the standard ForestClaw installation.
  • To visualization the results, we use the VisClaw and PyClaw modules from Clawpack.
  • The Python script setrun.py is used to specify regions, topo files, gauges and specific GeoClaw physical parameters.
  • The configuration file 'fclaw_options.ini' is used to specify the time stepping, refinement levels, output style and GeoClaw numerical parameters.

To build ForestClaw with the GeoClaw extension, you need to configure your build with the following configure flags.

  1. Configure for a serial build (no MPI required)

    $ cd $FCLAW
    $ cd forestclaw-build
    $ ../forestclaw/configure --enable-geoclaw
    
  2. Configure for a parallel build (requires MPI)

    $ cd $FCLAW
    $ cd forestclaw-build
    $ ../forestclaw/configure --enable-mpi ---enable-geoclaw
    

Building and installing ForestClaw proceeds as described in earlier instructions.

Once you have built ForestClaw, you will need to be sure the you can locate the executables from within the applications directories. To find the executables, set the following environment variable

$ export FCLAW_BIN=$FCLAW/forestclaw-build/local/bin

For the following, we will use the example bowl_radial, which can be found in the ``forestclaw/applications/geoclaw/bowl_radial'' directory. Before running this example, we must first run the python script that creates input files for GeoClaw routines. To do this, run

$ cd $FCLAW/forestclaw/applications/geoclaw/bowl_radial
$ python make_data.py      # equivalent to 'make data`, used by GeoClaw

Then, to run the GeoClaw bowl_radial in serial, navigate to the application directory and run the example

$ $FCLAW_BIN/bowl

To run the bowl example in parallel, do the following

$ mpirun -n 4 $FCLAW_BIN/bowl

These commands will run the bowl example, using the default options in the fclaw_options.ini file.

Visualization

The solution can be visualized using the VisClaw package. To create the visualization files that can be viewed in a web browser, use the command

$ python make_plots.py     # Equivalent to 'make plots' in VisClaw.