Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
One quickstart covering
noaa-gefs-forecast-10-day-0-25-degree-virtual,noaa-gefs-analysis-0-25-degree-virtual,noaa-gefs-forecast-16-day-0-5-degree-virtual, andnoaa-gefs-forecast-35-day-0-5-degree-virtual, following the multi-dataset shape ofucsb-chc-chirps-analysis.ipynb, the temporary-open pattern of #78, and the AGENTS.md intro/question structure.Temporary direct open
The datasets are not in the STAC catalog yet, so
dynamical_catalog.open(...)cannot resolve them. Cell 2 is the only deviation: anopen_virtual(dataset_id, **kwargs)helper opens each Icechunk store directly with anonymous S3 storage plusauthorize_virtual_chunk_accessfors3://noaa-gefs-pds/. The cell header comment carries complete replacement lines for the three used roots and the two group opens, usinggroup="pressure_level"/group="height_above_mean_sea_level"and ending with the trailingforecastso the repr survives the swap. The unused 35-day root open was removed. The swapped sequence has no undefined names, checked with pyflakes over the concatenated cells with cell 2 replaced by its comment block. Install line staysdynamical-catalog cartopy; no new project dependency.The four intro links point at the expected catalog pages:
https://dynamical.org/catalog/noaa-gefs-forecast-10-day-0-25-degree-virtual/https://dynamical.org/catalog/noaa-gefs-analysis-0-25-degree-virtual/https://dynamical.org/catalog/noaa-gefs-forecast-16-day-0-5-degree-virtual/https://dynamical.org/catalog/noaa-gefs-forecast-35-day-0-5-degree-virtual/What it shows and why
The original sections retain the 0.25-degree datasets' extra fields and 18 UTC cycles. The new sections show what the 0.5-degree products add: a month-long horizon, pressure-level fields, a 16-day tail, and fixed-height aviation fields. No event is reused from the materialized GEFS quickstarts, #78, another notebook on main, or an earlier section in this notebook.
snow_thickness_surface(virtual-only)temperature_2m+soil_temperature_0_10cm(virtual-only)maximum_temperature_2m, all 31 members of the 18 UTC run of 13 July vs analysiswind_gust_surface, P(max gust on 28 Sep > 25 m/s), faceted over two 18 UTC runspressure_levelwind_u, 31 members every 48 htemperature_2m, all 31 members at Portland every 24 h through 384 hheight_above_mean_sea_levelconvective_available_potential_energy_surface(virtual-only), 3-hourly, 15 framesAll reads are bounded before
.load(). The new SSW cell reads 18 leads x 31 members = 558 global pressure-level fields; the Portland plume reads 17 leads x 31 members = 527 fields; the Ciaran profile reads 2 wind components x 31 members x 8 heights = 496 fields. No second animation was added. The final notebook is 2,087,159 bytes (1.99 MiB).Facts re-derived from the stores
The 0.25-degree forecast and analysis carry 34 surface/single-level variables at the beginning of the record, growing to 38 as NOAA added fields through October 2022. Each 0.5-degree forecast has 247 root variables (209 more than the 0.25-degree sets), 12 variables on 31 pressure levels, 6 variables on 4 model levels, and temperature plus two wind components on 8 fixed heights.
The 16-day root has 31 members and 105 leads: 3-hourly through 240 hours, then 6-hourly through 384 hours. The 35-day pressure-level group has 31 members and extends through 840 hours. The Portland selection was re-read from 16-day snapshot
XKFE06FV2DCHJ8HW6SR0: the run initialized 13 June 2021 spans 18.3-42.5 C at the nearest grid point on 28 June, well beyond the 240-hour line.How the 0.5-degree datasets slot in
pressure_levelandheight_above_mean_sea_levelwith keywordgroup=. The header's publication-swap block contains matchingdynamical_catalog.open(...)lines for every used object.Checks (HEAD
6122113)uv run .internal/run_notebooks.py noaa-gefs-forecast-analysis-virtual.ipynb- passed in 158.97 s.uv run python tests/test_notebook_execution.py noaa-gefs-forecast-analysis-virtual.ipynb- passed before and after isolated execution (OK, all notebooks passed validation).uv run .internal/run_notebooks.py --isolated noaa-gefs-forecast-analysis-virtual.ipynb- passed in 117.42 s and printedEvery notebook ran against only what its install line names.Review history
/tmp/rev79-report.mdlocally) — fixed the cell-12xrimport after the swap, replaced a non-virtual-only animation, an analysis value quoted as an observation, and the variable-count caveat.