The Robert time filter (enabled by option robert_time_filter) is applied every time step in conjunction with using a leapfrog scheme. Schematically, this amounts to:
| (21.62) |
where
is the filtered value of the
prognostic variable h at time level
and smooth is an
adjustable parameter which may be set via namelist. The default value
is
smooth=0.01 which is a reasonably small value. The largest value
possible is
smooth=0.2 which is a very heavy smoothing. The Robert
time filter will give smoother solutions than periodic application of
either forward or Euler backward mixing steps. The disadvantage of the
Robert time filter is that it requires an extra read through of data on
disk. However, if option ramdrive is enabled and disk data is
actually held in memory, the extra overhead for reading is small.
However, for other I/O options where disk data is stored on rotating
disk, the overhead may result in a substantial increase in wall clock
time.
Caveat: As implemented, the Robert time filter will not
work correctly when applied to surface currents for the purpose of
Doppler shilting windspeeds when restart files are involved for
anything other than option simple_sbc. The reason is that on
non-restart time steps, unfiltered values of
are used.
However, filtered values of
are written to the restart file.
Therefore, when re-starting from a restart file, filtered values of
are loaded from disk and used on the first time step of a
restart. This is difficult to remedy since the barotropic portion of
is unknown at the time the filter is applied. Filtering
the tracer fields will preserve answers across restart points. The
difference in answers due to this error in velocity is very tiny
judging from the observation that if the error is not accounted for in
the tracer fields, the differences in surface tracer boundary
conditions is the the 6th decimal place.
![]() |