We have two sets of functions:
- update cache (updates all of
p except for forcing)
- update implicit cache (updates a subset of variable in
p which need to be updated for the Jacobian and implicit tendency to be at the next time)
ClimaTimesteppers works with these two functions already. ClimaAtmos has the update_cache split into two pieces:
- update explicit variables
- update implicit variables
It could be good to do the same, except some variables are evaluated at time t in some cases and time t+dt in others. For example, soil temperature is treated at the current step for computing surface fluxes, but at the next step for internal fluxes within the soil. so it may not be possible to separate variables into implicit and explicit calls.
This issues has two pieces:
- Investigate if splitting the cache up (or
p) into implicit and explicit portions is helpful
- migrate to using ClimaTimesteppers functionality for cache updates
We have two sets of functions:
pexcept for forcing)pwhich need to be updated for the Jacobian and implicit tendency to be at the next time)ClimaTimesteppers works with these two functions already. ClimaAtmos has the update_cache split into two pieces:
It could be good to do the same, except some variables are evaluated at time
tin some cases and timet+dtin others. For example, soil temperature is treated at the current step for computing surface fluxes, but at the next step for internal fluxes within the soil. so it may not be possible to separate variables into implicit and explicit calls.This issues has two pieces:
p) into implicit and explicit portions is helpful