TimeManager
This module contains functions that handle dates and times in simulations. The functions in this module often call functions from Julia's Dates module.
TimeManager API
ClimaCoupler.TimeManager.maybe_trigger_callback — Functionmaybe_trigger_callback(callback, cs)Check if it is time to call callback, if yes, call its function on cs.
ClimaCoupler.TimeManager.WalltimeReporter — TypeWalltimeReporter()A callable object that logs the progress of a coupled simulation.
A WalltimeReporter is meant to be used as the function of a Callback: it is called with the CoupledSimulation as its only argument and reads the current time, start date, time span, and coupling time step from it.
The wall time of the first call is dominated by compilation, so it is not measured; instead, the first measurement (between the first and second calls) is scaled up to estimate the compilation-free wall time of the steps before it.
ITime
ITime, or integer time, is a time type used by CliMA simulations to keep track of simulation time. For more information, refer to the TimeManager section in ClimaUtilities and the ITime section in ClimaAtmos.
How do I use ITime?
If you are running a simulation from a YAML file, you can simply set use_itime to true to enable ITime. If you do not want to use ITime and want to use floating point numbers, then set use_itime to false to not use ITime.