bsrn.io.nsrdb.check_nsrdb_availability#

bsrn.io.nsrdb.check_nsrdb_availability(stations, username, password, variant='conus')[source]#

Check which BSRN stations are geographically covered by an NSRDB variant and have BSRN archive files overlapping the variant’s year range.

Workflow: 1. Filter stations by spatial coverage (bbox + satellite disk). 2. Query BSRN FTP for the covered subset to obtain file inventories. 3. Extract years from filenames and intersect with the variant’s year range.

Parameters:
  • stations (list of str) – BSRN station codes to check (e.g. ['BIL', 'BON', 'DRA']).

  • username (str) – BSRN FTP username.

  • password (str) – BSRN FTP password.

  • variant (str, default "conus") – NSRDB variant name: ‘conus’, ‘full-disc’, or ‘aggregated’.

Returns:

availability – A dictionary mapping station codes to availability metadata: {station_code: {'years': [list of years], 'months': [list of (y,m) tuples]}}. years is used for bulk API downloads, and months for monthly parquet writing. Stations with no overlap are omitted.

Return type:

dict

Raises:

ValueError – If variant is not a recognised NSRDB variant name.