Skip to content

DLESYM pdates#1827

Open
daviddpruitt wants to merge 30 commits into
NVIDIA:mainfrom
daviddpruitt:dlesym_updates
Open

DLESYM pdates#1827
daviddpruitt wants to merge 30 commits into
NVIDIA:mainfrom
daviddpruitt:dlesym_updates

Conversation

@daviddpruitt

Copy link
Copy Markdown
Collaborator

PhysicsNeMo Pull Request

Description

Updates DLESyM architectures and features.

  • Updates support for diagnostic output variables in HEALPixRecUNet and HEALPixUNet
  • Adds conditional layer norm to DLESyM UNetEncoder and DLESyM UNetDecoder
  • Adds physical constraint support in HEALPixRecUNet and HEALPixUNet
    • NonnegativeConstraint added
  • Adds/updates HEALPix blocks: SymmetricConvNeXtBlock, Multi_SymmetricConvNeXtBlock, DoubleConvNeXtBlock, ConvGRUBlock, ConvNeXtBlock, BasicConvBlock, TransposedConvUpsample, Interpolate
  • Zarr backed datapipline
  • Updated dlwp_healpix coupler
  • Updated HEALPix loss funcitons: ConditionalWeightLoss, WeightedCRPSLoss, and WeightedCRPSLossSpectral
  • Hydrostatic constraint support in losses

Checklist

Dependencies

No new dependencies

Review Process

All PRs are reviewed by the PhysicsNeMo team before merging.

Depending on which files are changed, GitHub may automatically assign a maintainer for review.

We are also testing AI-based code review tools (e.g., Greptile), which may add automated comments with a confidence score.
This score reflects the AI’s assessment of merge readiness and is not a qualitative judgment of your work, nor is
it an indication that the PR will be accepted / rejected.

AI-generated feedback should be reviewed critically for usefulness.
You are not required to respond to every AI comment, but they are intended to help both authors and reviewers.
Please react to Greptile comments with 👍 or 👎 to provide feedback on their accuracy.

@copy-pr-bot

copy-pr-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@greptile-apps

greptile-apps Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR updates the DLESyM HEALPix model stack and adds Zarr-backed data support. The main changes are:

  • New Zarr time-series and coupled HEALPix datapipes.
  • Updated HEALPix UNet and recurrent UNet support for diagnostics, constraints, residual prediction, and conditional layer norm.
  • New and updated HEALPix blocks, normalization layers, constraints, and padding behavior.
  • New CRPS and hydrostatic climate losses.
  • Expanded tests for HEALPix datapipes, model layers, encoder/decoder behavior, and hydrostatic balance.

Important Files Changed

Filename Overview
physicsnemo/datapipes/healpix/coupledtimeseries_dataset_zarr.py Adds the coupled Zarr dataset path; coupled-variable training noise currently indexes the time axis.
physicsnemo/metrics/climate/healpix_loss.py Adds conditional and CRPS losses; several configuration and device paths can crash.
physicsnemo/metrics/climate/hydrostasy.py Adds hydrostatic constraints and losses; the weighted hydrostatic path assumes humidity channels are present.
physicsnemo/models/dlwp_healpix/HEALPixRecUNet.py Adds recurrent UNet support for residual outputs, constraints, coupling layout, and CLN conditions.
physicsnemo/models/dlwp_healpix/HEALPixUNet.py Adds UNet support for residual outputs, constraints, coupling layout, and CLN conditions.

Reviews (1): Last reviewed commit: "[pre-commit.ci] auto fixes from pre-comm..." | Re-trigger Greptile

Comment thread physicsnemo/datapipes/healpix/coupledtimeseries_dataset_zarr.py Outdated
Comment thread physicsnemo/metrics/climate/healpix_loss.py Outdated
Comment thread physicsnemo/metrics/climate/healpix_loss.py Outdated
Comment thread physicsnemo/metrics/climate/healpix_loss.py Outdated
Comment thread physicsnemo/metrics/climate/hydrostasy.py Outdated
Comment thread .gitignore Outdated
Comment thread physicsnemo/models/dlwp_healpix/layers/healpix_blocks.py Outdated
Comment thread physicsnemo/models/dlwp_healpix/layers/healpix_blocks.py Outdated
Comment thread physicsnemo/models/dlwp_healpix/layers/healpix_blocks.py
Comment thread physicsnemo/models/dlwp_healpix/layers/healpix_blocks.py
Comment thread physicsnemo/models/dlwp_healpix/layers/healpix_decoder.py
Comment thread physicsnemo/models/dlwp_healpix/layers/healpix_encoder.py
Comment thread physicsnemo/models/dlwp_healpix/layers/normalization.py Outdated
Comment thread physicsnemo/models/dlwp_healpix/layers/normalization.py Outdated
Comment thread physicsnemo/models/dlwp_healpix/HEALPixRecUNet.py Outdated
Comment thread physicsnemo/models/dlwp_healpix/HEALPixUNet.py
Comment thread physicsnemo/models/dlwp_healpix/HEALPixRecUNet.py
Comment thread test/models/dlwp_healpix/test_conditional_layer_norm.py Outdated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants