Skip to content

dtopo file behavior if start time <= t0, and initial time step #679

@rjleveque

Description

@rjleveque

If a dtopo file is specified with the dtopo t0 in the header less than or equal to t0 for the job run, then the change to topo may be applied before qinit is called, so that the initial ocean is flat and never changes if there are no subsequent dtopo changes specified (particularly if mt = 1 so only one dtopo time is specified). This may or may not be what is desired, but for instantaneous earthquake models it probably is not desired, instead you might want to see the initial surface displacement matching the specified dtopo. At any rate this should be clarified in the documentation.

There might also be a bug in this, since in some tests I did the initial surface was not entirely flat but had some small perturbations near the coast on coarser grid levels (but not on the finest level patches). This needs more exploration.

At any rate, for earthquake models it is best to specify t0 in the dtopo file to be larger than the t0 set in setrun.py for the simulation, e.g. to 1 second as we often do for "instantaneous uplift" models. And then setting e.g.

      rundata.clawdata.dt_initial = 0.5 

      rundata.dtopo_data.dt_max_dtopo = 0.5

insures that it takes small enough time steps initially on the coarsest grid to capture the initial deformation before it starts taking time steps governed by rundata.clawdata.cfl_desired, which can be several hundred seconds if the coarsest level is one or two degrees.

Also, if dt_max_dtopo <= dt_initial then it should be using this time step initially, one would think, but in fact it uses dt_initial for the first time step regardless of dt_max_dtopo and this should be fixed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions