Skip to content

NNJAObsSatwnd

Global

Import path: earth2studio.data.NNJAObsSatwnd

View source on GitHub

Documentation

Bases: NNJAObsConv

NNJA satellite-derived atmospheric motion vector (SATWND) data source.

Reads the raw NCEP AMV dumps (amv/ in the NNJA archive) rather than the AMVs merged into PrepBUFR. The dumps keep every producer stream (GOES legacy and GOES-R, Meteosat, Himawari, MODIS, AVHRR, VIIRS, LEO-GEO, INSAT) with its own computation method, height assignment and quality indicators. Cycles through 2019 read the amv/merged reprocessed product and later cycles the operational amv/satwnd dump.

u/v rows are decomposed from WDIR/WSPD. Shared columns follow NNJAObsConv: pres is the height assignment (PRLC, Pa), quality the SWQM wind quality mark where the producer encodes one, class is "SATWND"; type, station and elev are null since the dump carries no report type, station or geometric height. Extra columns carry satellite_id, subset, wind_method (SWCM), wind_method_local (CMCM), height_method, satellite_za and the raw quality indicators keyed by generating application. No report typing, quality control or thinning is applied.

Parameters:

  • time_tolerance (TimeTolerance, default: timedelta64(0, 'm') ) –

    Time tolerance window for filtering observations. Accepts a single value (symmetric ± window) or a tuple (lower, upper) for asymmetric windows, by default np.timedelta64(0, 'm').

  • cache (bool, default: True ) –

    Cache downloaded files in the local filesystem cache, by default True.

  • verbose (bool, default: True ) –

    Show progress bars, by default True.

  • async_timeout (int, default: 600 ) –

    Total timeout in seconds for the async fetch, by default 600.

  • async_workers (int, default: 24 ) –

    Maximum number of concurrent async fetch tasks, by default 24.

  • decode_workers (int, default: 8 ) –

    Number of parallel processes for BUFR message decoding. Recent cycle files hold 3-5 million winds and decode at roughly 1,500 winds per second per worker, so decoding dominates run time and scales with workers. Set to 1 to disable multiprocessing, by default 8.

  • retries (int, default: 3 ) –

    Number of retry attempts per failed fetch task with exponential backoff, by default 3.

Warning

This is a remote data source and can potentially download a large amount of data to your local machine for large requests.

Note

Additional information on the data repository can be referenced here:

__call__

__call__(
    time: datetime | list[datetime] | TimeArray,
    variable: str | list[str] | VariableArray,
    fields: str | list[str] | Schema | None = None,
) -> DataFrame

Fetch observations for a set of timestamps.

fetch async

fetch(
    time: datetime | list[datetime] | TimeArray,
    variable: str | list[str] | VariableArray,
    fields: str | list[str] | Schema | None = None,
) -> DataFrame

Async function to get data.

available classmethod

available(time: datetime | datetime64) -> bool

Check if given date time is available.

Parameters:

Returns:

  • bool –

    If date time is available