GOESGLMGrid#
- class earth2studio.data.GOESGLMGrid(
- satellite='east',
- cache=True,
- verbose=True,
- async_timeout=600,
- async_workers=24,
- retries=3,
- NA
Gridded GOES GLM (Geostationary Lightning Mapper) lightning product for StormScope.
Wraps
GOESGLM(a per-event LCFA source) and accumulates events into a regular 0.1-degree lat/lon grid via 5-minute binning and 2D histogramming, matching the GLM grid the StormScope MRMS+GLM nowcast model was trained on.Available variables:
glm_density: raw event count per cell (unweighted, matching training).glm_energy_density: summed event energy (J) per cell.
Counts are not mean/std normalized; the StormScope model applies
log1pinternally. This source emits raw counts/sums on the 0.1-degree grid; the model bilinearly regrids to its own native grid.- Parameters:
satellite (str, optional) – GOES platform selector passed to
GOESGLM("east"default).cache (bool, optional) – Cache downloaded NetCDFs, by default True.
verbose (bool, optional) – Show progress, by default True.
async_timeout (int, optional) – Total timeout in seconds for each fetch operation, by default 600.
async_workers (int, optional) – Maximum number of concurrent S3 fetch tasks, by default 24.
retries (int, optional) – Number of retry attempts per failed fetch task, by default 3.
Note
Grid geometry (must match training): regular 0.1-degree grid over lat
[20, 55]/ lon[-130, -60](350 x 700 cells), with cell centres atedge + 0.5 * resolution. Output longitudes are returned in the Earth2Studio[0, 360)convention. The accumulation window is fixed at 5 minutes, bin-start labeled (the training cadence); do not substitute a 10-minute window.- __call__(time, variable)[source]#
Fetch the gridded GLM product for the requested times and variables.
- Parameters:
time (datetime | list[datetime] | TimeArray) – 5-minute-aligned timestamps (UTC). Each labels a
[t, t+5min)bin.variable (str | list[str] | VariableArray) – One or more of
"glm_density"/"glm_energy_density".
- Returns:
Array with dims
[time, variable, lat, lon]on the 0.1-degree grid.- Return type:
xr.DataArray
- async fetch(time, variable)[source]#
Async function to fetch the gridded GLM product.
- Parameters:
time (datetime | list[datetime] | TimeArray) – 5-minute-aligned timestamps (UTC). Each labels a
[t, t+5min)bin.variable (str | list[str] | VariableArray) – One or more of
"glm_density"/"glm_energy_density".
- Returns:
Array with dims
[time, variable, lat, lon]on the 0.1-degree grid.- Return type:
xr.DataArray