Skip to content

Adds 'combination' layers#42

Merged
JBorrow merged 5 commits intomainfrom
add-divisible-layers
Dec 16, 2025
Merged

Adds 'combination' layers#42
JBorrow merged 5 commits intomainfrom
add-divisible-layers

Conversation

@JBorrow
Copy link
Member

@JBorrow JBorrow commented Dec 16, 2025

Adds the ability to create 'combination' layers for in-process combinations of wmaps and weights.

@JBorrow JBorrow requested a review from jernestmyers December 16, 2025 14:25
@JBorrow
Copy link
Member Author

JBorrow commented Dec 16, 2025

Example of a full config on my machine:

{
  "map_groups": [
    {
      "grant": null,
      "name": "Auto-Populated",
      "description": "No description provided",
      "maps": [

        {
          "grant": null,
          "map_id": "6dd665",
          "name": "atomic_1764623463_ws6_f150_full_wmap.fits",
          "description": "No description",
          "bands": [
            {
              "grant": null,
              "band_id": "band-6dd665",
              "name": "Auto-Populated",
              "description": "Auto-populated band",
              "layers": [
                {
                  "grant": null,
                  "layer_id": "0-0-6dd665",
                  "name": "Intensity Map",
                  "description": "Intensity map generated from auto ratio",
                  "provider": {
                    "provider_type": "fits_combination",
                    "providers": [
                        {
                            "provider_type": "fits",
                            "filename": "/Users/borrow-adm/Documents/Projects/tilemaker-python/atomic_1764623463_ws6_f150_full_wmap.fits",
                            "hdu": 0,
                            "index": 0
                        },
                        {
                            "provider_type": "fits",
                            "filename": "/Users/borrow-adm/Documents/Projects/tilemaker-python/atomic_1764623463_ws6_f150_full_weights.fits",
                            "hdu": 0,
                            "index": 0
                        }
                    ],
                    "function": "/"
                  },
                  "bounding_left": -38.46666666666681,
                  "bounding_right": 22.93333333333345,
                  "bounding_top": -65.966666666667,
                  "bounding_bottom": -34.833333333333506,
                  "quantity": "I",
                  "units": "K",
                  "number_of_levels": 1,
                  "tile_size": 2699,
                  "vmin": "auto",
                  "vmax": "auto",
                  "cmap": "PiYG"
                },
                {
                  "grant": null,
                  "layer_id": "0-1-6dd665",
                  "name": "Q polarization map",
                  "description": "Q polarization map",
                  "provider": {
                    "provider_type": "fits_combination",
                    "providers": [
                        {
                            "provider_type": "fits",
                            "filename": "/Users/borrow-adm/Documents/Projects/tilemaker-python/atomic_1764623463_ws6_f150_full_wmap.fits",
                            "hdu": 0,
                            "index": 1
                        },
                        {
                            "provider_type": "fits",
                            "filename": "/Users/borrow-adm/Documents/Projects/tilemaker-python/atomic_1764623463_ws6_f150_full_weights.fits",
                            "hdu": 0,
                            "index": 1
                        }
                    ],
                    "function": "/"
                  },
                  "bounding_left": -38.46666666666681,
                  "bounding_right": 22.93333333333345,
                  "bounding_top": -65.966666666667,
                  "bounding_bottom": -34.833333333333506,
                  "quantity": "Q",
                  "units": "K",
                  "number_of_levels": 1,
                  "tile_size": 2699,
                  "vmin": "auto",
                  "vmax": "auto",
                  "cmap": "PiYG"
                },
                {
                  "grant": null,
                  "layer_id": "0-2-6dd665",
                  "name": "U polarization map",
                  "description": "U polarization map",
                  "provider": {
                    "provider_type": "fits_combination",
                    "providers": [
                        {
                            "provider_type": "fits",
                            "filename": "/Users/borrow-adm/Documents/Projects/tilemaker-python/atomic_1764623463_ws6_f150_full_wmap.fits",
                            "hdu": 0,
                            "index": 2
                        },
                        {
                            "provider_type": "fits",
                            "filename": "/Users/borrow-adm/Documents/Projects/tilemaker-python/atomic_1764623463_ws6_f150_full_weights.fits",
                            "hdu": 0,
                            "index": 2
                        }
                    ],
                    "function": "/"
                  },
                  "bounding_left": -38.46666666666681,
                  "bounding_right": 22.93333333333345,
                  "bounding_top": -65.966666666667,
                  "bounding_bottom": -34.833333333333506,
                  "quantity": "U",
                  "units": "K",
                  "number_of_levels": 1,
                  "tile_size": 2699,
                  "vmin": "auto",
                  "vmax": "auto",
                  "cmap": "PiYG"
                }
              ]
            }
          ]
        },
                {
          "grant": null,
          "map_id": "cee3ad",
          "name": "atomic_1764623463_ws6_f150_full_weights.fits",
          "description": "No description",
          "bands": [
            {
              "grant": null,
              "band_id": "band-cee3ad",
              "name": "Auto-Populated",
              "description": "Auto-populated band",
              "layers": [
                {
                  "grant": null,
                  "layer_id": "0-0-cee3ad",
                  "name": "I Weights",
                  "description": "Intensity weights map",
                  "provider": {
                    "provider_type": "fits",
                    "filename": "/Users/borrow-adm/Documents/Projects/tilemaker-python/atomic_1764623463_ws6_f150_full_weights.fits",
                    "hdu": 0,
                    "index": 0
                  },
                  "bounding_left": -38.46666666666681,
                  "bounding_right": 22.93333333333345,
                  "bounding_top": -65.966666666667,
                  "bounding_bottom": -34.833333333333506,
                  "quantity": "I weights",
                  "units": "K^2",
                  "number_of_levels": 1,
                  "tile_size": 2699,
                  "vmin": "auto",
                  "vmax": "auto",
                  "cmap": "viridis"
                },
                {
                  "grant": null,
                  "layer_id": "0-1-cee3ad",
                  "name": "Q Weights",
                  "description": "Q-polarization weights map",
                  "provider": {
                    "provider_type": "fits",
                    "filename": "/Users/borrow-adm/Documents/Projects/tilemaker-python/atomic_1764623463_ws6_f150_full_weights.fits",
                    "hdu": 0,
                    "index": 1
                  },
                  "bounding_left": -38.46666666666681,
                  "bounding_right": 22.93333333333345,
                  "bounding_top": -65.966666666667,
                  "bounding_bottom": -34.833333333333506,
                  "quantity": "Q weights",
                  "units": "K^2",
                  "number_of_levels": 1,
                  "tile_size": 2699,
                  "vmin": "auto",
                  "vmax": "auto",
                  "cmap": "viridis"
                },
                {
                  "grant": null,
                  "layer_id": "0-2-cee3ad",
                  "name": "U Weights",
                  "description": "U-polarization weights map",
                  "provider": {
                    "provider_type": "fits",
                    "filename": "/Users/borrow-adm/Documents/Projects/tilemaker-python/atomic_1764623463_ws6_f150_full_weights.fits",
                    "hdu": 0,
                    "index": 2
                  },
                  "bounding_left": -38.46666666666681,
                  "bounding_right": 22.93333333333345,
                  "bounding_top": -65.966666666667,
                  "bounding_bottom": -34.833333333333506,
                  "quantity": "U weights",
                  "units": "K^2",
                  "number_of_levels": 1,
                  "tile_size": 2699,
                  "vmin": "auto",
                  "vmax": "auto",
                  "cmap": "viridis"
                }
              ]
            }
          ]
        }
      ]
    }
  ],
  "boxes": [],
  "source_groups": []
}

@JBorrow JBorrow merged commit f12b9bb into main Dec 16, 2025
3 checks passed
@JBorrow JBorrow deleted the add-divisible-layers branch December 16, 2025 14:38
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

Comments