.dockerignore
.gitignore
.pre-commit-config.yaml
.python-version
.secrets.baseline
.secrets.baseline.license
.sky.yaml
AGENTS.md
CLAUDE.md
LICENSE
README.md
mkdocs.yml
pyproject.toml
uv.lock
uv.lock.license
.agents/skills/scrub-physicsnemo-arm64-gpu-container/SKILL.md
.github/workflows/benchmarks.yml
.github/workflows/container-physicsnemo.yml
.github/workflows/data-tests-xesmf.yaml
.github/workflows/data-tests.yaml
.github/workflows/pages.yml
.github/workflows/pre-commit.yml
.github/workflows/release.yml
.github/workflows/test-gpu.yml
.github/workflows/test.yml
LICENSES/Apache-2.0.txt
LICENSES/CC-BY-4.0.txt
LICENSES/CC0-1.0.txt
LICENSES/LicenseRef-Logo.txt
LICENSES/MIT.txt
containers/Dockerfile.physicsnemo-26.05
containers/README.md
data/README.md
data/mamba_env.yaml
data/pyproject.toml
data/ocean_preprocessing/__init__.py
data/ocean_preprocessing/__main__.py
data/ocean_preprocessing/dataset_validation.py
data/ocean_preprocessing/make_norm_datasets.py
data/ocean_preprocessing/nc_to_zarr.py
data/ocean_preprocessing/plotting.py
data/ocean_preprocessing/postprocessing.py
data/ocean_preprocessing/preprocessing.py
data/ocean_preprocessing/schema.py
data/ocean_preprocessing/utils.py
data/ocean_preprocessing/obs_preprocessing/__init__.py
data/ocean_preprocessing/obs_preprocessing/__main__.py
data/ocean_preprocessing/obs_preprocessing/download.py
data/ocean_preprocessing/obs_preprocessing/prepare.py
data/ocean_preprocessing/simulation_preprocessing/__init__.py
data/ocean_preprocessing/simulation_preprocessing/gfdl_cm4.py
data/ocean_preprocessing/simulation_preprocessing/gfdl_om4.py
data/ocean_preprocessing/simulation_preprocessing/interpolate.py
data/tests/__init__.py
data/tests/data.py
data/tests/test_data.py
data/tests/test_main.py
data/tests/test_make_norm_datasets.py
data/tests/test_postprocessing.py
data/tests/test_preprocessing.py
data/tests/test_simulation_preprocessing.py
data/tests/test_slurm_harness.py
data/tests/test_utils.py
docs/config.md
docs/contributing.md
docs/data.md
docs/datasets.md
docs/eval.md
docs/index.md
docs/releasing.md
docs/run.md
docs/search.md
docs/stepper.md
docs/torch.md
docs/train.md
docs/viz.md
docs/concepts/architecture.md
docs/getting-started/installation.md
docs/getting-started/quick-start.md
docs/models/base.md
docs/models/modules.md
docs/models/samudra.md
docs/models/samudra_multi.md
docs/static/.nojekyll
docs/static/.nojekyll.license
docs/static/404.html
docs/static/index.html
docs/static/assets/nyu-logo.png
docs/static/assets/nyu-logo.png.license
docs/static/assets/open-athena-logo.png
docs/static/assets/open-athena-logo.png.license
docs/static/assets/princeton-university-logo.png
docs/static/assets/princeton-university-logo.png.license
docs/static/assets/sst_tropical_pacific_fivedays.gif.license
docs/static/assets/sst_tropical_pacific_ultra.gif.license
docs/static/assets/sst_tropical_pacific_ultra_small.gif
docs/static/assets/sst_tropical_pacific_ultra_small.gif.license
docs/static/samudra2/index.html
docs/static/samudra2/assets/paper/samudra2-jmlr.pdf
docs/static/samudra2/assets/paper/samudra2-jmlr.pdf.license
docs/static/samudra2/assets/paper/samudra2.bib
docs/static/samudra2/static/css/style.css
docs/static/samudra2/static/images/favicon.svg
docs/static/samudra2/static/images/favicon.svg.license
docs/static/samudra2/static/images/rollout_diagram.png
docs/static/samudra2/static/images/rollout_diagram.png.license
docs/static/samudra2/static/images/teaser.png
docs/static/samudra2/static/images/teaser.png.license
docs/utils/data.md
docs/utils/distributed.md
docs/utils/ema.md
docs/utils/loss.md
docs/utils/samplers.md
docs/utils/schedule.md
docs/utils/writer.md
notebooks/2025-06-12-data_preprocess.py
notebooks/2025-06-16-data_preprocess.py
notebooks/3D_Data.py
notebooks/3D_GroundTruth.py
notebooks/LLC_mean_std.py
notebooks/Model_Analysis_Compare.py
notebooks/Model_Analysis_Long_Rollout_Compare.py
notebooks/Model_Analysis_Very_Long_Rollout.py
notebooks/Multi_seed_Generation_and_Plotting_3D_Disk.py
notebooks/Samudra_Eval.py
notebooks/batchnorm_test.py
notebooks/check_zarr.py
notebooks/cloud_data_check.py
notebooks/quickstart.ipynb
notebooks/quickstart.ipynb.license
notebooks/regrid_basins.py
notebooks/validation_plots_compare.py
notebooks/validation_plots_compare_seeds.py
scripts/.local-eval
scripts/.local-train
scripts/.slurm-perlmutter-preempt-train
scripts/.slurm-perlmutter-train
scripts/__init__.py
scripts/annotate_license.sh
scripts/build_apptainer_code_layer.sh
scripts/build_quickstart_notebook.py
scripts/clone_data.py
scripts/coiled-pangeo-notebook
scripts/convert_notebooks.sh
scripts/empireai_nvl72_train.sbatch
scripts/om4_data_variant.sh
scripts/open_zarr_tuning.py
scripts/package.py
scripts/slurm_apptainer_eval.sbatch
scripts/slurm_apptainer_pull.sbatch
scripts/slurm_apptainer_train.sbatch
scripts/slurm_make_norm_om4.sbatch
scripts/slurm_obs_download.sbatch
scripts/slurm_obs_prepare.sbatch
scripts/slurm_preprocess_om4.sbatch
scripts/variable-time-payload.sh
scripts/container/build_physicsnemo_26_05.sh
scripts/container/run_cuda_tests_in_image.sh
scripts/container/scrub_arm64_gpu_container_tests.sh
scripts/container/smoke_test.py
scripts/container/verify_image_packages.py
skypilot/eval.sky.yaml
skypilot/train.sky.yaml
skypilot/viz.sky.yaml
src/samudra/__init__.py
src/samudra/backend.py
src/samudra/cli.py
src/samudra/config.py
src/samudra/config_base.py
src/samudra/config_schema.py
src/samudra/constants.py
src/samudra/datasets.py
src/samudra/derived_variables.py
src/samudra/eval.py
src/samudra/py.typed
src/samudra/stepper.py
src/samudra/train.py
src/samudra.egg-info/PKG-INFO
src/samudra.egg-info/SOURCES.txt
src/samudra.egg-info/dependency_links.txt
src/samudra.egg-info/entry_points.txt
src/samudra.egg-info/requires.txt
src/samudra.egg-info/top_level.txt
src/samudra/aggregator/LICENSE-ACE.txt
src/samudra/aggregator/__init__.py
src/samudra/aggregator/loss.py
src/samudra/aggregator/main.py
src/samudra/aggregator/metrics.py
src/samudra/aggregator/plotting.py
src/samudra/aggregator/train.py
src/samudra/aggregator/inference/__init__.py
src/samudra/aggregator/inference/main.py
src/samudra/aggregator/inference/reduced.py
src/samudra/aggregator/inference/time_mean.py
src/samudra/aggregator/validate/__init__.py
src/samudra/aggregator/validate/main.py
src/samudra/aggregator/validate/map.py
src/samudra/aggregator/validate/reduced.py
src/samudra/aggregator/validate/rollout.py
src/samudra/aggregator/validate/snapshot.py
src/samudra/aggregator/validate/sub_aggregator.py
src/samudra/configs/data/llc.yaml
src/samudra/configs/data/obs.yaml
src/samudra/configs/data/om4.yaml
src/samudra/configs/data/om4_demo.yaml
src/samudra/configs/samudra_mini_om4/README.md
src/samudra/configs/samudra_mini_om4/model.yaml
src/samudra/configs/samudra_mini_om4/train.yaml
src/samudra/configs/samudra_multi_om4/README.md
src/samudra/configs/samudra_multi_om4/eval.yaml
src/samudra/configs/samudra_multi_om4/model.yaml
src/samudra/configs/samudra_multi_om4/train.yaml
src/samudra/configs/samudra_om4/README.md
src/samudra/configs/samudra_om4/eval.yaml
src/samudra/configs/samudra_om4/model.yaml
src/samudra/configs/samudra_om4/train.yaml
src/samudra/configs/samudra_om4/viz.yaml
src/samudra/configs/samudra_om4_v1/README.md
src/samudra/configs/samudra_om4_v1/eval.yaml
src/samudra/configs/samudra_om4_v1/model.yaml
src/samudra/configs/samudra_om4_v1/train.yaml
src/samudra/configs/samudra_om4_v1/viz.yaml
src/samudra/configs/samudra_om4_v2/README.md
src/samudra/configs/samudra_om4_v2/eval.yaml
src/samudra/configs/samudra_om4_v2/model.yaml
src/samudra/configs/samudra_om4_v2/train.yaml
src/samudra/configs/samudra_om4_v2/viz.yaml
src/samudra/configs/samudra_om4_v2_highres/README.md
src/samudra/configs/samudra_om4_v2_highres/eval.yaml
src/samudra/configs/samudra_om4_v2_highres/model.yaml
src/samudra/configs/samudra_om4_v2_highres/train.yaml
src/samudra/configs/samudra_om4_v2_highres/viz.yaml
src/samudra/configs/search/example.yaml
src/samudra/configs/search/local.yaml
src/samudra/configs/search/osn-artifacts.yaml
src/samudra/configs/search/torch.yaml
src/samudra/metrics/__init__.py
src/samudra/metrics/__main__.py
src/samudra/metrics/comparisons.py
src/samudra/metrics/kernels.py
src/samudra/metrics/observations.py
src/samudra/metrics/report.py
src/samudra/metrics/run.py
src/samudra/metrics/spectra.py
src/samudra/models/__init__.py
src/samudra/models/base.py
src/samudra/models/samudra.py
src/samudra/models/samudra_mini.py
src/samudra/models/samudra_multi.py
src/samudra/models/modules/__init__.py
src/samudra/models/modules/activations.py
src/samudra/models/modules/augment_input.py
src/samudra/models/modules/blocks.py
src/samudra/models/modules/decoder.py
src/samudra/models/modules/encoder.py
src/samudra/models/modules/perceiver.py
src/samudra/models/modules/unet_backbone.py
src/samudra/search/__init__.py
src/samudra/search/__main__.py
src/samudra/search/artifacts.py
src/samudra/search/config.py
src/samudra/search/report.py
src/samudra/search/state.py
src/samudra/search/successive_halving.py
src/samudra/search/worker.py
src/samudra/search/executors/__init__.py
src/samudra/search/executors/base.py
src/samudra/search/executors/local.py
src/samudra/search/executors/slurm.py
src/samudra/utils/__init__.py
src/samudra/utils/atomic.py
src/samudra/utils/compare.py
src/samudra/utils/ctx.py
src/samudra/utils/data.py
src/samudra/utils/device.py
src/samudra/utils/distributed.py
src/samudra/utils/ema.py
src/samudra/utils/llc.py
src/samudra/utils/location.py
src/samudra/utils/logging.py
src/samudra/utils/loss.py
src/samudra/utils/multiton.py
src/samudra/utils/output.py
src/samudra/utils/profiler.py
src/samudra/utils/rollout_validation.py
src/samudra/utils/samplers.py
src/samudra/utils/schedule.py
src/samudra/utils/train.py
src/samudra/utils/train_progress.py
src/samudra/utils/training_summary.py
src/samudra/utils/wandb.py
src/samudra/utils/writer.py
src/samudra/viz/__init__.py
src/samudra/viz/__main__.py
src/samudra/viz/config.py
src/samudra/viz/core.py
src/samudra/viz/norms.py
src/samudra/viz/observations.py
tests/__init__.py
tests/conftest.py
tests/llc_fixtures.py
tests/test_aggregator_metrics.py
tests/test_blocks.py
tests/test_canonical_dataset.py
tests/test_config.py
tests/test_datasets.py
tests/test_decoder.py
tests/test_derived_variables.py
tests/test_encoder.py
tests/test_gradient_detaching.py
tests/test_location.py
tests/test_metrics.py
tests/test_metrics_acceptance.py
tests/test_metrics_spectra.py
tests/test_multiton.py
tests/test_patchembed.py
tests/test_perceiver.py
tests/test_periodic.py
tests/test_positional_channels.py
tests/test_quickstart_config.py
tests/test_rollout_validation.py
tests/test_samplers.py
tests/test_samudra_mini.py
tests/test_schedule.py
tests/test_search.py
tests/test_stepper.py
tests/test_train_progress.py
tests/test_trainer.py
tests/test_training_summary.py
tests/test_utils_data.py
tests/test_validate_aggregator.py
tests/test_viz_config.py
tests/test_viz_observations.py
tests/test_wandb.py
tests/test_writer.py
tests/configs/train_default.yaml
tests/configs/train_default_2step.yaml
tests/configs/train_samudra_mini.yaml
tests/configs/train_samudra_multi.yaml
tests/configs/train_samudra_om4_v2_resume.yaml
tests/reference/__init__.py
tests/reference/obs_evaluation_spectra.py