mpas_analysis.shared.time_series.cache_time_series

mpas_analysis.shared.time_series.cache_time_series(timesInDataSet, timeSeriesCalcFunction, cacheFileName, calendar, yearsPerCacheUpdate=1, logger=None)[source]

Create or update a NetCDF file cacheFileName containing the given time series, calculated with timeSeriesCalcFunction over the given times, start and end year, and time frequency with which results are cached.

Note: only works with climatologies where the mask (locations of NaN values) doesn’t vary with time.

Parameters
timesInDataSetarray-like

Times at which the time series is to be calculated, typically taken from ds.Times.values for a data set from which the time series will be extracted or computed.

timeSeriesCalcFunctionfunction

A function with arguments timeIndices, indicating the entries in timesInDataSet to be computed, and firstCall, indicating whether this is the first call to the funciton (useful for printing progress information).

cacheFileNamestr

The absolute path to the cache file where the times series will be stored

calendar{'gregorian', 'gregorian_noleap'}

The name of one of the calendars supported by MPAS cores, used to determine year and month from Time coordinate

yearsPerCacheUpdateint, optional

The frequency with which the cache file is updated as the computation progresses. If the computation is expensive, it may be useful to output the file frequently. If not, there will be needless overhead in caching the file too frequently.

loggerlogging.Logger, optional

A logger to which to write output as the time series is computed

Returns
climatologyobject of same type as ds

A data set without the 'Time' coordinate containing the mean of ds over all months in monthValues, weighted by the number of days in each month.