Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

There are lots of different timesteps and substepping going on in the ACME v1 model (much of which is inherited from v0). This page is an attempt to clarify what values we typically use for these substeps. Note that most of the substep values for dynamics are illustrated in this slide:
Image Removed

This awesome figure by Kate Evans (Unlicensed) demonstrates the timesteps used for each level of substepping in the SE dycore:

Image Added

Here's a simpler/less complete version from Peter Caldwell:

Image Added


Substeps Used within the ACME model:

This table provides the values we've been using and explanation of what each quantity means.

...

 qsplitqsplit advection

ne30

v0/v1

ne30

alternative (was this ever used?)

ne30

small dtime option

ne120 before 8/10/16ne120 after 8/10/16

ne120

small dtime option

Explanation
dtime30 min30min15min15 min15 min450s

Timestep used for most physics processes and for coupling between physics and dynamics

For se_ftype=1, physics tendencies are applied as a hard adjustment every dtime seconds.

se_nsplit2  dt_remap=15m

3

dt_remap=10m

1

dt_remap=15m

4

dt_remap=225s

6*

dt_remap=150

2

dt_remap=225s

dtime/se_nsplit = time between vertical remaps of the semi-Lagrangian vertical coordinate.

For se_ftype=0, physics tendencies are "dribbled" into the dynamics every dt_remap seconds.

se_1  rsplit

3

dt_tracer=300s

2

dt_tracer=300s

3

dt_tracer=300s

3

dt_tracer=75s

2*

dt_tracer=75s

3

dt_tracer=75s

dtime/(se_nsplit*se_

rsplit) = timestep used for tracer

se_rsplit4  

timestep

For ne30, dt_tracers = 360s is probably stable, but we usually use 300s

For ne120, dt_tracers = 90s is probably stable, but we usually use 75s.

se_qsplit

1

1


1

1

11

dtime/(se_nsplit*se_qsplit*se_rsplit) = timestep used for dynamics calculations

This should always be 1, so that dt_dyn = dt_tracers.

hypervis_subcycle3  

3

dt_vis=100s

3

dt_vis=100s

3

dt_vis=100s

4

dt_vis=18.75s

44dtime/(se_nsplit_se_qsplit*se_rsplit*hypervis_subcycle) = timestep used for hyperviscosity calculation
hypervis_subcycle_q111111dtime/(se_nsplit_se_qsplit*se_rsplit*hypervis_subcycle_q) = timestep used for hyperviscosity calculation in tracer advection (namelist_definition.xml indicates that only '1' is supported in CAM?)
cld_macmic_num_steps66

3

 
3* 3
Number of times the code surrounding macrophysics + microphysics is subcycled. This means that dtime/cld_macmic_num_steps = timestep used for macrophysics and microphysics.
clubb_timestep300 sec 
 300 sec300 sec300 sec
I'm not sure what this means or how it relates to cld_macmic_num_steps
IRADSW2 steps 
 1 hr4 steps (1 hr)4 steps (1 hr)
How frequently to compute SW radiation (in timestepsmultiples of dtime). Radiation tendencies are taken from previous steps for steps when radiation is not recalculated. I think some scaling is made to account for zenith angle changes?
IRADLW2 steps
1 hr 4 steps 4 steps
How frequently to compute LW radiation (in timestepsmultiples of dtime). Radiation tendencies are taken from previous steps for steps when radiation is not recalculated. I think some scaling is made to account for zenith angle changes?

 

...

 




*since AV1C-04*suggest to use

Physics/Dynamics Coupling:

In the code as inherited from CESM there are 3 options for how physics/dynamics coupling is done:

  • se_ftype=0 (default): the physics tendency is included ("dribbled in") as a constant source term in each remap timestep
  • se_ftype=1: the impact of physics is applied entirely before dynamics is run (hard adjustment). In other words, dynamics sees the state after physics. This prevents conservation errors but can (if dtime is too large) pushes the model state too far away from where dynamics wants it, resulting in a shock and resulting gravity wave propagation every time dynamics is called.
  • se_ftype=2: A blend of ftype=0 and ftype=1... The model state is updated to include the effect of physics on temperature and winds before dynamics is called, but the effect of other quantities is dribbled into dynamics every remap substep.

Discussions/Links Relevant to This Page: