Tags: UXARRAY/uxarray
Tags
Merge coincident pole and antimeridian nodes in structured grids (#1690) * Merge coincident nodes in structured grids on the sphere Match nodes in Cartesian space rather than the lon/lat plane so pole and antimeridian nodes are recognized as the same point, and store the resulting polar faces as triangles instead of quads with a repeated corner. * Keep tol in degrees when matching nodes on the sphere * Address review: derive tol from ERROR_TOLERANCE, reuse xyz helper, clarify comment * Upcast lon/lat to float64 before coincidence detection float32 input (e.g. real climate datasets) silently ran the whole xyz/tolerance pipeline at float32 precision, causing pole/antimeridian merges to fail or merge only partially. * Use ERROR_TOLERANCE directly as the default node-matching radius --------- Co-authored-by: Rajeev Jain <rajeeja@users.noreply.github.com>
Bump the optional YAC backend to v3.20.2 (#1679) The optional CI job was pinned to v3.18.0 from 30 June. Upstream has since released v3.19.0, v3.20.0, and v3.20.2, the last of which works around an NVHPC optimization bug in tri_area -- a triangle-area routine that feeds remapping weights. Built YAXT v0.11.5.1 and YAC v3.20.2 from source locally against Python 3.11 and ran test/test_remap_yac.py: 16 passed. No source changes were needed, so the bindings we rely on are unchanged across the three releases. Also notes in the remapping guide that YAC is built from source rather than installed with UXarray, and that CI tests the version pinned in the workflow rather than any particular release.
Fix structured from_xarray n_face mapping (#1410) (#1569) * Map structured data to n_face when building Grid from lon/lat Grid.from_structured(lon=, lat=) recorded no source-dim mapping and used a lowercase "structured" spec, so UxDataset.from_xarray could not flatten (lon, lat) data variables onto n_face, leaving them unmapped and breaking subsetting. Capture the lon/lat dim names, use the canonical "Structured" spec, and honor a passed source_dims_dict in from_dataset. Closes #1410. * Add end-to-end test and notebook example for structured from_xarray
Add remapping to rectilinear grids (#1501) * Add rectilinear remap target support * o add to_rectilinear api docs * o document to_rectilinear yac options * o document native to_rectilinear backend * o fix rectilinear dataset reshape * o preserve valid rectilinear coords * address rectilinear remap review comments * merge main * add rectilinear remap guide section --------- Co-authored-by: Rajeev Jain <jain@anl.gov> Co-authored-by: Orhan Eroglu <32553057+erogluorhan@users.noreply.github.com>
YAC as an optional remapping backend for uxarray (#1440) * o First pass at YAC - expose remap, nnn and conservative * o Fix actions * o Add MPI flags for CI * o Explicitly set MPI * o Use --without-regard-for-quality flag * Switch YAC remap backend to yac.core * Fix YAC and Windows CI workflows * Clarify remap docstring and add conservative face-only validation Agent-Logs-Url: https://github.com/UXARRAY/uxarray/sessions/72fb3867-9fe5-4b03-84df-804cb8a333c0 Co-authored-by: rljacob <947068+rljacob@users.noreply.github.com> * fix: only pass yac_method to nearest_neighbor when it's not None in __call__ Agent-Logs-Url: https://github.com/UXARRAY/uxarray/sessions/a6202885-cbf5-4760-816d-85f25f6fcf16 Co-authored-by: rljacob <947068+rljacob@users.noreply.github.com> * fix: validate backend parameter in RemapAccessor methods, raise ValueError for unknown values Agent-Logs-Url: https://github.com/UXARRAY/uxarray/sessions/228d9dce-524e-47fd-aadd-749b46604550 Co-authored-by: rljacob <947068+rljacob@users.noreply.github.com> * Update uxarray/remap/accessor.py Raise NotImplementedError/ValueError for backend='yac' here until a real YAC-IDW implementation exists. Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix: raise NotImplementedError for bilinear with backend='yac' Agent-Logs-Url: https://github.com/UXARRAY/uxarray/sessions/2bbea446-87e6-475a-9f23-bff5112349c6 Co-authored-by: rljacob <947068+rljacob@users.noreply.github.com> * Fix argument in uxarray/remap/yac.py Pass the original remap_to label into _construct_remapped_ds instead of destination_dim. Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Finish YAC review follow-ups * Add YAC conservative fallback and mask support * Add YAC average bilinear support * Address review comments and add docs * Reword error * thanks Orhan for the feedback * Add YAC links to remap docstrings * Clarify YAC conservative notebook usage --------- Co-authored-by: Hongyu Chen <hyvchen@ucdavis.edu> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: rljacob <947068+rljacob@users.noreply.github.com> Co-authored-by: Robert Jacob <jacob@anl.gov> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Orhan Eroglu <32553057+erogluorhan@users.noreply.github.com>
Create issue on upstream CI failure (#1473) * first pass at copy from comp implementation * narrow tests to one test, which i've made to fail * un fail test to test non-failure condition * nevermind, upstream failing on discovery, remove fork testing configs
PreviousNext