variable dt for tsunami models

69 views
Skip to first unread message

Randall John LeVeque

unread,
Dec 2, 2011, 1:49:57 AM12/2/11
to Marsha Berger, dge...@usgs.gov, Breanyn MacInnes, Bryant Hirai, Frank Gonzalez, Jonathan Varkovitzky, Maria E Arcos (Martin), Paul Chamberlain, SeanPaul, claw-...@googlegroups.com
Hi tsunami modelers,

In debugging a tsunami run I noticed that the new feature we added to
estimate the time step and choose the refinement ratios in time
automatically, i.e. setting
geodata.variable_dt_refinement_ratios = True
in setrun.py seems to have the effect that the time step in the first
step on the coarse grid is now chosen automatically rather than using
the initial dt set with clawdata.dt_initial.

On a coarse grid in the ocean the initial time steps might be large
relative to the time over which the seafloor motion happens. For
example, see the output below where the initial dt chosen on the
coarse (2 degree) grid is 469 seconds. On level 3, dt is about 20
seconds. This was for the Tohoku event and the deformation was set to
take place over 100 seconds (with linear interpolation between start
and ending times), so probably not an issue here, but it could be a
problem if finer resolution of the fault motion is attempted.

With
geodata.variable_dt_refinement_ratios = False
and variable time stepping the initial dt is only used in the first
coarse grid step and afterwards the time step is chosen based on the
CFL condition, so if dt_initial=1 sec, for example, then after the
first step it will jump up to a much larger time step with roughly the
same results as what's shown below.

So the upshot I think is that if we want to resolve seafloor motion
over the first few minutes properly, the best approach is to:

1. Do a run for the first few minutes with fixed timesteps,
clawdata.dt_variable = 0
and a suitable dt_initial. Note that you cannot use outstyle=1 or 2
with this setting, you have to use outstyle=3 and specify how many
time steps to take (on the coarse level).

2. Do a restart after the motion is complete using variable time steps
appropriate for the tsunami motion.


MOVETOPO: setting dtopo at time = 0.00000000000000
automatically setting initial dt to 469.545970721310

GeoClaw: Frame 0 output files done at time t = 0.000000D+00

MOVETOPO: setting dtopo at time = 0.00000000000000
AMRCLAW: level 1 CFL = .797E+00 dt = 0.4695E+03 final t = 0.469546E+03
MOVETOPO: setting dtopo at time = 0.00000000000000
AMRCLAW: level 2 CFL = .542E+00 dt = 0.7826E+02 final t = 0.782577E+02
MOVETOPO: setting dtopo at time = 0.00000000000000
AMRCLAW: level 3 CFL = .511E+00 dt = 0.1956E+02 final t = 0.195644E+02
MOVETOPO: setting dtopo at time = 19.5644154467213
AMRCLAW: level 3 CFL = .511E+00 dt = 0.1956E+02 final t = 0.391288E+02
MOVETOPO: setting dtopo at time = 39.1288308934425
AMRCLAW: level 3 CFL = .511E+00 dt = 0.1956E+02 final t = 0.586932E+02
MOVETOPO: setting dtopo at time = 58.6932463401638
AMRCLAW: level 3 CFL = .511E+00 dt = 0.1956E+02 final t = 0.782577E+02
MOVETOPO: setting dtopo at time = 78.2576617868851
AMRCLAW: level 2 CFL = .542E+00 dt = 0.7826E+02 final t = 0.156515E+03
MOVETOPO: setting dtopo at time = 78.2576617868851
AMRCLAW: level 3 CFL = .511E+00 dt = 0.1956E+02 final t = 0.978221E+02
MOVETOPO: setting dtopo at time = 97.8220772336063
AMRCLAW: level 3 CFL = .511E+00 dt = 0.1956E+02 final t = 0.117386E+03
MOVETOPO: Altering topography arrays at t= 117.386492680328
MOVETOPO: Topography Motion Complete

Randall John LeVeque

unread,
Dec 3, 2011, 1:55:45 AM12/3/11
to Marsha Berger, dge...@usgs.gov, Breanyn MacInnes, Bryant Hirai, Frank Gonzalez, Jonathan Varkovitzky, Maria E Arcos (Martin), Paul Chamberlain, SeanPaul, claw-...@googlegroups.com
I think we should change the code so that the initial_dt is used in
the first time step for the coarse grid, with dt for finer grids
possibly being automatically chosen by the max wave speed estimate.

However, I don't think this would always be good enough if one is
using the dynamic fault option in which the fault motion over time can
be specified. In this case a fixed dt up until the earthquake stops
might be needed (which for Sumatra 2004 was about 10 minutes, for
example).

- Randy

On Fri, Dec 2, 2011 at 6:38 AM, Marsha Berger <ber...@cims.nyu.edu> wrote:
> Why not just have the variable time step options work the same as variable dy - for the initial time only if an initial dt is not given or is given as zero, for example. But if it is given it supercedes the use of automatic dt selection for the first step only. Would that be flexible enough?

Reply all
Reply to author
Forward
0 new messages