U Š÷Îg4 ã@sdZGdd„deƒZGdd„deƒZGdd„deƒZGdd„deƒZGd d „d eƒZGd d „d eƒZGd d„deƒZGdd„deƒZ Gdd„deƒZ Gdd„deƒZ Gdd„de ƒZ Gdd„de ƒZ Gdd„de ƒZGdd„de ƒZGdd„de ƒZGdd „d e ƒZd!S)"zÔ!Exceptions raised by the tcutil package This module contains exceptions raised by the tcutil package. The only exceptions are the tcutil.revital and tcutil.storminfo modules which contain their own exceptions.c@seZdZdZdS)Ú TimeErrorz.!Base class used for time-related exceptions.N©Ú__name__Ú __module__Ú __qualname__Ú__doc__©rrú>/lfs/h1/ops/prod/packages/hafs.v2.0.7/ush/tcutil/exceptions.pyr src@seZdZdZdS)ÚInvalidTimestepzq!Raised when a timestep is invalid, such as a negative timestep for a situation that requires a positive one.Nrrrrrr sr c@seZdZdZdS)ÚTimestepModularityErrorzF!Called when one hour is not divisable by the WRF output timestep.Nrrrrrr sr c@seZdZdZdS)ÚOverspecifiedOutputTimez½!Raised when an output time is specified in two redundant ways. For example, one could specify a forecast time directly, and also specify the analysis time and forecast time delta.Nrrrrrr sr c@seZdZdZdS)Ú NoOutputTimez8!Raised when a time was required, but none was provided.Nrrrrrr sr c@seZdZdZdS)ÚTimezoneProvidedzn!Raised when a timezone is provided. The tcutil package does not support timezones: all times are in UTC.Nrrrrrr sr c@seZdZdZdS)ÚPrecisionTooHigha !Raised when a time was requested with higher precision than available. Raised when a time was provided that contained fractions of a second, for a function that cannot handle that. For example, the WRF output files must be exactly on a second boundary.Nrrrrrr src@seZdZdZdS)Ú NotInTimespanzT!Raised when a time is outside the range of times being processed by a function.Nrrrrrr&src@seZdZdZdS)ÚNoNearbyValueszw!Raised when an operation has a set of known times, but another provided time is not near one of those known times.Nrrrrrr)srcs eZdZdZ‡fdd„Z‡ZS)ÚInvalidTimespanzn!Superclass of exceptions relating to groups of one or more distinct times and relationships between them.cs tt|ƒ |¡||_||_dS)z»! Constructor for InvalidTimespan @param message the string explanation of the problem @param start the start of the timespan @param end the end of the timespanN)ÚsuperrÚ__init__ÚstartÚend)ÚselfÚmessagerr©Ú __class__rrr6szInvalidTimespan.__init__)rrrrrÚ __classcell__rrrrr-src@seZdZdZdS)ÚEndBeforeStartz;!Raised when the end of a timespan is before the beginning.Nrrrrrr?src@seZdZdZdS)ÚEndNotTimestepa!Raised when the end of a timespan is not a timestep. Presently unused. Presently unused, this was to indicate that the end of a timespan is not on a timestep, for temporally discrete processes. Such end times are allowed in WRF, so this exception is unused.NrrrrrrAsrc@seZdZdZdS)ÚStartNotAtParentTimestepz9!Raised when a timespan's beginning is not at a timestep.NrrrrrrHsrc@seZdZdZdS)ÚTimestepTooLongzL!Raised when a timestep is too long for the process under consideration.NrrrrrrJsrc@seZdZdZdS)ÚTimestepTooShortzM!Raised when a timestep is too short for the process under consideration.NrrrrrrMsrc@seZdZdZdS)Ú NoTimespanz=!Raised when a timespan was expected, but none was available.Nrrrrrr Psr N)rÚ Exceptionrr r r r r rrrrrrrrrr rrrrÚs