pyiem.models.taf module#

TAF Data Model.

class pyiem.models.taf.WindShear(*, level, drct, sknt)[source]#

Bases: BaseModel

A Wind Shear Value.

Parameters:
level: int#
drct: int#
sknt: int#
model_config = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pyiem.models.taf.SkyCondition(*, amount, level=None)[source]#

Bases: BaseModel

The Sky condition.

Parameters:
amount: str#
level: int | None#
model_config = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pyiem.models.taf.TAFForecast(*, valid, raw, ftype, end_valid=None, sknt=None, drct=None, gust=None, visibility=None, presentwx=<factory>, sky=<factory>, shear=None)[source]#

Bases: BaseModel

A TAF forecast.

Parameters:
valid: datetime#
raw: str#
ftype: int#
end_valid: datetime | None#
sknt: int | None#
drct: int | None#
gust: int | None#
visibility: float | None#
presentwx: List[str]#
sky: List[SkyCondition]#
shear: WindShear | None#
model_config = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pyiem.models.taf.TAFReport(*, station, valid, product_id, observation, forecasts=<factory>)[source]#

Bases: BaseModel

A TAF Report consisting of forecasts.

Parameters:
station: str#
valid: datetime#
product_id: str#
observation: TAFForecast#
forecasts: List[TAFForecast]#
model_config = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].